Spis tre±ci. 1 Wst p... 1 1.1 Zawarto± rozdziaªów... 1 1.2 Projekt LoXiM... 2



Podobne dokumenty
Krzysztof Stencel Obiektowe i półstrukturalne bazy danych

Spis treści. Przedmowa

Spis treści 1. Wstęp 2. Projektowanie systemów informatycznych

Spis tre±ci. Przedmowa... Cz ± I

SBQL. język zapytań dla obiektowych baz danych. Kamil Adamczyk. Uniwersytet Warszawski 20.IV.2009

Implementacja schematów i statycznej kontroli typów w systemie JLoXiM

Wykład 0 Informacje Podstawowe

Myśl w języku Python! : nauka programowania / Allen B. Downey. Gliwice, cop Spis treści

Java w 21 dni / Rogers Cadenhead. Gliwice, cop Spis treści. O autorze 11. Wprowadzenie 13 TYDZIEŃ I JĘZYK JAVA

SQL w 24 godziny / Ryan Stephens, Arie D. Jones, Ron Plew. Warszawa, cop Spis treści

TOPIT Załącznik nr 3 Programowanie aplikacji internetowych

SQL SERVER 2012 i nie tylko:

Oracle11g: Wprowadzenie do SQL

Godzina (wtorek)

Obliczenia arytmetyczne. Konkatenacja pól. Aliasy kolumn. Aliasy tabel. Co dalej? Rozdział 4. Korzystanie z funkcji. Zastosowanie funkcji

Generowanie dokumentów XML z tabel relacyjnych - funkcje SQLX

Wst p. 1.1 Zawarto± rozdziaªów

ZMODYFIKOWANY Szczegółowy opis przedmiotu zamówienia

Podstawowy kurs z systemów baz danych / Jeffrey D. Ullman, Jennifer Widom. - wyd Gliwice, cop Spis treści.

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ),

Modelowanie i Programowanie Obiektowe

Definicja obiektowego modelu danych: struktura i zachowanie

mail: strona: konsultacje: na stronie (po wcześniejszym umówieniu drogą mailową)

Jeśli chcesz łatwo i szybko opanować podstawy C++, sięgnij po tę książkę.

Hurtownie danych - przegląd technologii

Teoretyczne podstawy informatyki

Temat : SBQL 1 obiektowy język zapytań.

2 Natywne bazy XML Języki zapytań XQuery Źródła 14

Przypomnienie najważniejszych pojęć z baz danych. Co to jest baza danych?

Rozkład materiału do nauczania informatyki w liceum ogólnokształcącym Wersja I

SZKOLENIE: Administrator baz danych. Cel szkolenia

Rozkład materiału do nauczania informatyki w liceum ogólnokształcącym Wersja II

Alicja Marszałek Różne rodzaje baz danych

Microsoft SQL Server Podstawy T-SQL

Programowanie MorphX Ax

Informatyka (10) dr inż. Katarzyna Palikowska Katedra Transportu Szynowego i Mostów p. 4 Hydro

Programowanie obiektowe

Spis treści. Wprowadzenie 15

Konstruowanie Baz Danych

UML cz. II. UML cz. II 1/38

Wykład XII. optymalizacja w relacyjnych bazach danych

Model semistrukturalny

Informacje wstępne Autor Zofia Kruczkiewicz Wzorce oprogramowania 4

Przetwarzanie i analiza danych w języku Python / Marek Gągolewski, Maciej Bartoszuk, Anna Cena. Warszawa, Spis treści

Bazy danych. Joanna Grygiel

Model logiczny SZBD. Model fizyczny. Systemy klientserwer. Systemy rozproszone BD. No SQL

Podstawy języka T-SQL : Microsoft SQL Server 2016 i Azure SQL Database / Itzik Ben-Gan. Warszawa, Spis treści

Rzut oka na zagadnienia zwi zane z projektowaniem list rozkazów

wiczenie 1 Podstawy j zyka Java. Instrukcje warunkowe

Podyplomowe Studium Informatyki w Bizniesie Wydział Matematyki i Informatyki, Uniwersytet Łódzki specjalność: Tworzenie aplikacji w środowisku Oracle

WSTĘP DO PROGRAMOWANIA

Bazy Danych. C. J. Date, Wprowadzenie do systemów baz danych, WNT - W-wa, (seria: Klasyka Informatyki), 2000

Rekurencyjne struktury danych

Obiektowość BD Powtórka Czas odpowiedzi. Bazy Danych i Systemy informacyjne Wykład 14. Piotr Syga

