Autor: Joanna Barańska Promotor: dr inż. Paweł Figat Konsultant:

Slides:



Advertisements
Podobne prezentacje
Lingwistyka Matematyczna
Advertisements

Indeksy w bazie danych Oracle
Przekształcanie dokumentów XML - XSL
Podział i zastosowanie
Procedury wyzwalane Procedura wyzwalana (ang. trigger) - stanowi kod użytkownika przechowywany wewnątrz bazy i uruchamiany w określonych sytuacjach np.
Rafał Hryniów Tomasz Pieciukiewicz
Bazy danych II Instrukcja SELECT Piotr Górczyński 25/08/2001.
OLAP budowa aplikacji analitycznych w MS SQL 2000 i Yukon
Bazy danych II Instrukcja INSERT Piotr Górczyński 25/08/2001.
Domknięcie przechodnie (również) w bazach danych
Wycofywanie potwierdzonych transakcji
Microsoft Office Access
Język SQL – zapytania zagnieżdżone (podzapytania)
Dokumentowanie wymagań w języku XML
WekaSQL Język i aplikacja przetwarzania oraz eksploracji danych.
Co to jest studium przypadku?
Tablice Informatyka Cele lekcji: Wiadomości: Uczeń potrafi:
SQL-owskie szlaki górskie
Zapytania SQL: wydajność i optymalizacja
Wykład 8 Wojciech Pieprzyca
BD-LAB6 Wojciech Pieprzyca
Wykład 5 Wojciech Pieprzyca
Techniki digitalizacji, organizowania oraz efektywnego wyszukiwania informacji z dokumentów tekstowych Remigiusz Baran, Andrzej Dziech, Paweł Fornalski,
Wstęp do interpretacji algorytmów
Projekt i implementacja aplikacji do zasilania bazy danych testowymi danymi Jacek Lis Promotor: prof. dr hab. inż. Włodzimierz KASPRZAK.
Modele baz danych - spojrzenie na poziom fizyczny
Analiza, projekt i częściowa implementacja systemu obsługi kina
Multimedialne bazy danych
Autor: Maciej Piwowarczyk
Autor: Maciej Piwowarczyk
Bibliotekarz – odkrywca. Agenda Proces tworzenia informacji Indeksy wyszukiwawcze Budowa rekordu w Promaxie Zapytania.
Structured Query Language
dr inż. Piotr Muryjas Wyższa Szkoła Przedsiębiorczości i Administracji
OPERACJA DZIELENIA W SQL
Wykonawcy:Magdalena Bęczkowska Łukasz Maliszewski Piotr Kwiatek Piotr Litwiniuk Paweł Głębocki.
DIAGRAMY ER 2 (ENTITY-RELATIONSHIP DIAGRAMS 2) Ćwiczenia 2.
SQL – Structured Query Language (3)
Przetwarzanie w oknie - nowa siła zapytań
Rozwój aplikacji przy wykorzystaniu ASP.NET
Instytut Tele- i Radiotechniczny WARSZAWA
TABLICE C++.
informatyka + Agenda Podstawy XML Historia XML w pigułce
Andrzej Macioł Bazy danych – SQL – cz. 1. Andrzej Macioł Składowe SZBD Jądro SZBD realizuje podstawowe funkcje związane z przechowywaniem danych, kontrolą
Autor: Kamil Szafranek
XML w relacyjnych bazach danych
SQL - Structured Query Language
Rozwiązanie zadań do zaliczenia I0G1S4 // indeks
Technologie informacyjne II
Temat 1: Strukturalny język zapytań SQL
Definiowanie kluczy w tabelach RBD
Model obiektowy bazy danych
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski 1 informatyka +
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski informatyka +
1 SBD, L.Banachowski Zaawansowane cechy SQL Powtórzenie wyk ł adu 5.
Autor: Damian Urbańczyk
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski 1 informatyka +
XHTML Tabele Damian Urbańczyk. Podstawy budowy tabel Strony WWW mogą zawierać w sobie tabele, czasem te tabele mogą tworzyć strukturę strony, odpowiadającą.
Komendy SQL do pracy z danymi
Hierarchiczne obliczenia ewolucyjne w środowisku wieloagentowym Autorzy: Tomasz Borowiec, Damian Kędzierski AGH Kraków, grudzień 2010 Promotor: dr inż.
XML w bazach danych.
Waldemar Bartyna 1 Programowanie zaawansowane LINQ to XML.
Wstęp do interpretacji algorytmów
BAZY DANYCH MS Access.
BAZY DANYCH Microsoft Access Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej Katedra Automatyki i.
Aplikacje internetowe XML Paweł Lenkiewicz. Aplikacje internetowe – XML2 eXtensible Markup Language Uniwersalny język opisu danych Często używany we współpracy.
ASP.NET Dostęp do bazy danych z poziomu kodu Elżbieta Mrówka-Matejewska.
SQL Server Analysis Services Action!
Strukturalny język zapytań SQL - historia
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski informatyka +
Modele baz danych - spojrzenie na poziom fizyczny
Zapis prezentacji:

Analiza porównawcza wydajności przetwarzania dokumentów XML w MS SQL Server Autor: Joanna Barańska Promotor: dr inż. Paweł Figat Konsultant: mgr inż. Andrzej Ptasznik

Agenda Cel pracy Hipotezy Dziedzina problemu Dane testowe Testy Eliminacja skrajnych wyników Wyniki Wnioski Podsumowanie

