If you can't read please download the document
OceanQuery - język zapytań edytora raportów
-
Upload
matmis
-
View
2.152
-
Download
10
Embed Size (px)
DESCRIPTION
Slajdy z konferencji KKNTPD 26.09.2007
Citation preview
- 1. OceanQuery Jzyk zapyta edytora raportw KKNTPD 2007 Marcin
Stefaniak Uniwersytet Warszawski ukasz Kamiski Comarch SA
2. Plan prezentacji
- Edytor raportw Ocean GenRap
3. Cesarzowi, co cesarskie
- OceanQuery jzyk zapyta w OCEAN GenRap.
- OCEAN GenRap jest edytorem raportw stworzonym przez dzia
R&D Comarch w Warszawie.
-
- http:// genrap.comarch.pl/
-
- CDN Optima (kilkadziesit tysicy uytkownikw).
-
- Comarch BSS (Iran, Belize, Litwa, ...)
-
- Nagroda za innowacyjno na CeBIT 2007
- Prezentowanie wyniki zostay czciowo uzyskane w ramach projektu
SPOWKP Nowa generacja jzykw zapyta dla inteligentnego raportowania
i analizy danych
4. Edytor raportw GenRap
- Wizualny edytor i generator raportw
- Dostp do schematu rda danych.
- Umieszczanie danych na raporcie.
5. Edytor raportw GenRap
- Koncept: w peni WYSIWYG edytor
-
- Edytujemy na wypenionym raporcie raczej ni na schemacie
-
- Pokazujemy domylnie cay raport
- Podstawowe wymaganie: obsuga baz SQL
- Jedno zapytanie SQL nam nie wystarcza
-
- Wynik zapytania SQL jest tablic 2D
-
- Schemat raportu jest drzewiasty
6. OceanQuery
- Gdyby z GenRapa zostawi GUI i udostpni API dla sterownikw rde
danych...
- Taki sterownik musiaby implementowa:
-
- Wyciganie schematu danych (metadane)
-
- ciganie danych dla zapytania OceanQuery
-
- SQL relacyjne bazy danych
7. OceanQuery - metadane
- Model sieciowy, nazewnictwo z modelu ER
-
- Encje (entity) i powizania (relationship)
-
- Powizania s jednokierunkowe
-
- Powizania spojedynczelubmnogie
-
-
- Typy proste: integer, boolean, decimal, string, datetime
-
-
- Tabela bez zdefiniowanego klucza gwnego
8. OceanQuery - metadane
-
- XSD opis struktury danych
-
- Elementy -> encje, zagniedanie -> zwizki
9. OceanQuery realizacja zapyta
-
- Wszystkie obliczenia po stronie serwera
-
- Zazwyczaj staa liczba zapyta
-
- Prosty interpreter zapyta
-
- Analogicznie do SQL (uycie SQL z MDX - trudniej)
10. OceanQuery jzyk zapyta
-
- odpowiadajca strukturze schematu raportu
11. OceanQuery jzyk zapyta
- Nie ma oficjalnej, naturalnej skadni
-
- Wprowadzamy nieoficjaln w artykule
-
- Z jawn konstrukcj do grupowania (group-by)
-
- Troszk bardziej statycznie typowany
-
-
- Wykorzystanie licznoci zwizkw
12. Co to jest XQuery
- Jzyk zapyta dla XML, rodem z W3C
- XQuery 1.0 Recommendation (23.I.2007)
-
- pierwszy Working Draft=4.5
- bad_no:COUNT($s/degrees WHERE $d.degree 18. Testy wydajnoci
- Mae porwnanie 3 zapytania
-
- GR/XML interpreter w pamici
-
- GR/SQL realizacja na MSSQL 2000.
19. Testy wydajnoci
-
- realizacja poprzez GR/SQL najwydajniejsza
20. Niektre publikacjena zblione tematy
- Realizacja XQuery przez SQL
-
- Dowolne bazy danych, podzbir XQuery
-
- Specjalna posta bazy danych
- Propozycja grupowania w XQuery BEA
21. Realizacja XQuery poprzez SQL
- SilkRoute (2002, ACM TODS)
-
-
- klucze gwne zawsze istniej
-
- Podzbir XQuery (np. bez porzdku elementw)
22. Realizacja XQuery poprzez SQL
-
- 2006 Technical Report, Univ Washington, Seattle
-
- Rne optymalizacyjne techniki
-
- Realizacja na rnych docelowych silnikach SQL
23. Realizacja XQuery poprzez SQL
- Dynamic Interval Encoding (SIGMOD 2003)
-
- dokumenty XML zapisane w bazie SQL
-
- Dodatkowe kolumny z numerami opisuj drzewo
-
- Pene wsparcie dla osi (axis) XML
- XQuery on SQL Hosts (VLDB 2004)
-
- Wykorzystuje OLAP-owe DENSE_RANK()
24. Propozycja grupowania w XQuery
- Extending XQuery with Groupping, Duplicate Elimination and
Outer Joins (XML 2004)
- Opcjonalna klauzula group-by w FLWOR
For $c in CUSTOMERS() group $c as $cs-group by$c/COUNTRY as
$country, $c/STATE as $state return { fn:avg($cs-group/AGE)} 25.
Propozycje grupowania
-
- Jedno grupowanie na wyraenie iterujce
-
- GROUPBY jest rodzajem wyraenia iterujcego
-
- GROUPBY(GROUPBY(...), ...) - jest dozwolone skadniowo, ale
zabronione dla zasady
- Oba rozwizania s rwnowane
26. Dzikuj! Pytania?