Używamy cookies, aby ułatwić korzystanie z Portalu. Możesz określić warunki przechowywania, dostępu do plików cookies w Twojej przeglądarce. Dowiedz się więcej.
strona główna Strona główna | Nowości | Promocje | Zapowiedzi Twoje konto | Zarejestruj | Schowek | Kontakt | Pomoc
mapa działów
Szukaj: szukanie zaawansowane
Koszyk
Książki \ Bazy danych

Wprowadzenie do systemów baz danych. Wydanie VII Język: 1

978-83-283-4695-6

Cena Brutto: 179.00

Cena netto: 170.48

Ilość:
Wersja: Drukowana
Autor Ramez Elmasri, Shamkant B. Navathe
Liczba_stron 1344
Wydawnictwo Helion
Oprawa twarda
Data_Wydania 2019-02-19

Mijają lata, a bazy danych wciąż stanowią serce większości systemów informatycznych. Rozwój technologii sprawia jednak, że zaprojektowanie systemu baz danych, jego wdrożenie i administrowanie nim wymaga biegłości w wielu dziedzinach. Niezbędne są solidne podstawy modelowania i projektowania baz danych, umiejętność posłużenia się językami i modelami udostępnianymi przez systemy zarządzania bazami danych, a także znajomość technik implementacji samych systemów. Od profesjonalisty wymaga się także wiedzy o najnowszych technologiach, takich jak NoSQL i oczywiście big data. Ważnym uzupełnieniem tego szerokiego wachlarza jest też znajomość technologii powiązanych z systemami bazodanowymi.


Ta książka jest siódmym, zaktualizowanym wydaniem klasycznego podręcznika do nauki baz danych. Jest to szczegółowa prezentacja najważniejszych aspektów systemów i aplikacji bazodanowych oraz powiązanych technologii. To znakomity podręcznik dla studentów i świetne kompendium dla praktyków. Sporo miejsca poświęcono w nim systemom rozproszonym oraz technologiom opartym na systemie Hadoop i modelu MapReduce. Nie zabrakło opisu takich zagadnień, jak model IR, wyszukiwanie z użyciem słów kluczowych, porównanie baz danych z modelem IR, modele wyszukiwania, ocena wyszukiwania i algorytmy rankingowe. Wykładowcom przyda się szereg ułatwiających pracę dydaktyczną diagramów, prezentacji i rysunków.

W książce między innymi:

  • wprowadzenie do modeli, systemów i języków z obszaru baz danych;
  • model związków encji i programowanie baz danych;
  • bazy relacyjne, obiektowo-relacyjne, obiektowe i XML w bazach danych;
  • algorytmy przetwarzania zapytań i techniki optymalizacji;
  • bezpieczeństwo baz danych.