Zakres tematyczny dotyczący kursu PHP i MySQL - Podstawy pracy z dynamicznymi stronami internetowymi

3. Podaj elementy składowe jakie powinna uwzględniać definicja informatyki.

Fazy przetwarzania zapytania zapytanie SQL. Optymalizacja zapytań. Klasyfikacja technik optymalizacji zapytań. Proces optymalizacji zapytań.

WYMAGANIA EDUKACYJNE I KRYTERIA OCENIANIA Z PRZEDMIOTU PROGRAMOWANIE APLIKACJI INTERNETOWYCH

Optymalizacja w relacyjnych bazach danych - wybór wydajnej strategii obliczania wyrażenia relacyjnego.

Podstawy programowania. Wprowadzenie

Programista samouk : profesjonalny przewodnik do samodzielnej nauki kodowania / Cory Althoff. Gliwice, copyright Spis treści

Modelowanie hierarchicznych struktur w relacyjnych bazach danych

Projektowanie aplikacji z bazami danych

PAŃSTWOWA WYŻSZA SZKOŁA ZAWODOWA W NOWYM SĄCZU SYLABUS PRZEDMIOTU. Obowiązuje od roku akademickiego: 2011/2012

PHP i MySQL dla każdego / Marcin Lis. Wyd. 3. Gliwice, cop Spis treści

Zagadnienia programowania obiektowego

Systemy GIS Tworzenie zapytań w bazach danych

Multi-wyszukiwarki. Mediacyjne Systemy Zapytań wprowadzenie. Architektury i technologie integracji danych Systemy Mediacyjne

Ramowy plan kursu. Lp. Moduły Wyk. Lab. Przekazywane treści

INFORMATYKA Pytania ogólne na egzamin dyplomowy

DataGuide w półstrukturalnych bazach danych

BAZY DANYCH wprowadzenie. Opracował: dr inż. Piotr Suchomski

Spis treci. Dzie 1. I Wprowadzenie (wersja 0911) II Dostp do danych biecych specyfikacja OPC Data Access (wersja 0911)

Aplikacje Internetowe termin dodatkowy

Optymalizacja zapyta«w ±rodowisku rozproszonym w modelu semistrukturalnym

Indeksy w bazach danych. Motywacje. Techniki indeksowania w eksploracji danych. Plan prezentacji. Dotychczasowe prace badawcze skupiały się na

Temat : SBQL 1 obiektowy język zapytań.

Język SQL : przyjazny podręcznik / Larry Rockoff. Wyd. 2. Gliwice, cop Spis treści

poziom: Core wersja: 2.6 moduł: B : Wytwarzanie SYLLABUS

Dotacje na innowacje. Inwestujemy w waszą przyszłość.

Przegląd języków zapytań

Zaawansowane Systemy Baz Danych

6. Algorytmy ochrony przed zagłodzeniem dla systemów Linux i Windows NT.

Obiektowe bazy danych Obiektowe i obiektowo-relacyjne bazy danych

Paradygmaty programowania

OLAP i hurtownie danych c.d.

Zestawy zagadnień na egzamin dyplomowy (inżynierski) dla kierunku INFORMATYKA (studia I stopnia)

Systemy baz danych w zarządzaniu przedsiębiorstwem. W poszukiwaniu rozwiązania problemu, najbardziej pomocna jest znajomość odpowiedzi

Algorytmy zwiazane z gramatykami bezkontekstowymi

Porównanie systemów zarządzania relacyjnymi bazami danych

Część I Dostęp do danych oraz moŝliwości programowe (silnik bazy danych)

Spis treści. Przedmowa. Podstawy R

Kurs WWW. Paweł Rajba.

Terminologia baz danych

KLASA 1 i 2. Rozdział I

SQL Server i T-SQL w mgnieniu oka : opanuj język zapytań w 10 minut dziennie / Ben Forta. Gliwice, Spis treści

Obiektowe bazy danych

Programowanie obiektowe - 1.

Rozdział 4. Algorytmy sortowania 73 Rozdział 5. Typy i struktury danych 89 Rozdział 6. Derekursywacja i optymalizacja algorytmów 147

Transkrypt:

