Obiektowe i półstrukturalne bazy danych

1 opinia

Format:

pdf, ibuk

DODAJ DO ABONAMENTU

WYBIERZ RODZAJ DOSTĘPU

20,15  31,00

Format: pdf

 

Dostęp online przez myIBUK

WYBIERZ DŁUGOŚĆ DOSTĘPU

6,15

Wypożycz na 24h i opłać sms-em

20,1531,00

cena zawiera podatek VAT

ZAPŁAĆ SMS-EM

TA KSIĄŻKA JEST W ABONAMENCIE

Już od 19,90 zł miesięcznie za 5 ebooków!

WYBIERZ SWÓJ ABONAMENT

Burzliwy rozwój obiektowych baz danych miał miejsce w latach dziewięćdziesiątych XX wieku. W ostatnich latach XX wieku silnie rozwijała się też koncepcja półstrukturalnych baz danych. Obecnie nadal używa się obu tych rodzajów baz danych. Chociaż są one dalej rozbudowywane, jednak zajmują ważne nisze rynkowe.
Książka składa się z dwóch części. Pierwsza z nich to podręcznik do prowadzonego przez autora wykładu monograficznego. Zawiera prezentację modeli danych strukturalnego obiektowego i półstrukturalnego (w tym XML) oraz omówienie języków zapytań dla tych modeli (OQL, XQuery, SBQL itd). Dużo miejsca poświęcono interesującej półstrukturalnej bazie danych LORE. Przedstawiłem jej ciekawy język zapytań Lorel, jego realizację w SZBD oraz koncepcję półschematu danych DataGuide.


Druga część tej książki to zbiór wyników badań naukowych. Zawarto w niej autorską koncepcję północnej kontroli typów opartą na półschematach danych, zaimplementowaną w SZBD JLoXiM strumieniową metodę realizacji zapytań SBQL oraz rozważania o uniwersalnym modelu danych i uniwersalnym języku zapytań.


Liczba stron324
WydawcaWydawnictwo Polsko-Japońskiej Akademii Technik Komputerowych
ISBN-13978-83-63103-31-6
Numer wydania1
Język publikacjipolski
Informacja o sprzedawcyRavelo Sp. z o.o.

EBOOKI WYDAWCY

Ciekawe propozycje