W jaki sposób struktura dokumentu XML wpływa na wydajność jego przetwarzania oraz jaki wpływ na wydajność mają takie czynniki jak schematy oraz indeksy XML ??? Cel pracy

Hipotezy Rozbudowana struktura hierarchiczna dokumentu XML ma wpływ na zmniejszenie wydajności przetwarzanych dokumentów XML Zastosowanie schematów XML oraz użycie indeksacji pozwala zwiększyć wydajność przetwarzanych dokumentów XML

<XML> Dziedzina problemu Możliwość zróżnicowanej prezentacji Przepływ elektronicznych dokumentów dzięki ustanowieniu jednego formatu Niezależność od platformy <XML> Hierarchiczna reprezentacja danych Sformalizowany zapis informacji Tworzenie nowych języków znacznikowych Dostosowanie do specyfiki przetwarzania w sieci Web

<> XML Schema Dziedzina problemu Definiowanie składni dokumentu XML Możliwość wielokrotnego użycia definicji Możliwość walidacji dokumentów XML XML Schema Określanie typów elementów i wartości atrybutów Możliwość deklaracji własnych typów Napisany w języku XML <>

SQL Server Dziedzina problemu Typ danych XML Wsparcie dla XML Schema Indeksy XML SQL Server Operacje na dokumentach XML Klauzura FOR XML funkcja OPEN XML

Dane testowe - dokumenty XML Po 1000 wierszy w tabeli 10 elementów 20 elementów 40 elementów 60 elementów 80 elementów Zero poziomów Zero poziomów Zero poziomów Zero poziomów Zero poziomów 3 poziomy 3 poziomy 3 poziomy 3 poziomy 3 poziomy 6 poziomów 6 poziomów 6 poziomów 6 poziomów 6 poziomów 10 poziomów 10 poziomów 10 poziomów 10 poziomów 10 poziomów

Dane testowe – tabele Testy wykonano na 80 tabelach z kolumną typu XML XML ze zdefiniowanym XML Schema XML bez zdefiniowanego XML Schema Tabele z indeksami pomocniczymi XML: Path, Value, Property Tabele bez zdefiniowanych indeksów XML .

Testy Metoda value() Metoda nodes() Metoda query() Każda metoda zwraca jednakowy wynik zapytania przy wykorzystaniu różnych metod języka SQL Metoda value() Metoda nodes() select xmldoc.value('Root[1]/Element1[1]', 'varchar(50)') from t1 where xmldoc.value('Root[1]/Element1[1]', 'varchar(50)')='wartosc_elementu70‘ select T.c.query('.') FROM t1 cross apply xmldoc.nodes('Root') as T(C) where xmldoc.value('Root[1]/Element1[1]', 'varchar(50)')='wartosc_elementu70' select xmldoc.query(' for $wartosc in /Root[1]/Element1[1] return string ($wartosc)') Metoda query()

Testy = 24000 + + Tabela wynikowa zawiera 24000 rekordów 80 100 3 Tabele + 80 Ilość testów 100 + Rodzaj zapytania 3 = 24000 Ilość testów

Eliminacja skrajnych wyników Czas [ms] Ilość wystąpień 32 17 33 40 34 26 35 3 36 9 38 1 39 2 51 131 Mediana - wartość średnia jako średnia znacznie bardziej odporna na elementy odstające niż średnia arytmetyczna

Eliminacja skrajnych wyników Średnia 34,75 ms Wyniki odstające od reszty (np. 131 ms) mogą fałszować wartości średnie, dlatego należy je odrzucić. Odrzucono ok. 16 % wyników należących do decyla 1 oraz 9 Mediana 33 ms Wartość średnia, która jest znacznie bardziej odporna na wyniki odstające od reszty niż średnia arytmetyczna. Mediana - wartość średnia jako średnia znacznie bardziej odporna na elementy odstające niż średnia arytmetyczna

Wyniki przykład XML - 80 elementów Zapytanie z metodą 0 poziomów 3 poziomy 6 poziomów 10 poziomów XML + XSD Nodes 81 213 513 864 nodes with index 1298 1644 2621 3997 Query 63 137 401 716 query with index 1227 1511 2506 3820 Value 61 136 397 717 value with index 1190 1498 2496 3807 Wyniki przykład

Wnioski Dokumenty zawierające elementy typu prostego są przetwarzane szybciej z zastosowaniem schematów XML. Dokumenty zawierające elementy typu złożonego przetwarzane są szybciej bez zdefiniowanych schematów oraz bez indeksów XML. Czas wykonywania zapytań zależy od ilości elementów oraz poziomu zagnieżdzenia. Zastosowanie połączonych indeksów pomocniczych XML wydłuża czas przeszukiwania dokumentów. Najszybszą metodą przetwarzania jest metoda value(), a najwolniejszą metoda nodes().

Podsumowanie Hipoteza mówiąca, że: Rozbudowana struktura hierarchiczna dokumentu XML ma wpływ na zmniejszenie wydajności przetwarzanych dokumentów XML jest prawdziwa. Zastosowanie Schematów XML oraz użycie indeksacji pozwala zwiększyć wydajność przetwarzanych dokumentów XML, nie została potwierdzona.

Podsumowanie Dalsze testy dla tabel: Aby dokładniej zbadać wpływ indeksów na wydajność przetwarzania dokumentów XML, należy wykonać serie dodatkowych testów: Dalsze testy dla tabel: z jednym indeksem pomocniczym, bez schematów, z jednym indeksem pomocniczym, ze schematami, z dwoma indeksami pomocniczymi, bez schematów, z dwoma indeksami pomocniczymi, ze schematami.

Koniec