1 Wst p..................................................... 1 1.1 Zawarto± rozdziaªów................................... 1 1.2 Projekt LoXiM........................................ 2 2 Strukturalne obiektowe bazy danych....................... 7 2.1 Relacyjny model danych................................ 7 2.1.1 Poj cia pierwotne.............................. 7 2.1.2 Schemat tabel/relacji i schemat relacyjnej bazy danych....................................... 8 2.1.3 Egzemplarz relacji i egzemplarz relacyjnej bazy danych....................................... 8 2.2 Obiektowy model danych............................... 9 2.2.1 Poj cia pierwotne.............................. 9 2.2.2 Warto±ci...................................... 10 2.2.3 Typy danych.................................. 11 2.2.4 Hierarchia typów danych........................ 12 2.2.5 Schemat struktury obiektowej bazy danych........ 13 2.2.6 Przykªad schematu obiektowej bazy danych....... 14 2.2.7 Egzemplarz obiektowej bazy danych.............. 14 2.2.8 Dziedziczenie struktury......................... 17 2.2.9 Warto±ci domy±lne............................. 18 2.2.10 Brak koniktów dziedziczenia wielokrotnego....... 19 2.2.11 Klasykacja wielokrotna i dynamiczna............ 20 2.3 Model zachowania...................................... 22 2.3.1 Sygnatury metod.............................. 22 2.3.2 Schemat zachowania............................ 22 2.3.3 Egzemplarz schematu zachowania................ 23 2.3.4 Problem dyspozycji............................ 24 2.4 Podsumowanie......................................... 25

X Spis tre±ci 3 Przegl d j zyków zapyta«obiektowych baz danych........ 27 3.1 NaszQL............................................... 27 3.2 Ahoj przygodo!........................................ 29 3.3 Zª czenie zale»ne...................................... 31 3.4 Agregacja bez GROUP BY.............................. 32 3.5 Wyra»enia ±cie»kowe................................... 33 3.6 Zmienne ±cie»kowe..................................... 35 3.7 Dane póªstrukturalne OEM............................. 37 3.8 Lorel i UnQL.......................................... 38 3.9 Dane XML............................................ 40 3.10 XML-QL............................................. 42 3.11 Transformacje XSLT................................... 46 3.12 Podsumowanie......................................... 47 4 Obiektowo-relacyjne bazy danych.......................... 49 4.1 Zalety typów obiektowych............................... 49 4.2 Elementy obiektowo±ci w SQL:1999...................... 50 4.3 Elementy obiektowo±ci w Oracle......................... 52 4.3.1 Kolekcje...................................... 52 4.3.2 Typy u»ytkownika............................. 53 4.3.3 Konstruktor................................... 54 4.3.4 Metody typu obiektowego....................... 58 4.3.5 Typ referencyjny............................... 61 4.3.6 Porównywanie warto±ci typów obiektowych........ 63 4.3.7 Perspektywy obiektowe......................... 64 4.4 Rozszerzony przykªad. Baza zamówie«.................... 66 5 Lorel - j zyk póªstrukturalnych zapyta«................... 73 5.1 Model danych......................................... 73 5.2 Podstawowe zaªo»enie j zyka............................ 74 5.3 Równo± w pi ciu smakach.............................. 76 5.4 Wspólne przedrostki ±cie»ek............................. 79 5.5 Wyra»enia ±cie»kowe................................... 83 5.6 Przykªad przykªadów................................... 85 5.7 Podsumowanie......................................... 86 6 Aparat wykonawczy j zyka Lorel.......................... 89 6.1 Przykªadowe dane...................................... 89 6.2 Wykonywanie zapyta«w LORE.......................... 90 6.3 Maszyna wirtualna aparatu wykonawczego LORE.......... 91 6.3.1 Scan......................................... 92 6.3.2 Join......................................... 92 6.3.3 Select........................................ 93 6.3.4 Aggr......................................... 94 6.3.5 Plan wykonania zapytania...................... 95