Baza danych? Stosuj tylko najskuteczniejsze rozwiązania!

    • Przedmowa
      • Nowości w tym wydaniu
      • Układ i zawartość siódmego wydania
      • Wskazówki dotyczące jak najlepszego wykorzystywania tej książki
      • Podziękowania
    • O autorach
    • I Wprowadzenie do baz danych
    • 1. Bazy danych i ich użytkownicy
      • 1.1. Wprowadzenie
      • 1.2. Przykład
      • 1.3. Właściwości rozwiązań opartych na bazach danych
        • 1.3.1. Samoopisująca natura systemów baz danych
        • 1.3.2. Oddzielenie programów od danych oraz abstrakcja danych
        • 1.3.3. Obsługa wielu perspektyw dla tych samych danych
        • 1.3.4. Współdzielenie danych oraz wielodostępne przetwarzanie transakcji
      • 1.4. Aktorzy na scenie
        • 1.4.1. Administratorzy bazy danych
        • 1.4.2. Projektanci bazy danych
        • 1.4.3. Użytkownicy końcowi
        • 1.4.4. Analitycy systemowi i programiści aplikacji (inżynierowie oprogramowania)
      • 1.5. Pracownicy poza sceną
      • 1.6. Zalety stosowania rozwiązań opartych na systemach zarządzania bazami danych
        • 1.6.1. Kontrola nadmiarowości
        • 1.6.2. Ograniczanie możliwości uzyskania nieautoryzowanego dostępu
        • 1.6.3. Zapewnianie miejsca trwałego przechowywania dla obiektów stosowanych w programach
        • 1.6.4. Zapewnianie struktur przechowywania dla efektywnego przetwarzania zapytań
        • 1.6.5. Zapewnianie możliwości tworzenia kopii bezpieczeństwa i odzyskiwania danych
        • 1.6.6. Zapewnianie interfejsów dla wielu użytkowników
        • 1.6.7. Reprezentowanie skomplikowanych relacji pomiędzy danymi
        • 1.6.8. Wymuszanie więzów integralności
        • 1.6.9. Zezwalanie na wnioskowanie i podejmowanie działań w oparciu o zdefiniowane reguły
        • 1.6.10. Dodatkowe własności wynikające ze stosowania rozwiązań opartych na bazach danych
      • 1.7. Krótka historia praktycznych zastosowań baz danych
        • 1.7.1. Wczesne zastosowania baz danych oparte na systemach hierarchicznych i sieciowych
        • 1.7.2. Zapewnianie elastyczności w rozwiązaniach opartych na relacyjnych bazach danych
        • 1.7.3. Aplikacje obiektowe i konieczność wprowadzenia bardziej skomplikowanych baz danych
        • 1.7.4. Wykorzystywana w handlu elektronicznym wymiana danych za pośrednictwem internetu z użyciem XML-a
        • 1.7.5. Rozszerzanie możliwości współczesnych systemów baz danych z myślą o nowych zastosowaniach
        • 1.7.6. Powstanie systemów przechowywania big data i baz NOSQL
      • 1.8. Kiedy nie należy używać systemów zarządzania bazami danych
      • 1.9. Podsumowanie
        • Pytania powtórkowe
        • Ćwiczenia
        • Wybrane publikacje
    • 2. Architektura systemów baz danych i związane z nimi pojęcia
      • 2.1. Modele danych, schematy i egzemplarze
        • 2.1.1. Kategorie modeli danych
        • 2.1.2. Schematy, egzemplarze i stany baz danych
      • 2.2. Trójwarstwowa architektura i niezależność danych
        • 2.2.1. Architektura trójwarstwowa
        • 2.2.2. Niezależność danych
      • 2.3. Języki i interfejsy baz danych
        • 2.3.1. Języki systemów zarządzania bazami danych
        • 2.3.2. Interfejsy systemów zarządzania bazami danych
      • 2.4. Środowisko systemu bazy danych
        • 2.4.1. Moduły składające się na system zarządzania bazą danych
        • 2.4.2. Narzędzia systemu bazy danych
        • 2.4.3. Narzędzia, środowiska aplikacji oraz mechanizmy komunikacji
      • 2.5. Architektury systemów zarządzania bazami danych scentralizowane i typu klient-serwer
        • 2.5.1. Scentralizowane architektury systemów zarządzania bazami danych
        • 2.5.2. Podstawowe architektury typu klient-serwer
        • 2.5.3. Dwuwarstwowe architektury typu klient-serwer dla systemów zarządzania bazami danych
        • 2.5.4. Trójwarstwowe i n-warstwowe architektury typu klient-serwer dla aplikacji internetowych
      • 2.6. Klasyfikacja systemów zarządzania bazami danych
      • 2.7. Podsumowanie
        • Pytania powtórkowe
        • Ćwiczenia
        • Wybrane publikacje
    • II Koncepcyjne modelowanie danych i projektowanie baz danych
    • 3. Modelowanie danych zgodnie z modelem związków encji
      • 3.1. Stosowanie wysokopoziomowych, koncepcyjnych modelów danych podczas projektowania bazy danych
      • 3.2. Przykładowa aplikacja bazy danych
      • 3.3. Typy encji, zbiory encji, atrybuty i klucze
        • 3.3.1. Encje i atrybuty
        • 3.3.2. Typy encji, zbiory encji, klucze i zbiory wartości
        • 3.3.3. Początkowy projekt koncepcyjny bazy danych FIRMA
      • 3.4. Typy związków, zbiory związków, role i ograniczenia strukturalne
        • 3.4.1. Typy, zbiory i egzemplarze związków
        • 3.4.2. Stopień związku, nazwy ról oraz związki rekurencyjne
        • 3.4.3. Ograniczenia dla typów związków
        • 3.4.4. Atrybuty typów związków
      • 3.5. Słabe typy encji
      • 3.6. Udoskonalanie projektu ER dla bazy danych FIRMA
      • 3.7. Diagramy ER, konwencje nazewnictwa oraz zagadnienia związane z projektowaniem
        • 3.7.1. Podsumowanie notacji diagramów związków encji (ER)
        • 3.7.2. Prawidłowe nazewnictwo konstrukcji schematu
        • 3.7.3. Decyzje projektowe związane z tworzeniem schematu koncepcyjnego ER
        • 3.7.4. Notacje alternatywne względem tradycyjnych diagramów związków encji (ER)
      • 3.8. Przykładowa inna notacja: diagramy klas UML
      • 3.9. Typy związków stopnia wyższego niż drugi
        • 3.9.1. Wybór pomiędzy związkami binarnymi a trójskładnikowymi (lub wyższych stopni)
        • 3.9.2. Ograniczenia związków trójskładnikowych (i wyższych stopni)
      • 3.10. Inny przykład baza danych UNIWERSYTET
      • 3.11. Podsumowanie
        • Pytania powtórkowe
        • Ćwiczenia
        • Ćwiczenia laboratoryjne
        • Wybrane publikacje
    • 4. Rozszerzony model związków encji
      • 4.1. Podklasy, nadklasy i dziedziczenie
      • 4.2. Specjalizacja i generalizacja
        • 4.2.1. Specjalizacja
        • 4.2.2. Generalizacja
      • 4.3. Ograniczenia i właściwości hierarchii specjalizacji i generalizacji
        • 4.3.1. Ograniczenia dotyczące specjalizacji i generalizacji
        • 4.3.2. Hierarchie i kraty specjalizacji i generalizacji
        • 4.3.3. Stosowanie procesów specjalizacji i generalizacji podczas udoskonalania schematów koncepcyjnych
      • 4.4. Modelowanie typów UNII w oparciu o kategorie
      • 4.5. Przykład schematu EER dla bazy danych UNIWERSYTET oraz formalne definicje dla modelu EER
        • 4.5.1. Inny przykład bazy danych UNIWERSYTET
        • 4.5.2. Wybory projektowe związane ze specjalizacją i generalizacją
        • 4.5.3. Formalne definicje pojęć stosowanych w modelu EER
      • 4.6. Przykładowa inna notacja: reprezentowanie specjalizacji-generalizacji na diagramach klas języka UML
      • 4.7. Abstrakcja danych, reprezentacja wiedzy oraz zagadnienia związane z ontologią
        • 4.7.1. Klasyfikacja i tworzenie egzemplarzy
        • 4.7.2. Identyfikacja
        • 4.7.3. Specjalizacja i generalizacja
        • 4.7.4. Agregacja i asocjacja
        • 4.7.5. Ontologia i sieć semantyczna
      • 4.8. Podsumowanie
        • Pytania powtórkowe
        • Ćwiczenia
        • Ćwiczenia laboratoryjne
        • Wybrane publikacje
    • III Relacyjny model danych i SQL
    • 5. Relacyjny model danych i ograniczenia relacyjnych baz danych
      • 5.1. Pojęcia z modelu relacyjnego
        • 5.1.1. Dziedziny, atrybuty, krotki i relacje
        • 5.1.2. Właściwości relacji
        • 5.1.3. Notacja modelu relacyjnego
      • 5.2. Ograniczenia modelu relacyjnego i schematy relacyjnych baz danych
        • 5.2.1. Ograniczenia dziedziny
        • 5.2.2. Ograniczenia klucza i ograniczenia wartości pustych
        • 5.2.3. Relacyjne bazy danych i schematy relacyjnych baz danych
        • 5.2.4. Integralność encji, integralność odwołań i klucze obce
        • 5.2.5. Pozostałe typy ograniczeń
      • 5.3. Operacje aktualizacji, transakcje i obsługa naruszeń więzów integralności
        • 5.3.1. Operacja wstawiania
        • 5.3.2. Operacja usuwania
        • 5.3.3. Operacja aktualizacji
        • 5.3.4. Transakcje
      • 5.4. Podsumowanie
        • Pytania powtórkowe
        • Ćwiczenia
        • Wybrane publikacje
    • 6. Podstawy języka SQL
      • 6.1. Definicje danych i typy danych języka SQL
        • 6.1.1. Stosowane w języku SQL pojęcia schematu i katalogu
        • 6.1.2. Polecenie CREATE TABLE języka SQL
        • 6.1.3. Typy danych atrybutów oraz dziedziny wartości w standardzie SQL
      • 6.2. Określanie ograniczeń w języku SQL
        • 6.2.1. Definiowanie ograniczeń i wartości domyślnych dla atrybutów
        • 6.2.2. Definiowanie ograniczeń klucza i więzów integralności odwołań
        • 6.2.3. Nadawanie nazw definiowanym ograniczeniom
        • 6.2.4. Stosowanie klauzuli CHECK do określania ograniczeń dla krotek
      • 6.3. Podstawowe zapytania języka SQL
        • 6.3.1. Struktura podstawowych zapytań języka SQL: SELECT-FROM-WHERE
        • 6.3.2. Niejednoznaczne nazwy atrybutów, mechanizm nazw zastępczych (aliasów) oraz zmienne krotek
        • 6.3.3. Nieokreślona klauzula WHERE i zastosowania symbolu gwiazdki
        • 6.3.4. Tabele i zbiory w języku SQL
        • 6.3.5. Dopasowywanie podciągów znaków do wzorca oraz operacje arytmetyczne
        • 6.3.6. Sortowanie wyników zapytań
        • 6.3.7. Omówienie i podsumowanie prostych zapytań języka SQL
      • 6.4. Dostępne w języku SQL polecenia INSERT, DELETE i UPDATE
        • 6.4.1. Polecenie INSERT
        • 6.4.2. Polecenie DELETE
        • 6.4.3. Polecenie UPDATE
      • 6.5. Dodatkowe własności języka SQL
      • 6.6. Podsumowanie
        • Pytania powtórkowe
        • Ćwiczenia
        • Wybrane publikacje
    • 7. Jeszcze o języku SQL złożone zapytania, wyzwalacze, perspektywy i modyfikowanie schematów
      • 7.1. Bardziej skomplikowane zapytania języka SQL pobierające dane
        • 7.1.1. Operacje porównania z wartością pustą (NULL) oraz logika trójwartościowa
        • 7.1.2. Zapytania zagnieżdżone, krotki oraz porównywanie zbiorów i wielozbiorów
        • 7.1.3. Zagnieżdżone zapytania skorelowane
        • 7.1.4. Dostępne w języku SQL funkcje EXISTS i UNIQUE
        • 7.1.5. Jawne deklarowanie zbiorów i zmienianie nazw atrybutów w języku SQL
        • 7.1.6. Tabele połączone w języku SQL
        • 7.1.7. Funkcje agregujące w języku SQL
        • 7.1.8. Grupowanie: klauzule GROUP BY i HAVING
        • 7.1.9. Inne konstrukcje języka SQL: WITH i CASE
        • 7.1.10. Zapytania rekurencyjne w języku SQL
        • 7.1.11. Omówienie i podsumowanie zapytań języka SQL
      • 7.2. Definiowanie ograniczeń w postaci asercji i działań w postaci wyzwalaczy
        • 7.2.1. Definiowanie ogólnych ograniczeń w postaci asercji w języku SQL
        • 7.2.2. Wprowadzenie do wyzwalaczy w języku SQL
      • 7.3. Perspektywy (tabele wirtualne) w języku SQL
        • 7.3.1. Pojęcie perspektywy w języku SQL
        • 7.3.2. Definiowanie perspektyw w języku SQL
        • 7.3.3. Implementacja perspektyw i mechanizm ich aktualizowania
        • 7.3.4. Perspektywy jako mechanizm uwierzytelniania
      • 7.4. Dostępne w języku SQL polecenia zmiany schematu
        • 7.4.1. Polecenie DROP
        • 7.4.2. Polecenie ALTER
      • 7.5. Podsumowanie
        • Pytania powtórkowe
        • Ćwiczenia
        • Wybrane publikacje
    • 8. Algebra relacyjna i rachunek relacji
      • 8.1. Relacyjne operacje unarne: selekcja i projekcja
        • 8.1.1. Operacja selekcji
        • 8.1.2. Operacja projekcji
        • 8.1.3. Sekwencje operacji i operacja ZMIANA NAZWY
      • 8.2. Operacje algebry relacyjnej pochodzące z teorii zbiorów
        • 8.2.1. Operacje sumy, części wspólnej i różnicy
        • 8.2.2. Operacja iloczynu (produktu) kartezjańskiego
      • 8.3. Binarne operacje na relacjach: złączenie i dzielenie
        • 8.3.1. Operacja złączenia
        • 8.3.2. Odmiany operacji złączenia: operacje równo-złączenia i złączenia naturalnego
        • 8.3.3. Kompletny zbiór operacji algebry relacyjnej
        • 8.3.4. Operacja dzielenia
        • 8.3.5. Notacja drzew zapytań
      • 8.4. Dodatkowe operacje relacyjne
        • 8.4.1. Uogólniona projekcja
        • 8.4.2. Funkcje agregujące i mechanizm grupowania
        • 8.4.3. Rekurencyjne operacje domknięcia
        • 8.4.4. Operacje złączenia zewnętrznego
        • 8.4.5. Operacja sumy zewnętrznej
      • 8.5. Przykłady zapytań w algebrze relacyjnej
      • 8.6. Relacyjny rachunek krotek
        • 8.6.1. Zmienne krotek i relacje zakresowe
        • 8.6.2. Wyrażenia i wzory w relacyjnym rachunku krotek
        • 8.6.3. Kwantyfikatory uniwersalne i egzystencjalne
        • 8.6.4. Przykładowe zapytania w relacyjnym rachunku krotek
        • 8.6.5. Notacja używana dla grafów zapytań
        • 6.6.5. Wzajemne przekształcanie kwantyfikatorów uniwersalnych i egzystencjalnych
        • 8.6.7. Stosowanie kwantyfikatorów uniwersalnych w zapytaniach
        • 8.6.8. Bezpieczne wyrażenia
      • 8.7. Relacyjny rachunek dziedzin
      • 8.8. Podsumowanie
        • Pytania powtórkowe
        • Ćwiczenia
        • Ćwiczenia laboratoryjne
        • Wybrane publikacje
    • 9. Projektowanie relacyjnych baz danych przez odwzorowywanie modelu ER i EER w model relacyjny
      • 9.1. Projektowanie relacyjnych baz danych w oparciu o odwzorowywanie modelu ER w model relacyjny
        • 9.1.1. Algorytm odwzorowujący model ER w model relacyjny
        • 9.1.2. Omówienie i podsumowanie odwzorowania konstrukcji modelu ER w odpowiednie konstrukcje modelu relacyjnego
      • 9.2. Odwzorowania konstrukcji modelu EER w relacje
        • 9.2.1. Odwzorowywanie specjalizacji i generalizacji
        • 9.2.2. Odwzorowywanie współdzielonych podklas (konstrukcji dziedziczenia wielokrotnego)
        • 9.2.3. Odwzorowywanie kategorii (typów unii)
      • 9.3. Podsumowanie
        • Pytania powtórkowe
        • Ćwiczenia
        • Ćwiczenia laboratoryjne
        • Wybrane publikacje
    • IV Techniki programowania baz danych
    • 10. Wprowadzenie do technik programowania w języku SQL
      • 10.1. Przegląd technik i zagadnień z obszaru programowania baz danych
        • 10.1.1. Strategie programowania baz danych
        • 10.1.2. Niezgodność impedancji
        • 10.1.3. Typowa sekwencja operacji składających się na interakcję w programowaniu baz danych
      • 10.2. Osadzony język SQL, dynamiczny język SQL oraz język SQLJ
        • 10.2.1. Wyszukiwanie pojedynczych krotek za pomocą poleceń osadzonego języka SQL
        • 10.2.2. Przetwarzanie wyników zapytań za pomocą kursorów
        • 10.2.3. Określanie zapytań w czasie wykonywania programu stosowanie dynamicznego języka SQL
        • 10.2.4. SQLJ: Osadzanie poleceń języka SQL w języku Java
        • 10.2.5. Używanie iteratorów do przetwarzania wyników zapytań w standardzie SQLJ
      • 10.3. Programowanie baz danych z wywołaniami funkcji i bibliotekami klas: SQL/CLI oraz JDBC
        • 10.3.1. Programowanie baz danych z wykorzystaniem interfejsu SQL/CLI oraz języka C w roli nadrzędnego języka programowania
        • 10.3.2. JDBC: biblioteka klas języka SQL służąca do programowania w języku Java
      • 10.4. Procedury składowane w bazie danych i technika SQL/PSM
        • 10.4.1. Procedury i funkcje składowane w bazie danych
        • 10.4.2. SQL/PSM: Rozszerzenie standardu SQL o możliwość określania trwale składowanych modułów
      • 10.5. Porównanie trzech opisanych podejść
      • 10.6. Podsumowanie
        • Pytania powtórkowe
        • Ćwiczenia
        • Wybrane publikacje
    • 11. Programowanie internetowych baz danych z użyciem języka PHP
      • 11.1. Prosty przykład zastosowania PHP
      • 11.2. Przegląd podstawowych mechanizmów języka PHP
        • 11.2.1. Zmienne, typy danych i konstrukcje programistyczne języka PHP
        • 11.2.2. Tablice w PHP
        • 11.2.3. Funkcje w języku PHP
        • 11.2.4. Zmienne i formularze serwera PHP
      • 11.3. Przegląd programowania baz danych za pomocą PHP
        • 11.3.1. Nawiązywanie połączenia z bazą danych
        • 11.3.2. Pobieranie danych z formularzy i wstawianie rekordów
        • 11.3.3. Zapytania pobierające dane z tabel bazy
      • 11.4. Krótki przegląd technologii programowania internetowych baz danych w Javie
      • 11.5. Podsumowanie
        • Pytania powtórkowe
        • Ćwiczenia
        • Wybrane publikacje
    • V Podejścia obiektowe, obiektowo-relacyjne i XML: zagadnienia, modele, języki i standardy
    • 12. Bazy obiektowe i obiektowo-relacyjne
      • 12.1. Przegląd pojęć obiektowych
        • 12.1.1. Wprowadzenie do pojęć i cech obiektowych
        • 12.1.2. Tożsamość obiektów i porównanie obiektów z literałami
        • 12.1.3. Złożone struktury typów obiektów i literałów
        • 12.1.4. Enkapsulacja operacji i trwałość obiektów
        • 12.1.5. Hierarchia typów i dziedziczenie
        • 12.1.6. Inne pojęcia obiektowe
        • 12.1.7. Podsumowanie zagadnień dotyczących obiektowych baz danych
      • 12.2. Rozszerzenia obiektowe w standardzie SQL
        • 12.2.1. Typy definiowane przez użytkownika za pomocą polecenia CREATE TYPE i obiekty złożone
        • 12.2.2. Identyfikatory obiektów oparte na odwołaniach
        • 12.2.3. Tworzenie tabel z wykorzystaniem UDT
        • 12.2.4. Enkapsulacja operacji
        • 12.2.5. Dziedziczenie i przeciążanie funkcji
        • 12.2.6. Określanie związków za pomocą odwołań
      • 12.3. Model obiektowy ODMG i język definiowania obiektów ODL
        • 12.3.1. Przegląd modelu obiektowego ODMG
        • 12.3.2. Dziedziczenie w modelu obiektowym ODMG
        • 12.3.3. Wbudowane interfejsy i klasy w modelu obiektowym
        • 12.3.4. Obiekty atomowe (definiowane przez użytkownika)
        • 12.3.5. Ekstensje, klucze i obiekty-fabryki
        • 12.3.6. Język definicji obiektów ODL
      • 12.4. Projektowanie koncepcyjne obiektowej bazy danych
        • 12.4.1. Różnice pomiędzy koncepcyjnym projektowaniem obiektowych i relacyjnych baz danych
        • 12.4.2. Odwzorowywanie schematu EER na schemat obiektowy
      • 12.5. Obiektowy język zapytań OQL
        • 12.5.1. Proste zapytania OQL, punkty wejścia bazy danych i zmienne iterujące
        • 12.5.2. Wyniki zapytań i wyrażenia ścieżkowe
        • 12.5.3. Inne cechy OQL
      • 12.6. Przegląd wiązania z językiem C++ w standardzie ODMG
      • 12.7. Podsumowanie
        • Pytania powtórkowe
        • Ćwiczenia
        • Wybrane publikacje
    • 13. XML rozszerzalny język znaczników
      • 13.1. Dane strukturalne, półstrukturalne i niestrukturalne
      • 13.2. Hierarchiczny (drzewiasty) model danych w dokumentach XML
      • 13.3. Dokumenty XML, DTD i schematy
        • 13.3.1. Dobrze uformowane i prawidłowe dokumenty XML oraz XML DTD
        • 13.3.2. Schematy XML
      • 13.4. Zapisywanie dokumentów XML w bazach i ich pobieranie
      • 13.5. Języki związane ze standardem XML
        • 13.5.1. XPath, czyli określanie ścieżek w dokumentach XML
        • 13.5.2. XQuery: definiowanie zapytań w XML
        • 13.5.3. Inne języki i protokoły związane ze standardem XML
      • 13.6. Pobieranie dokumentów XML z relacyjnych baz danych
        • 13.6.1. Tworzenie hierarchicznych perspektyw w formacie XML dla danych płaskich lub zapisanych w grafie
        • 13.6.2. Przerywanie cykli w celu zamiany grafów w drzewa
        • 13.6.3. Dodatkowe kroki związane z tworzeniem dokumentu XML na podstawie bazy danych
      • 13.7. XML/SQL: funkcje języka SQL generujące dane w formacie XML
      • 13.8. Podsumowanie
        • Pytania powtórkowe
        • Ćwiczenia
        • Wybrane publikacje
    • VI Teoria projektowania baz danych i normalizacja
    • 14. Podstawy zależności funkcyjnych i normalizacji w relacyjnych bazach danych
      • 14.1. Nieformalne wskazówki dotyczące projektowania schematów relacji
        • 14.1.1. Wymuszanie jednoznacznej semantyki atrybutów relacji
        • 14.1.2. Nadmiarowe informacje w krotkach oraz anomalie aktualizacji
        • 14.1.3. Wartości null w krotkach
        • 14.1.4. Generowanie fałszywych krotek
        • 14.1.5. Podsumowanie i omówienie wskazówek projektowych
      • 14.2. Zależności funkcyjne
        • 14.2.1. Definicja zależności funkcyjnej
      • 14.3. Postaci normalne oparte na kluczach głównych
        • 14.3.1. Normalizacja relacji
        • 14.3.2. Praktyczne zastosowania postaci normalnych
        • 14.3.3. Definicje kluczy i atrybutów należących do kluczy
        • 14.3.4. Pierwsza postać normalna
        • 14.3.5. Druga postać normalna
        • 14.3.6. Trzecia postać normalna
      • 14.4. Definicje ogólne drugiej i trzeciej postaci normalnej
        • 14.4.1. Definicja ogólna drugiej postaci normalnej
        • 14.4.2. Definicja ogólna trzeciej postaci normalnej
        • 14.4.3. Interpretacja definicji ogólnej trzeciej postaci normalnej
      • 14.5. Postać normalna Boycea-Codda
        • 14.5.1. Dekompozycja relacji niebędących w BCNF
      • 14.6. Zależności wielowartościowe i czwarta postać normalna
        • 14.6.1. Formalna definicja zależności wielowartościowej
      • 14.7. Zależności złączeniowe i piąta postać normalna
      • 14.8. Podsumowanie
        • Pytania powtórkowe
        • Ćwiczenia
        • Ćwiczenia laboratoryjne
        • Wybrane publikacje
    • 15. Algorytmy projektowania relacyjnych baz danych i dodatkowe zależności
      • 15.1. Inne zagadnienia z obszaru zależności funkcyjnych: reguły wnioskowania, równoważności i pokrycie minimalne
        • 15.1.1. Reguły wnioskowania dla zależności funkcyjnych
        • 15.1.2. Równoważność zbiorów zależności funkcyjnych
        • 15.1.3. Zbiory minimalne zależności funkcyjnych
      • 15.2. Właściwości dekompozycji relacyjnych
        • 15.2.1. Dekompozycja relacji i niewystarczalność postaci normalnych
        • 15.2.2. Właściwość zachowania zależności dekompozycji
        • 15.2.3. Właściwość złączenia bezstratnego (nieaddytywnego) dekompozycji
        • 15.2.4. Testowanie dekompozycji binarnych pod względem występowania właściwości złączenia nieaddytywnego
        • 15.2.5. Kolejne dekompozycje o złączeniach nieaddytywnych
      • 15.3. Algorytmy projektowania schematów relacyjnych baz danych
        • 15.3.1. Dekompozycja na schematy w trzeciej postaci normalnej z zachowaniem zależności i właściwością złączenia nieaddytywnego (bezstratnego)
        • 15.3.2. Dekompozycja ze złączeniem nieaddytywnym na schematy w postaci normalnej Boycea-Codda
      • 15.4. Problemy związane z wartościami pustymi i krotkami zawieszonymi oraz inne projekty relacyjne
        • 15.4.1. Problemy związane z wartościami pustymi i krotkami zawieszonymi
        • 15.4.2. Omówienie algorytmów normalizacyjnych i innych projektów relacyjnych
      • 15.5. Dalsze omówienie zależności wielowartościowych i 4NF
        • 15.5.1. Reguły wnioskowania dla zależności funkcyjnych i wielowartościowych
        • 15.5.2. Jeszcze o czwartej postaci normalnej
        • 15.5.3. Dekompozycja ze złączeniem nieaddytywnym na relacje w czwartej postaci normalnej
      • 15.6. Inne zależności i postaci normalne
        • 15.6.1. Zależności złączeniowe i piąta postać normalna
        • 15.6.2. Zależności zawierania
        • 15.6.3. Zależności funkcyjne oparte na funkcjach i procedurach arytmetycznych
        • 15.6.4. Postać normalna klucza dziedziny
      • 15.7. Podsumowanie
        • Pytania powtórkowe
        • Ćwiczenia
        • Ćwiczenia laboratoryjne
        • Wybrane publikacje
    • VII Struktury plikowe, funkcje mieszające, indeksowanie i projekty fizyczne baz danych
    • 16. Składowanie danych na dysku, podstawowe struktury plikowe, funkcje mieszające i nowoczesne struktury składowania
      • 16.1. Wprowadzenie
        • 16.1.1. Hierarchie pamięciowe i urządzenia składowania danych[1]
        • 16.1.2. Przechowywanie baz danych
      • 16.2. Drugorzędne urządzenia pamięciowe
        • 16.2.1. Opis sprzętowy napędów dyskowych
        • 16.2.2. Zwiększanie wydajności dostępu do danych na dysku
        • 16.2.3. Pamięć masowa SSD
        • 16.2.4. Taśmowe urządzenia pamięciowe
      • 16.3. Buforowanie bloków
        • 16.3.1. Zarządzanie buforem
        • 16.3.2. Strategie zastępowania danych w buforze
      • 16.4. Rozmieszczanie rekordów plików na dysku
        • 16.4.1. Rekordy i typy rekordów
        • 16.4.2. Pliki oraz rekordy o stałej i zmiennej długości
        • 16.4.3. Rozmieszczenie rekordów w blokach i rekordy segmentowane oraz niesegmentowane
        • 16.4.4. Alokowanie bloków pliku na dysku
        • 16.4.5. Nagłówki plików
      • 16.5. Operacje wykonywane na plikach
      • 16.6. Pliki nieuporządkowanych rekordów (pliki stertowe)
      • 16.7. Pliki uporządkowanych rekordów (pliki posortowane)
      • 16.8. Techniki mieszania
        • 16.8.1. Mieszanie wewnętrzne
        • 16.8.2. Mieszanie zewnętrzne dla plików na dysku
        • 16.8.3. Techniki mieszania umożliwiające dynamiczne rozszerzanie plików
      • 16.9. Inne podstawowe metody organizacji plików
        • 16.9.1. Pliki rekordów mieszanych
        • 16.9.2. B-drzewa i inne struktury danych służące jako podstawowe metody organizacji
      • 16.10. Zapewnianie równoległego dostępu do dysku przy użyciu architektury RAID
        • 16.10.1. Zwiększanie niezawodności przy użyciu architektury RAID
        • 16.10.2. Poprawianie wydajności przy użyciu architektury RAID
        • 16.10.3. Metody organizacji i poziomy architektury RAID
      • 16.11. Nowoczesne architektury składowania danych
        • 16.11.1. Sieci obszarów składowania danych
        • 16.11.2. Technologia NAS
        • 16.11.3. iSCSI i inne sieciowe protokoły składowania danych
        • 16.11.4. Technologia Automated Storage Tiering
        • 16.11.5. Obiektowa pamięć masowa
      • 16.12. Podsumowanie
        • Pytania powtórkowe
        • Ćwiczenia
        • Wybrane publikacje
    • 17. Struktury indeksowe dla plików i fizyczne projekty baz danych
      • 17.1. Rodzaje jednopoziomowych indeksów uporządkowanych
        • 17.1.1. Indeksy główne
        • 17.1.2. Indeksy klastrowania
        • 17.1.3. Indeksy drugorzędne
        • 17.1.4. Podsumowanie
      • 17.2. Indeksy wielopoziomowe
      • 17.3. Dynamiczne indeksy wielopoziomowe z użyciem B-drzew i B+-drzew
        • 17.3.1. Drzewa wyszukiwania i B-drzewa
        • 17.3.2. B+-drzewa
      • 17.4. Indeksy na wielu kluczach
        • 17.4.1. Indeks uporządkowany na wielu atrybutach
        • 17.4.2. Mieszanie partycjonowane
        • 17.4.3. Pliki matrycowe
      • 17.5. Inne rodzaje indeksów
        • 17.5.1. Indeksy oparte na mieszaniu
        • 17.5.2. Indeksy bitmapowe
        • 17.5.3. Indeksowanie oparte na funkcji
      • 17.6. Ogólne zagadnienia związane z indeksami
        • 17.6.1. Indeksy logiczne a fizyczne
        • 17.6.2. Tworzenie indeksu
        • 17.6.3. Dostrajanie indeksów
        • 17.6.4. Dodatkowe kwestie związane ze składowaniem relacji i indeksów
      • 17.7. Fizyczne projektowanie baz danych w przypadku baz relacyjnych
        • 17.7.1. Czynniki wpływające na fizyczny projekt bazy danych
        • 17.7.2. Decyzje dotyczące fizycznego projektu bazy danych
      • 17.8. Podsumowanie
        • Pytania powtórkowe
        • Ćwiczenia
        • Wybrane publikacje
    • VIII Przetwarzanie i optymalizacja zapytań
    • 18. Strategie przetwarzania zapytań[1]
      • 18.1. Translacja zapytań języka SQL do postaci wyrażeń algebry relacji i innych operacji
        • 18.1.1. Dodatkowe operatory złączeń częściowych i antyzłączeń
      • 18.2. Algorytmy sortowania zewnętrznego
      • 18.3. Algorytmy operacji selekcji
        • 18.3.1. Możliwości implementacji operacji SELECT
        • 18.3.2. Metody wyszukiwania dla selekcji na podstawie warunku koniunktywnego
        • 18.3.3. Metody wyszukiwania dla selekcji na podstawie alternatywy logicznej
        • 18.3.4. Szacowanie selektywności warunku
      • 18.4. Implementacja operacji JOIN
        • 18.4.1. Metody implementacji złączeń
        • 18.4.2. Wpływ dostępnej przestrzeni bufora i pliku używanego w pętli zewnętrznej na wydajność operacji złączenia w pętli zagnieżdżonej
        • 18.4.3. Wpływ współczynnika selekcji złączenia na wydajność tej operacji
        • 18.4.4. Ogólna postać partycjonowanego złączenia mieszającego
        • 18.4.5. Hybrydowe złączanie mieszające
      • 18.5. Algorytmy operacji projekcji i teoriomnogościowych
        • 18.5.1. Stosowanie antyzłączeń w operacji SET DIFFERENCE (EXCEPT lub MINUS w języku SQL)
      • 18.6. Implementacja operacji agregujących oraz złączeń różnego rodzaju
        • 18.6.1. Implementacja operacji agregujących
        • 18.6.2. Implementacja różnego rodzaju złączeń
      • 18.7. Łączenie operacji poprzez mechanizm potokowy
        • 18.7.1. Iteratory używane do implementowania operacji fizycznych
      • 18.8. Algorytmy równoległego przetwarzania zapytań
        • 18.8.1. Równoległość na poziomie operatorów
        • 18.8.2. Równoległość w jednym zapytaniu
        • 18.8.3. Równoległość w wielu zapytaniach
      • 18.9. Podsumowanie
        • Pytania powtórkowe
        • Ćwiczenia
        • Wybrane publikacje
    • 19. Optymalizacja zapytań
      • 19.1. Drzewa zapytań i heurystyki optymalizacji zapytań
        • 19.1.1. Notacja drzew zapytań i grafów zapytań
        • 19.1.2. Heurystyczna optymalizacja drzew zapytań
      • 19.2. Wybór planów wykonania zapytań
        • 19.2.1. Różne sposoby wykonywania zapytań
        • 19.2.2. Optymalizacja podzapytań zagnieżdżonych
        • 19.2.3. Scalanie podzapytań (perspektyw)
        • 19.2.4. Perspektywy zmaterializowane
      • 19.3. Wykorzystanie selektywności w optymalizacji kosztowej
        • 19.3.1. Składowe kosztu wykonywania zapytań
        • 19.3.2. Informacje z katalogu używane w funkcjach kosztu
        • 19.3.3. Histogramy
      • 19.4. Funkcje kosztu dla operacji SELECT
        • 19.4.1. Przykład optymalizacji selekcji na podstawie wzorów szacowania kosztów
      • 19.5. Przykłady funkcji kosztu dla operacji JOIN
        • 19.5.1. Selektywność i liczność złączeń częściowych i antyzłączeń
        • 19.5.2. Przykład optymalizacji złączenia na podstawie funkcji kosztu
        • 19.5.3. Zapytania dotyczące wielu relacji i porządkowanie złączeń
        • 19.5.4. Optymalizacja fizyczna
        • 19.5.5. Określanie kolejności złączeń za pomocą programowania dynamicznego
      • 19.6. Przykład ilustrujący kosztową optymalizację zapytań
      • 19.7. Dodatkowe zagadnienia związane z optymalizacją zapytań
        • 19.7.1. Wyświetlanie planu wykonania zapytania uzyskanego przez system
        • 19.7.2. Szacowanie wielkości wyników dla innych operacji
        • 19.7.3. Zapis planu w pamięci podręcznej
        • 19.7.4. Optymalizacja z wykorzystaniem pierwszych k wyników
      • 19.8. Przykład optymalizacji zapytań w hurtowniach danych
      • 19.9. Optymalizacja zapytań w bazach Oracle[18]
        • 19.9.1. Optymalizator fizyczny
        • 19.9.2. Globalny optymalizator zapytań
        • 19.9.3. Optymalizacja adaptacyjna
        • 19.9.4. Przetwarzanie tablicowe
        • 19.9.5. Wskazówki
        • 19.9.6. Zarysy
        • 19.9.7. Zarządzanie planami wykonywania instrukcji języka SQL
      • 19.10. Semantyczna optymalizacji zapytań
      • 19.11. Podsumowanie
        • Pytania powtórkowe
        • Ćwiczenia
        • Wybrane publikacje
    • IX Przetwarzanie transakcji, sterowanie współbieżne i odtwarzanie baz danych
    • 20. Wprowadzenie do problematyki i teorii przetwarzania transakcji
      • 20.1. Wprowadzenie do problematyki przetwarzania transakcji
        • 20.1.1. Systemy jedno- i wieloużytkownikowe
        • 20.1.2. Transakcje, elementy baz danych, operacje odczytu i zapisu oraz bufory SZBD
        • 20.1.3. Uzasadnienie potrzeby stosowania sterowania współbieżnego
        • 20.1.4. Uzasadnienie potrzeby odtwarzania
      • 20.2. Pojęcia dotyczące transakcji i systemu
        • 20.2.1. Stany transakcji i dodatkowe operacje
        • 20.2.2. Dziennik systemowy
        • 20.2.3. Punkt zatwierdzenia transakcji
        • 20.2.4. Strategie zastępowania bufora specyficzne dla SZBD
      • 20.3. Pożądane właściwości transakcji
      • 20.4. Charakteryzowanie harmonogramów na podstawie możliwości odtwarzania
        • 20.4.1. Harmonogramy (historie) transakcji
        • 20.4.2. Charakterystyka harmonogramów według możliwości odtwarzania
      • 20.5. Charakterystyka harmonogramów według ich szeregowalności
        • 20.5.1. Harmonogramy szeregowe, nieszeregowe oraz konfliktowo-szeregowalne
        • 20.5.2. Sprawdzanie występowania szeregowalności konfliktowej harmonogramu
        • 20.5.3. Wykorzystywanie szeregowalności do sterowania współbieżnego
        • 20.5.4. Równoważność perspektywiczna i szeregowalność perspektywiczna
        • 20.5.5. Inne rodzaje równoważności harmonogramów
      • 20.6. Obsługa transakcji w języku SQL
      • 20.7. Podsumowanie
      • Pytania powtórkowe
        • Ćwiczenia
        • Wybrane publikacje
    • 21. Techniki sterowania współbieżnego
      • 21.1. Techniki blokowania dwufazowego dla celów sterowania współbieżnego
        • 21.1.1. Rodzaje blokad i systemowe tabele blokad
        • 21.1.2. Gwarantowanie szeregowalności blokowania dwufazowego
        • 21.1.3. Problem zakleszczenia i zagłodzenia
      • 21.2. Sterowanie współbieżne w oparciu o uporządkowanie według znaczników czasu
        • 21.2.1. Znaczniki czasu
        • 21.2.2. Algorytm uporządkowania według znaczników czasu
      • 21.3. Techniki wielowersyjnego sterowania współbieżnego
        • 21.3.1. Technika wielowersyjna oparta na porządkowaniu według znaczników czasu
        • 21.3.2. Wielowersyjne blokowanie dwufazowe z użyciem blokad certyfikujących
      • 21.4. Sterowanie współbieżne z użyciem technik walidacyjnych (optymistycznych) i izolacji snapshotów
        • 21.4.1. Walidacyjne (optymistyczne) sterowanie współbieżne
        • 21.4.2. Sterowanie współbieżne oparte na izolacji snapshotów
      • 21.5. Ziarnistość elementów danych i blokowanie z wieloma poziomami ziarnistości
        • 21.5.1. Kwestie dotyczące poziomu ziarnistości w przypadku blokowania
        • 21.5.2. Blokowanie z wieloma poziomami ziarnistości
      • 21.6. Użycie blokad dla celów sterowania współbieżnego w przypadku indeksów
      • 21.7. Inne kwestie związane ze sterowaniem współbieżnym
        • 21.7.1. Wstawianie, usuwanie i rekordy fantomowe
        • 21.7.2. Transakcje interaktywne
        • 21.7.3. Zatrzaski
      • 21.8. Podsumowanie
        • Pytania powtórkowe
        • Ćwiczenia
        • Wybrane publikacje
    • 22. Techniki odtwarzania baz danych
      • 22.1. Pojęcia związane z odtwarzaniem
        • 22.1.1. Zarys problematyki odtwarzania i podział algorytmów odtwarzania na odrębne kategorie
        • 22.1.2. Zapisywanie w pamięci podręcznej (buforowanie) bloków dyskowych
        • 22.1.3. Rejestrowanie zapisów z wyprzedzeniem, technika zabierania oraz wymuszania
        • 22.1.4. Punkty kontrolne w dzienniku systemowym oraz tworzenie przybliżonych punktów kontrolnych
        • 22.1.5. Wycofywanie transakcji i wycofywanie kaskadowe
        • 22.1.6. Działania transakcji niewpływające na bazy danych
      • 22.2. Techniki odtwarzania NO-UNDO/REDO oparte na aktualizacjach odroczonych
      • 22.3. Techniki odtwarzania oparte na aktualizacjach natychmiastowych
      • 22.4. Stronicowanie z przesłanianiem
      • 22.5. Algorytm odtwarzania ARIES
      • 22.6. Odtwarzanie w systemach wielu baz danych
      • 22.7. Tworzenie kopii bezpieczeństwa bazy danych i odtwarzanie po awariach katastroficznych
      • 22.8. Podsumowanie
        • Pytania powtórkowe
        • Ćwiczenia
        • Wybrane publikacje
    • X Rozproszone bazy danych, systemy NOSQL i big data
    • 23. Zagadnienia z obszaru rozproszonych baz danych
      • 23.1. Zagadnienia z obszaru rozproszonych baz danych
        • 23.1.1. Co sprawia, że baza danych jest rozproszona?
        • 23.1.2. Przezroczystość
        • 23.1.3. Stabilność i dostępność
        • 23.1.4. Skalowalność i odporność na podział
        • 23.1.5. Autonomia
        • 23.1.6. Zalety rozproszonych baz danych
      • 23.2. Techniki fragmentacji, replikacji i alokacji danych w projekcie rozproszonej bazy danych
        • 23.2.1. Fragmentacja danych i sharding
        • 23.2.2. Replikacja i alokacja danych
        • 23.2.3. Przykłady fragmentacji, alokacji i replikacji danych
      • 23.3. Techniki sterowania współbieżnego i odtwarzania danych w rozproszonych bazach danych
        • 23.3.1. Rozproszone sterowanie współbieżne oparte na wyróżnionej kopii danych
        • 23.3.2. Rozproszone sterowanie współbieżne oparte na głosowaniu
        • 23.3.3. Rozproszone odtwarzanie danych
      • 23.4. Przegląd zarządzania transakcjami w rozproszonych bazach danych
        • 23.4.1. Protokół zatwierdzania dwufazowego
        • 23.4.2. Protokół zatwierdzania trójfazowego
        • 23.4.3. Obsługa zarządzania transakcjami w systemie operacyjnym
      • 23.5. Przetwarzanie zapytań i optymalizacja w rozproszonych bazach danych
        • 23.5.1. Przetwarzanie zapytań rozproszonych
        • 23.5.2. Koszty przesyłu danych w przetwarzaniu zapytań rozproszonych
        • 23.5.3. Rozproszone przetwarzanie zapytań z użyciem złączeń częściowych
        • 23.5.4. Dekompozycja zapytań i aktualizacji
      • 23.6. Rodzaje rozproszonych systemów baz danych
        • 23.6.1. Zarządzanie federacyjnymi systemami baz danych
      • 23.7. Architektury rozproszonych baz danych
        • 23.7.1. Architektura równoległa a rozproszona
        • 23.7.2. Ogólna architektura czystych baz rozproszonych
        • 23.7.3. Architektura federacyjnych baz danych
        • 23.7.4. Przegląd trójwarstwowej architektury klient-serwer
      • 23.8. Zarządzanie rozproszonym katalogiem
      • 23.9. Podsumowanie
        • Pytania powtórkowe
        • Ćwiczenia
        • Wybrane publikacje
    • 24. Bazy danych NOSQL i systemy składowania big data
      • 24.1. Wprowadzenie do systemów NOSQL
        • 24.1.1. Powstanie systemów NOSQL
        • 24.1.2. Cechy systemów NOSQL
        • 24.1.3. Kategorie systemów NOSQL
      • 24.2. Twierdzenie CAP
      • 24.3. Dokumentowe systemy NOSQL i baza MongoDB
        • 24.3.1. Model danych z systemu MongoDB
        • 24.3.2. Operacje CRUD w systemie MongoDB
        • 24.3.3. Cechy systemu rozproszonego MongoDB
      • 24.4. Magazyny NOSQL z parami klucz-wartość
        • 24.4.1. Przegląd systemu DynamoDB
        • 24.4.2. Rozproszony magazyn danych z parami klucz-wartość Voldemort
        • 24.4.3. Przykładowe inne magazyny z parami klucz-wartość
      • 24.5. Kolumnowe systemy NOSQL
        • 24.5.1. Model danych i wersjonowanie w systemie HBase
        • 24.5.2. Operacje CRUD w systemie HBase
        • 24.5.3. Zagadnienia związane ze składowaniem danych i systemem rozproszonym w HBase
      • 24.6. Grafowe bazy NOSQL i system Neo4j
        • 24.6.1. Model danych w systemie Neo4j
        • 24.6.2. Język zapytań Cypher w systemie Neo4j
        • 24.6.3. Cechy interfejsów i systemu rozproszonego w Neo4j
      • 24.7. Podsumowanie
        • Pytania powtórkowe
        • Wybrane publikacje
    • 25. Technologie z obszaru big data oparte na modelu MapReduce i systemie Hadoop[1]
      • 25.1. Czym jest big data?
      • 25.2. Wprowadzenie do technologii MapReduce i Hadoop
        • 25.2.1. Tło historyczne
        • 25.2.2. Model MapReduce
        • 25.2.3. Wersje Hadoopa
      • 25.3. System HDFS
        • 25.3.1. Wymagania wstępne związane z systemem HDFS
        • 25.3.2. Architektura systemu HDFS
        • 25.3.3. Operacje wejścia-wyjścia na plikach i zarządzanie replikami w systemie HDFS
        • 25.3.4. Skalowalność systemu HDFS
        • 25.3.5. Ekosystem Hadoopa
      • 25.4. Model MapReduce: dodatkowe szczegóły
        • 25.4.1. Środowisko uruchomieniowe MapReduce
        • 25.4.2. Przykład: złączenia w modelu MapReduce
        • 25.4.3. Apache Hive
        • 25.4.4. Zalety technologii Hadoop i MapReduce
      • 25.5. Hadoop 2 (nazywany też YARN)
        • 25.5.1. Uzasadnienie powstania platformy YARN
        • 25.5.2. Architektura platformy YARN
        • 25.5.3. Inne platformy w YARN
      • 25.6. Ogólne omówienie
        • 25.6.1. Hadoop i MapReduce a równoległe relacyjne SZBD
        • 25.6.2. Big data w chmurach obliczeniowych
        • 25.6.3. Problemy z lokalnością danych i optymalizacja zasobów w aplikacjach z obszaru big data działających w chmurze
        • 25.6.4. YARN jako platforma usług z obszaru danych
        • 25.6.5. Wyzwania związane z technologiami z obszaru big data
        • 25.6.6. Przyszłość
      • 25.7. Podsumowanie
        • Pytania powtórkowe
        • Wybrane publikacje
    • XI Zaawansowane modele, systemy i zastosowania baz danych
    • 26. Rozszerzone modele danych: wprowadzenie do aktywnych, czasowych, przestrzennych, multimedialnych i dedukcyjnych baz danych
      • 26.1. Wyzwalacze i inne pojęcia związane z aktywnymi bazami danych
        • 26.1.1. Uogólniony model aktywnych baz danych i wyzwalacze w Oracle
        • 26.1.2. Projektowanie i implementacja aktywnych baz danych
        • 26.1.3. Przykładowe aktywne reguły poziomu wyrażenia w systemie STARBURST
        • 26.1.4. Możliwe zastosowania aktywnych baz danych
        • 26.1.5. Wyzwalacze w SQL-99
      • 26.2. Koncepcja czasowych baz danych
        • 26.2.1. Reprezentacja czasu, kalendarze i wymiary czasu
        • 26.2.2. Wprowadzenie czasu do relacyjnych baz danych z obsługą wersji krotek
        • 26.2.3. Czas w obiektowych bazach danych z obsługą wersji atrybutów
        • 26.2.4. Konstruowanie zapytań czasowych i język TSQL2
        • 26.2.5. Szeregi czasowe
      • 26.3. Zagadnienia z obszaru przestrzennych baz danych[24]
        • 26.3.1. Wprowadzenie do przestrzennych baz danych
        • 26.3.2. Typy i modele danych przestrzennych
        • 26.3.3. Operatory i zapytania przestrzenne
        • 26.3.4. Indeksowanie danych przestrzennych
        • 26.3.5. Eksploracja danych przestrzennych
        • 26.3.6. Zastosowania danych przestrzennych
      • 26.4. Zagadnienia z obszaru multimedialnych baz danych
        • 26.4.1. Automatyczna analiza obrazów
        • 26.4.2. Wykrywanie obiektów na obrazach
        • 26.4.3. Semantyczne opisywanie obrazów
        • 26.4.4. Analizy danych audio
      • 26.5. Wprowadzenie do dedukcyjnych baz danych
        • 26.5.1. Przegląd dedukcyjnych baz danych
        • 26.5.2. Notacja języków Prolog i Datalog
        • 26.5.3. Notacja języka Datalog
        • 26.5.4. Forma klauzulowa i klauzule Horna
        • 26.5.5. Interpretacja reguł
        • 26.5.6. Programy w języku Datalog i ich bezpieczeństwo
        • 26.5.7. Zastosowanie operacji relacyjnych
        • 26.5.8. Wykonywanie zapytań nierekurencyjnych
      • 26.6. Podsumowanie
        • Pytania powtórkowe
        • Ćwiczenia
        • Wybrane publikacje
    • 27. Wprowadzenie do wyszukiwania informacji i danych w internecie
      • 27.1. Zagadnienia z obszaru wyszukiwania informacji (WI)
        • 27.1.1. Wprowadzenie do wyszukiwania informacji
        • 27.1.2. Porównanie baz danych i systemów WI
        • 27.1.3. Krótka historia WI
        • 27.1.4. Tryby interakcji w systemach WI
        • 27.1.5. Ogólny proces WI
      • 27.2. Modele wyszukiwania
        • 27.2.1. Model logiczny
        • 27.2.2. Model oparty na przestrzeni wektorowej
        • 27.2.3. Model probabilistyczny
        • 27.2.4. Model semantyczny
      • 27.3. Typy zapytań w systemach WI
        • 27.3.1. Zapytania oparte na słowach kluczowych
        • 27.3.2. Zapytania logiczne
        • 27.3.3. Zapytania do wyszukiwania fraz
        • 27.3.4. Zapytania z określaniem odległości słów
        • 27.3.5. Zapytania z symbolami wieloznacznymi
        • 27.3.6. Zapytania w języku naturalnym
      • 27.4. Wstępne przetwarzanie tekstu
        • 27.4.1. Usuwanie słów pomijanych
        • 27.4.2. Stemming
        • 27.4.3. Korzystanie z tezaurusa
        • 27.4.4. Inne etapy przetwarzania: cyfry, myślniki, znaki przestankowe, wielkość znaków
        • 27.4.5. Wydobywanie informacji
      • 27.5. Indeksy odwrócone
        • 27.5.1. Wprowadzenie do systemu Lucene
      • 27.6. Miary oceny adekwatności wyników wyszukiwania
        • 27.6.1. Czułość i precyzja
        • 27.6.2. Średnia precyzja
        • 27.6.3. Krzywa czułość/precyzja
        • 27.6.4. Miara F
      • 27.7. Wyszukiwanie i analizy w sieci WWW[25]
        • 27.7.1. Analizy danych internetowych i ich związki z WI
        • 27.7.2. Analizy struktury sieci WWW
        • 27.7.3. Analizowanie struktury odsyłaczy na stronach internetowych
        • 27.7.4. Analizy treści w sieci WWW
        • 27.7.5. Podejścia analizowania treści w sieci WWW
        • 27.7.6. Analizy użytkowania witryn
        • 27.7.7. Praktyczne zastosowania analiz użytkowania witryn
      • 27.8. Trendy w wyszukiwaniu informacji
        • 27.8.1. Wyszukiwanie fasetowe
        • 27.8.2. Wyszukiwanie społecznościowe
        • 27.8.3. Wyszukiwanie informacji w dialogach
        • 27.8.4. Probabilistyczne modelowanie tematu
        • 27.8.5. Systemy odpowiadania na pytania
      • 27.9. Podsumowanie
        • Pytania powtórkowe
        • Wybrane publikacje
    • 28. Elementy eksploracji danych
      • 28.1. Przegląd technologii eksploracji danych
        • 28.1.1. Eksploracja danych kontra hurtownie danych
        • 28.1.2. Eksploracja danych jako część procesu odkrywania wiedzy
        • 28.1.3. Cele eksploracji danych i odkrywania wiedzy
        • 28.1.4. Rodzaje wiedzy odkrywanej w procesie eksploracji danych
      • 28.2. Reguły asocjacyjne
        • 28.2.1. Model koszyka klienta supermarketu, poziom wsparcia i poziom ufności
        • 28.2.2. Algorytm Apriori
        • 28.2.3. Algorytm próbkujący
        • 28.2.4. Drzewa częstych wzorców i algorytm ich tworzenia
        • 28.2.5. Algorytm partycjonujący
        • 28.2.6. Pozostałe typy reguł asocjacyjnych
        • 28.2.7. Dodatkowe problemy związane z regułami asocjacyjnymi
      • 28.3. Klasyfikacja
      • 28.4. Grupowanie
      • 28.5. Strategie rozwiązywania pozostałych problemów związanych z eksploracją danych
        • 28.5.1. Odkrywanie wzorców sekwencyjnych
        • 28.5.2. Odkrywanie wzorców w szeregach czasowych
        • 28.5.3. Regresja
        • 28.5.4. Sieci neuronowe
        • 28.5.5. Algorytmy genetyczne
      • 28.6. Zastosowania technik eksploracji danych
      • 28.7. Komercyjne narzędzia eksploracji danych
        • 28.7.1. Interfejs użytkownika
        • 28.7.2. Interfejs programowy aplikacji
        • 28.7.3. Kierunki przyszłego rozwoju
      • 28.8. Podsumowanie
        • Pytania powtórkowe
        • Ćwiczenia
        • Wybrane publikacje
    • 29. Przegląd hurtowni danych i rozwiązań OLAP
      • 29.1. Wprowadzenie, definicje i terminologia
      • 29.2. Właściwości hurtowni danych
      • 29.3. Modelowanie danych dla hurtowni danych
      • 29.4. Budowanie hurtowni danych
      • 29.5. Typowe funkcje hurtowni danych
      • 29.6. Hurtownie danych kontra perspektywy
      • 29.7. Trudności z implementowaniem hurtowni danych
      • 29.8. Podsumowanie
        • Pytania powtórkowe
        • Wybrane publikacje
    • XII Dodatkowe zagadnienia z obszaru baz danych: bezpieczeństwo
    • 30. Bezpieczeństwo w bazach danych
      • 30.1. Wprowadzenie do bezpieczeństwa baz danych[1]
        • 30.1.1. Rodzaje zabezpieczeń
        • 30.1.2. Środki kontroli
        • 30.1.3. Bezpieczeństwo a administrator bazy danych
        • 30.1.4. Ochrona dostępu, konta użytkowników i audyty bazy danych
        • 30.1.5. Dane wrażliwe i typy ujawnień
        • 30.1.6. Związki między bezpieczeństwem a prywatnością informacji
      • 30.2. Dyspozycyjna kontrola dostępu polegająca na nadawaniu i odbieraniu uprawnień
        • 30.2.1. Typy uprawnień dyspozycyjnych
        • 30.2.2. Określanie uprawnień przy użyciu perspektyw
        • 30.2.3. Cofanie uprawnień
        • 30.2.4. Propagacja uprawnień poprzez opcję GRANT
        • 30.2.5. Przykład
        • 30.2.6. Określanie ograniczeń propagacji uprawnień
      • 30.3. Realizacja zabezpieczeń wielopoziomowych za pomocą obowiązkowej kontroli dostępu i zabezpieczeń opartych na rolach
        • 30.3.1. Porównanie dyspozycyjnego i obowiązkowego modelu bezpieczeństwa
        • 30.3.2. Kontrola dostępu oparta na rolach
        • 30.3.3. Zabezpieczenia oparte na etykietach i kontrola dostępu na poziomie wierszy
        • 30.3.4. Kontrola dostępu dla danych w formacie XML
        • 30.3.5. Polityki kontroli dostępu dla aplikacji sieciowych i mobilnych
      • 30.4. Wstrzykiwanie kodu w języku SQL
        • 30.4.1. Metody wstrzykiwania kodu w języku SQL
        • 30.4.2. Zagrożenia związane ze wstrzykiwaniem kodu w języku SQL
        • 30.4.3. Techniki ochrony przed wstrzykiwaniem kodu w języku SQL
      • 30.5. Wprowadzenie do bezpieczeństwa statystycznych baz danych
      • 30.6. Wprowadzenie do kontroli przepływu
        • 30.6.1. Ukryte kanały
      • 30.7. Szyfrowanie i infrastruktura klucza publicznego
        • 30.7.1. Szyfry DES i AES
        • 30.7.2. Algorytmy z kluczem symetrycznym
        • 30.7.3. Szyfrowanie kluczem publicznym (asymetrycznym)
        • 30.7.4. Podpis cyfrowy
        • 30.7.5. Certyfikaty cyfrowe
      • 30.8. Problemy z prywatnością i jej zachowywanie
      • 30.9. Wyzwania związane z utrzymaniem bezpieczeństwa baz danych
        • 30.9.1. Jakość danych
        • 30.9.2. Prawa własności intelektualnej
        • 30.9.3. Odporność baz danych
      • 30.10. Zabezpieczenia oparte na etykietach w bazach Oracle
        • 30.10.1. Technologia wirtualnych prywatnych baz danych
        • 30.10.2. Architektura zabezpieczeń opartych na etykietach
        • 30.10.3. Współdziałanie etykiet danych i etykiet użytkowników
      • 30.11. Podsumowanie
        • Pytania powtórkowe
        • Ćwiczenia
        • Wybrane publikacje
    • Dodatki
    • Dodatek A Alternatywne notacje modeli związków encji
    • Dodatek B Parametry dysków
    • Dodatek C Omówienie języka QBE
      • C.1. Podstawowe mechanizmy pobierania danych w języku QBE
      • C.2. Grupowanie, agregacje i modyfikacje bazy danych w języku QBE
    • Dodatek D Bibliografia
      • Skróty używane w bibliografii:
      • Format zapisu pozycji w bibliografii
      • Publikacje
powrót
 
Produkty Podobne
Wprowadzenie do systemów baz danych. Wydanie VII
NoSQL, NewSQL i BigData. Bazy danych następnej generacji
PHP i MySQL. Dynamiczne strony WWW. Szybki start. Wydanie V
Przetwarzanie danych w dużej skali. Niezawodność, skalowalność i łatwość konserwacji systemów
SQL Server 2017 Administration Inside Out
SQL Queries for Mere Mortals: A Hands-On Guide to Data Manipulation in SQL, 4th Edition
SQL Queries for Mere Mortals: A Hands-On Guide to Data Manipulation in SQL, 4th Edition
Exam Ref 70-765 Provisioning SQL Databases
Mistrzowski SQL. 61 technik pisania wydajnego kodu SQL
Exam Ref 70-764 Administering a SQL Database Infrastructure
Więcej produktów