Spis treści

  Wstęp    16
  
  1.1 Zawartość rozdziałów    16
  1.2 Projekt LoXiM    17
  
  2 Strukturalne obiektowe bazy danych    21
  2.1 Relacyjny model danych    21
  2.1.1 Pojęcia pierwotne    21
  2.1.2 Schemat tabel/relacji i schemat relacyjnej bazy danych    22
  2.1.3 Egzemplarz relacji i egzemplarz relacyjnej bazy danych    22
  2.2 Obiektowy model danych    23
  2.2.1 Pojęcia pierwotne    23
  2.2.2 Wartości    24
  2.2.3 Typy danych    25
  2.2.4 Hierarchia typów danych    26
  2.2.5 Schemat struktury obiektowej bazy danych    27
  2.2.6 Przykład schematu obiektowej bazy danych    28
  2.2.7 Egzemplarz obiektowej bazy danych    28
  2.2.8 Dziedziczenie struktury    31
  2.2.9 Wartości domyślne    32
  2.2.10 Brak konfliktów dziedziczenia wielokrotnego    33
  2.2.11 Klasyfikacja wielokrotna i dynamiczna    34
  2.3 Model zachowania    36
  2.3.1 Sygnatury metod    36
  2.3.2 Schemat zachowania    36
  2.3.3 Egzemplarz schematu zachowania    37
  2.3.4 Problem dyspozycji    38
  2.4 Podsumowanie    39
  
  3 Przegląd języków zapytań obiektowych baz danych    41
  3.1 NaszQL    41
  3.2 Ahoj przygodo!    43
  3.3 Złączenie zależne    45
  3.4 Agregacja bez GROUP BY    46
  3.5 Wyrażenia ścieżkowe    47
  3.6 Zmienne ścieżkowe    49
  3.7 Dane półstrukturalne OEM    51
  3.8 Lorel i UnQL    52
  3.9 Dane XML    54
  3.10 XML-QL    56
  3.11 Transformacje XSLT    60
  3.12 Podsumowanie    61
  
  4 Obiektowo-relacyjne bazy danych    63
  4.1 Zalety typów obiektowych    63
  4.2 Elementy obiektowości w SQL:1999    64
  4.3 Elementy obiektowości w Oracle    66
  4.3.1 Kolekcje    66
  4.3.2 Typy użytkownika    67
  4.3.3 Konstruktor    68
  4.3.4 Metody typu obiektowego    72
  4.3.5 Typ referencyjny    75
  4.3.6 Porównywanie wartości typów obiektowych    77
  4.3.7 Perspektywy obiektowe    78
  4.4 Rozszerzony przykład. Baza zamówień    80
  
  5 Lorel - język półstrukturalnych zapytań    87
  5.1 Model danych    87
  5.2 Podstawowe założenie języka    88
  5.3 Równość w pięciu smakach    90
  5.4 Wspólne przedrostki ścieżek    93
  5.5 Wyrażenia ścieżkowe    97
  5.6 Przykład przykładów    99
  5.7 Podsumowanie    100
  
  6 Aparat wykonawczy języka Lorel    102
  6.1 Przykładowe dane    102
  6.2 Wykonywanie zapyta« w LORE    103
  6.3 Maszyna wirtualna aparatu wykonawczego LORE    104
  6.3.1 Scan    105
  6.3.2 Join    105
  6.3.3 Select    106
  6.3.4 Aggr    107
  6.3.5 Plan wykonania zapytania    108
  6.4 Indeksy    110
  6.4.1 Vindex    110
  6.4.2 Lindex    111
  6.4.3 Bindex    111
  6.4.4 Pindex    112
  6.4.5 Tindex    112
  6.4.6 Plan wykonania zapytania z użyciem indeksu    113
  6.5 Zapytanie z wynikiem wielowymiarowym    114
  6.5.1 Konstrukcja wyniku zapytania    115
  6.5.2 Analiza możliwych planów wykonania    116
  6.6 Podsumowanie    120
  
  7 DataGuide    122
  7.1 Półschemat danych i jego zastosowania    122
  7.2 Półschemat w formie DataGuide    123
  7.3 Algorytm konstrukcji silnego DataGuide    127
  7.4 Przyrostowa pielęgnacja silnego DataGuide    130
  7.5 Zastosowanie DataGuide w realizacji zapyta«    134
  7.6 Podsumowanie    135
  
  8 Języki zapytań dla danych XML    136
  8.1 Przykładowy dokument XML    137
  8.2 Przegląd języków    137
  8.2.1 Lorel    138
  8.2.2 XML-QL    139
  8.2.3 XML-GL    140
  8.2.4 XSLT    141
  8.2.5 XQL    144
  8.3 XPath    146
  8.3.1 Krok lokalizacyjny    146
  8.3.2 Osie    147
  8.3.3 Predykaty    147
  8.3.4 Zapis skrócony    149
  8.3.5 Przykłady    149
  8.4 Podstawowe elementy XQuery    150
  8.4.1 Wyrażenia ścieżkowe    151
  8.4.2 Konstruktor elementu    151
  8.5 FLWOR    152
  8.6 Instrukcje warunkowe i kwantyfikatory    153
  8.7 Funkcje i rekurencja    155
  8.8 Kontrola poprawności typów    157
  8.8.1 Dwa systemy typów    157
  8.8.2 Schemat przykładowego dokumentu    157
  8.8.3 Badanie typu    160
  8.8.4 Typ argumentu funkcji    161
  8.8.5 Instrukcja wyboru dla typu    162
  8.8.6 Typy elementarne    164
  8.9 Podsumowanie    165
  8.10 Zadanie    165
  
  9 Podejście stosowe do języków zapytań    168
  9.1 Modele składu obiektów    169
  9.1.1 Dane półstrukturalne (model M0)    169
  9.1.2 Dane obiektowe, klasy (model M1)    170
  9.1.3 Role dynamiczne (model M2)    172
  9.1.4 Hermetyzacja (model M3)    173
  9.2 Stos środowisk i wiązanie nazw    174
  9.2.1 Stos środowisk    174
  9.2.2 Wiązanie nazw    174
  9.2.3 Funkcja nested    176
  9.3 Język zapytań SBQL    179
  9.3.1 Składnia zapytań    179
  9.3.2 Stos wyników    180
  9.3.3 Semantyka zapytań    181
  9.3.4 Operatory algebraiczne    181
  9.3.5 Operatory niealgebraiczne    182
  9.3.6 Przykładowe zapytania w SBQL    185
  
  10 Półmocna kontrola typów w językach zapytań    187
  10.1 Mocna kontrola typów    187
  10.2 Przyczynkowość istniejących systemów typów    188
  10.3 Przykład niespójności w systemie typów ODMG    190
  10.4 Kolekcje    191
  10.5 Półmocna kontrola typów    193
  10.6 Prosty czy wymyślny system typów?    193
  10.7 Niezależność danych i schematy baz danych    194
  10.8 Źródła zbędnej złożoności    196
  10.9 Koncepcja systemu kontroli typów    197
  10.10 Zewnętrzny system typów    199
  10.10.1 Architektura trójwarstwowa    200
  10.10.2 Deklaracja obiektu    202
  10.10.3 Deklaracja podprogramu    203
  10.10.4 Typy nazwane    203
  10.10.5 Typy rozróżnione    205
  10.10.6 Deklaracja klasy    205
  10.10.7 Deklaracja interfejsu    208
  10.10.8 Programista systemowy    210
  10.10.9 Administrator    211
  10.10.10 Programista administracyjny    213
  10.10.11 Programista aplikacyjny    215
  10.10.12 Przykładowa składnia zewnętrznego systemu typów    217
  10.11 Schemat bazy danych i metabaza    218
  10.11.1 Metabaza    219
  10.11.2 Atrybuty wierzchołków metabazy    221
  10.11.3 Korzenie, przynależność do klas i dziedziczenie    222
  10.11.4 Metabaza jako słownik danych    223
  10.11.5 Role dynamiczne    223
  10.11.6 Hermetyzacja    223
  10.11.7 Podprogramy i ich parametry referencyjne    224
  10.11.8 Perspektywy    226
  10.12 Sygnatury    227
  10.12.1 Definicja sygnatur    227
  10.12.2 Statyczna funkcja nested    233
  10.13 Tablice decyzyjne wyprowadzania typów    234
  10.13.1 Operatory arytmetyczne i napisowe    235
  10.13.2 Operatory porównania    237
  10.13.3 Operatory logiczne    238
  10.13.4 Generyczne operatory algebraiczne    239
  10.13.5 Generyczne operatory niealgebraiczne    243
  10.13.6 Operator punktu stałego    247
  10.13.7 Podsumowanie    248
  10.14 Aparat statycznej kontroli typów    248
  10.14.1 Architektura aparatu kontroli typów    249
  10.14.2 Procedura statycznej kontroli typów    251
  10.14.3 Modyfikacja drzewa składni zapytania    256
  10.14.4 Wznowienie procesu kontroli typów po błędzie    261
  10.14.5 Sygnatury wariantowe i rozwidlenie procesu    264
  10.14.6 Przykładowa statyczna kontrola typów    265
  10.14.7 Przykład dla schematu danych z dziedziczeniem    270
  
  11 Strumieniony aparat wykonawczy JLoXiM    272
  11.1 Motywacja    272
  11.2 Założenia    274
  11.3 Strumień    274
  11.3.1 Rekord kontrolny    275
  11.3.2 Resultset∗    275
  11.3.3 Dziedzina komunikacji    275
  11.3.4 Relacja zgodności rekordów kontrolnych    276
  11.3.5 Uporządkowanie strumienia    277
  11.4 Komponenty    277
  11.4.1 Store    278
  11.4.2 Stamp    278
  11.4.3 GetNested    279
  11.4.4 RefMaterializer    279
  11.4.5 Merge    280
  11.4.6 HighestDefined    281
  11.4.7 Komponenty dla operatorów algebraicznych    281
  11.4.8 BreakBag    281
  11.4.9 MakeBag    282
  11.4.10 Select    282
  11.5 Konstrukcja sieci wykonawczej dla zapytania    282
  11.5.1 Statyczne wiązanie nazw i operatorów    283
  11.5.2 Budowa planu sieci wykonawczej    284
  11.6 Przykłady sieci    288
  11.7 Optymalizacje sieci wykonawczej    290
  11.8 Realizacja    290
  11.8.1 Implementacja strumieni    291
  11.8.2 Scalanie komponentów    291
  11.8.3 Strumienie a pamięć współdzielona    291
  11.8.4 Minimalizacja ilości danych odczytywanych ze składu    292
  11.8.5 JLoXiM - platforma eksperymentalna    292
  11.9 Podsumowanie    293
  
  12 Uniwersalny model stanu obiektu    294
  12.1 Relacyjna baza danych a obiekty C++    295
  12.1.1 Niezgodność modelu danych    295
  12.1.2 Niezgodność czasu wiązania    296
  12.1.3 Niezgodność czasu życia obiektów    297
  12.2 Uniwersalny model stanu    297
  12.3 Model relacyjny    299
  12.4 Model M0/AS0    301
  12.5 Model danych XML    303
  12.6 Model obiektowy języka C++    305
  12.7 Model obiektowy języków Java, .NET oraz Python    306
  12.8 Podsumowanie    308
  
  13 Uniwersalny język zapytań    309
  13.1 Operatory języka UQL    309
  13.1.1 Zmiana nazwy    310
  13.1.2 Spłaszczanie    310
  13.1.3 Odwzorowanie    310
  13.1.4 Ewaluacja    310
  13.1.5 Pobieranie k-tego podobiektu    311
  13.1.6 Filtrowanie    311
  13.1.7 Zagnieżdżanie    311
  13.1.8 Klonowanie    311
  13.1.9 Produkt kartezjański    312
  13.1.10 Grupowanie    312
  13.1.11 Różnica    312
  13.1.12 Transpozycja    313
  13.1.13 Zwijanie    313
  13.2 Przykłady odwzorowań zapytań    314
  13.3 Dalsze prace    317
  
  Literatura    318
  
  Indeks    327
RozwińZwiń
W celu zapewnienia wysokiej jakości świadczonych przez nas usług, nasz portal internetowy wykorzystuje informacje przechowywane w przeglądarce internetowej w formie tzw. „cookies”. Poruszając się po naszej stronie internetowej wyrażasz zgodę na wykorzystywanie przez nas „cookies”. Informacje o przechowywaniu „cookies”, warunkach ich przechowywania i uzyskiwania dostępu do nich znajdują się w Regulaminie.

Nie pokazuj więcej tego powiadomienia