XI 6.4 Indeksy............................................... 97 6.4.1 V index....................................... 97 6.4.2 Lindex....................................... 98 6.4.3 Bindex....................................... 98 6.4.4 P index....................................... 99 6.4.5 T index....................................... 99 6.4.6 Plan wykonania zapytania z u»yciem indeksu...... 100 6.5 Zapytanie z wynikiem wielowymiarowym.................. 101 6.5.1 Konstrukcja wyniku zapytania................... 102 6.5.2 Analiza mo»liwych planów wykonania............ 103 6.6 Podsumowanie......................................... 107 7 DataGuide................................................. 109 7.1 Póªschemat danych i jego zastosowania................... 109 7.2 Póªschemat w formie DataGuide......................... 110 7.3 Algorytm konstrukcji silnego DataGuide.................. 114 7.4 Przyrostowa piel gnacja silnego DataGuide................ 117 7.5 Zastosowanie DataGuide w realizacji zapyta«.............. 121 7.6 Podsumowanie......................................... 122 8 J zyki zapyta«dla danych XML........................... 123 8.1 Przykªadowy dokument XML............................ 124 8.2 Przegl d j zyków...................................... 124 8.2.1 Lorel........................................ 125 8.2.2 XML-QL..................................... 126 8.2.3 XML-GL..................................... 127 8.2.4 XSLT........................................ 128 8.2.5 XQL......................................... 131 8.3 XPath................................................ 133 8.3.1 Krok lokalizacyjny............................. 133 8.3.2 Osie.......................................... 134 8.3.3 Predykaty..................................... 134 8.3.4 Zapis skrócony................................ 136 8.3.5 Przykªady..................................... 136 8.4 Podstawowe elementy XQuery........................... 137 8.4.1 Wyra»enia ±cie»kowe........................... 138 8.4.2 Konstruktor elementu.......................... 138 8.5 FLWOR.............................................. 139 8.6 Instrukcje warunkowe i kwantykatory................... 140 8.7 Funkcje i rekurencja.................................... 142 8.8 Kontrola poprawno±ci typów............................ 144 8.8.1 Dwa systemy typów............................ 144 8.8.2 Schemat przykªadowego dokumentu.............. 144 8.8.3 Badanie typu.................................. 147 8.8.4 Typ argumentu funkcji......................... 148

XII Spis tre±ci 8.8.5 Instrukcja wyboru dla typu..................... 149 8.8.6 Typy elementarne.............................. 151 8.9 Podsumowanie......................................... 152 8.10 Zadanie............................................... 152 9 Podej±cie stosowe do j zyków zapyta«..................... 155 9.1 Modele skªadu obiektów................................ 156 9.1.1 Dane póªstrukturalne (model M0)............... 156 9.1.2 Dane obiektowe, klasy (model M1).............. 157 9.1.3 Role dynamiczne(model M2).................... 159 9.1.4 Hermetyzacja (model M3)....................... 160 9.2 Stos ±rodowisk i wi zanie nazw.......................... 161 9.2.1 Stos ±rodowisk................................. 161 9.2.2 Wi zanie nazw................................ 161 9.2.3 Funkcja nested................................ 163 9.3 J zyk zapyta«sbql................................... 166 9.3.1 Skªadnia zapyta«.............................. 166 9.3.2 Stos wyników.................................. 167 9.3.3 Semantyka zapyta«............................ 168 9.3.4 Operatory algebraiczne......................... 168 9.3.5 Operatory niealgebraiczne....................... 169 9.3.6 Przykªadowe zapytania w SBQL................. 172 10 Póªmocna kontrola typów w j zykach zapyta«............. 175 10.1 Mocna kontrola typów.................................. 175 10.2 Przyczynkowo± istniej cych systemów typów............. 176 10.3 Przykªad niespójno±ci w systemie typów ODMG........... 178 10.4 Kolekcje.............................................. 179 10.5 Póªmocna kontrola typów............................... 181 10.6 Prosty czy wymy±lny system typów?..................... 181 10.7 Niezale»no± danych i schematy baz danych............... 182 10.8 ródªa zb dnej zªo»ono±ci............................... 184 10.9 Koncepcja systemu kontroli typów....................... 185 10.10 Zewn trzny system typów.............................. 187 10.10.1 Architektura trójwarstwowa.................... 188 10.10.2 Deklaracja obiektu............................ 190 10.10.3 Deklaracja podprogramu....................... 191 10.10.4 Typy nazwane................................ 191 10.10.5 Typy rozró»nione.............................. 193 10.10.6 Deklaracja klasy............................... 193 10.10.7 Deklaracja interfejsu........................... 196 10.10.8 Programista systemowy........................ 198 10.10.9 Administrator................................ 199 10.10.10 Programista administracyjny................... 201 10.10.11 Programista aplikacyjny........................ 203

XIII 10.10.12 Przykªadowa skªadnia zewn trznego systemu typów 205 10.11 Schemat bazy danych i metabaza........................ 206 10.11.1 Metabaza.................................... 207 10.11.2 Atrybuty wierzchoªków metabazy............... 209 10.11.3 Korzenie, przynale»no± do klas i dziedziczenie.... 210 10.11.4 Metabaza jako sªownik danych.................. 211 10.11.5 Role dynamiczne............................... 211 10.11.6 Hermetyzacja................................. 211 10.11.7 Podprogramy i ich parametry referencyjne........ 212 10.11.8 Perspektywy.................................. 214 10.12 Sygnatury............................................ 215 10.12.1 Denicja sygnatur............................. 215 10.12.2 Statyczna funkcja nested....................... 221 10.13 Tablice decyzyjne wyprowadzania typów.................. 222 10.13.1 Operatory arytmetyczne i napisowe.............. 223 10.13.2 Operatory porównania......................... 225 10.13.3 Operatory logiczne............................. 226 10.13.4 Generyczne operatory algebraiczne.............. 227 10.13.5 Generyczne operatory niealgebraiczne............ 231 10.13.6 Operator punktu staªego....................... 235 10.13.7 Podsumowanie................................. 236 10.14 Aparat statycznej kontroli typów........................ 236 10.14.1 Architektura aparatu kontroli typów............. 237 10.14.2 Procedura statycznej kontroli typów.............. 239 10.14.3 Modykacja drzewa skªadni zapytania........... 244 10.14.4 Wznowienie procesu kontroli typów po bª dzie.... 249 10.14.5 Sygnatury wariantowe i rozwidlenie procesu....... 252 10.14.6 Przykªadowa statyczna kontrola typów........... 253 10.14.7 Przykªad dla schematu danych z dziedziczeniem... 258 11 Strumieniony aparat wykonawczy JLoXiM................. 261 11.1 Motywacja............................................ 261 11.2 Zaªo»enia............................................. 263 11.3 Strumie«............................................. 263 11.3.1 Rekord kontrolny.............................. 264 11.3.2 Resultset..................................... 264 11.3.3 Dziedzina komunikacji.......................... 264 11.3.4 Relacja zgodno±ci rekordów kontrolnych........... 265 11.3.5 Uporz dkowanie strumienia..................... 266 11.4 Komponenty.......................................... 266 11.4.1 Store......................................... 267 11.4.2 Stamp........................................ 267 11.4.3 GetNested.................................... 268 11.4.4 RefMaterializer................................ 268 11.4.5 Merge........................................ 269

XIV Spis tre±ci 11.4.6 HighestDened................................ 270 11.4.7 Komponenty dla operatorów algebraicznych....... 270 11.4.8 BreakBag..................................... 270 11.4.9 MakeBag..................................... 271 11.4.10 Select........................................ 271 11.5 Konstrukcja sieci wykonawczej dla zapytania.............. 271 11.5.1 Statyczne wi zanie nazw i operatorów............ 272 11.5.2 Budowa planu sieci wykonawczej................. 273 11.6 Przykªady sieci........................................ 277 11.7 Optymalizacje sieci wykonawczej......................... 279 11.8 Realizacja............................................. 279 11.8.1 Implementacja strumieni........................ 280 11.8.2 Scalanie komponentów.......................... 280 11.8.3 Strumienie a pami wspóªdzielona............... 280 11.8.4 Minimalizacja ilo±ci danych odczytywanych ze skªadu........................................ 281 11.8.5 JLoXiM - platforma eksperymentalna............ 281 11.9 Podsumowanie......................................... 282 12 Uniwersalny model stanu obiektu.......................... 283 12.1 Relacyjna baza danych a obiekty C++................... 284 12.1.1 Niezgodno± modelu danych..................... 284 12.1.2 Niezgodno± czasu wi zania..................... 285 12.1.3 Niezgodno± czasu»ycia obiektów................ 286 12.2 Uniwersalny model stanu............................... 286 12.3 Model relacyjny....................................... 288 12.4 Model M0/AS0........................................ 290 12.5 Model danych XML................................... 292 12.6 Model obiektowy j zyka C++........................... 294 12.7 Model obiektowy j zyków Java,.NET oraz Python......... 295 12.8 Podsumowanie......................................... 297 13 Uniwersalny j zyk zapyta«................................. 299 13.1 Operatory j zyka UQL................................. 299 13.1.1 Zmiana nazwy................................. 300 13.1.2 Spªaszczanie................................... 300 13.1.3 Odwzorowanie................................. 300 13.1.4 Ewaluacja..................................... 300 13.1.5 Pobieranie k-tego podobiektu.................... 301 13.1.6 Filtrowanie.................................... 301 13.1.7 Zagnie»d»anie................................. 301 13.1.8 Klonowanie................................... 301 13.1.9 Produkt kartezja«ski........................... 302 13.1.10 Grupowanie................................... 302 13.1.11 Ró»nica....................................... 302

XV 13.1.12 Transpozycja.................................. 303 13.1.13 Zwijanie...................................... 303 13.2 Przykªady odwzorowa«zapyta«.......................... 304 13.3 Dalsze prace.......................................... 307 Literatura..................................................... 309 Indeks......................................................... 319