Wprowadzenie do systemów baz danych. Wydanie VII
- Autorzy:
- Ramez Elmasri, Shamkant B. Navathe
- Wydawnictwo:
- Helion
- Wydawnictwo:
- Helion
- Ocena:
- 6.0/6 Opinie: 1
- Stron:
- 1344
- Druk:
- oprawa twarda
- Dostępne formaty:
-
PDFePubMobi
Opis ebooka: Wprowadzenie do systemów baz danych. Wydanie VII
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!
Wybrane bestsellery
-
W dynamicznie zmieniającym się świecie biznesu automatyzacja procesów staje się kluczowym elementem sukcesu każdej organizacji. Technologia RPA (ang. robotic process automation) w połączeniu z zarządzaniem projektami i inżynierią oprogramowania tworzy nowy standard w zarządzaniu zasobami i operac...(49.05 zł najniższa cena z 30 dni)
76.30 zł
109.00 zł(-30%) -
Jeśli w swojej pracy masz lub miewasz do czynienia z danymi, z pewnością orientujesz się, że do tego celu stworzono dotąd całkiem sporo narzędzi. Nic dziwnego – przy tej liczbie danych, z jaką spotykamy się w dzisiejszym cyfrowym świecie, zdolność do ich sprawnego analizowania i wyciągania ...(62.55 zł najniższa cena z 30 dni)
83.39 zł
139.00 zł(-40%) -
Oto zwięzłe i równocześnie praktyczne kompendium, w którym znajdziesz 20 praktyk udanego planowania, analizy, specyfikacji, walidacji i zarządzania wymaganiami. Praktyki te są odpowiednie dla projektów zarządzanych zarówno w tradycyjny, jak i zwinny sposób, niezależnie od branży. Sprawią, że zesp...(40.20 zł najniższa cena z 30 dni)
40.20 zł
67.00 zł(-40%) -
Dzięki tej książce nauczysz się przekształcać suche dane liczbowe w pełną empatii narrację! Aby spełniły one swoje zadanie, ktoś musi przedstawić zawarte w nich informacje w postaci opowieści. W tej publikacji wyczerpująco i praktycznie opisano przebieg tego procesu. Jej lektura sprawi, że rozwin...(20.90 zł najniższa cena z 30 dni)
20.90 zł
67.00 zł(-69%) -
Ten praktyczny przewodnik po narzędziu Power Query nauczy Cię efektywnie przetwarzać dane w Excelu: importować, oczyszczać, przekształcać i wydobywać potrzebne informacje. Dowiesz się, jak sprawnie wykonywać typowe zadania i prace analityczne, jak zwiększyć swoją skuteczność dzięki opanowaniu pod...(53.40 zł najniższa cena z 30 dni)
53.40 zł
89.00 zł(-40%)
O autorach ebooka
Ramez Elmasri jest profesorem na Uniwersytecie Teksańskim. Posiada znaczący dorobek naukowy w dziedzinie baz danych, a jego książki stały się standardowymi podręcznikami na wielu uczelniach świata. Wypromował kilkunastu doktorów i ponad dwustu magistrów.
Shamkant Navathe jest profesorem w Instytucie Technologii w Georgii. Zajęcia dydaktyczne z wiedzy o bazach danych prowadzi od 1975 roku. Interesuje się również bioinformatyką. Ponadto jest niezależnym konsultantem, doradzającym wielu znaczącym przedsiębiorstwom.
Ebooka "Wprowadzenie do systemów baz danych. Wydanie VII" przeczytasz na:
-
czytnikach Inkbook, Kindle, Pocketbook, Onyx Boox i innych
-
systemach Windows, MacOS i innych
-
systemach Windows, Android, iOS, HarmonyOS
-
na dowolnych urządzeniach i aplikacjach obsługujących formaty: PDF, EPub, Mobi
Masz pytania? Zajrzyj do zakładki Pomoc »
Audiobooka "Wprowadzenie do systemów baz danych. Wydanie VII" posłuchasz:
-
w aplikacji Ebookpoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych
-
na dowolnych urządzeniach i aplikacjach obsługujących format MP3 (pliki spakowane w ZIP)
Masz pytania? Zajrzyj do zakładki Pomoc »
Kurs Video "Wprowadzenie do systemów baz danych. Wydanie VII" zobaczysz:
-
w aplikacjach Ebookpoint i Videopoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych z dostępem do najnowszej wersji Twojej przeglądarki internetowej
Szczegóły ebooka
- Tytuł oryginału:
- Fundamentals of Database Systems (7th Edition)
- Tłumaczenie:
- Radosław Lesisz, Tomasz Walczak
- ISBN Książki drukowanej:
- 978-83-283-4695-6, 9788328346956
- Data wydania książki drukowanej:
- 2019-02-19
- ISBN Ebooka:
- 978-83-283-4696-3, 9788328346963
- Data wydania ebooka:
- 2019-02-19 Data wydania ebooka często jest dniem wprowadzenia tytułu do sprzedaży i może nie być równoznaczna z datą wydania książki papierowej. Dodatkowe informacje możesz znaleźć w darmowym fragmencie. Jeśli masz wątpliwości skontaktuj się z nami sklep@ebookpoint.pl.
- Format:
- 164x239
- Numer z katalogu:
- 81757
- Rozmiar pliku Pdf:
- 24.0MB
- Rozmiar pliku ePub:
- 14.1MB
- Rozmiar pliku Mobi:
- 38.5MB
- Pobierz przykładowy rozdział PDF
Spis treści ebooka
- 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.1. Modele danych, schematy i egzemplarze
- 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.1. Pojęcia z 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.1. Definicje danych i typy danych języka 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.1. Bardziej skomplikowane zapytania języka SQL pobierające dane
- 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.1. Relacyjne operacje unarne: selekcja i projekcja
- 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.1. Projektowanie relacyjnych baz danych w oparciu o odwzorowywanie modelu ER w model relacyjny
- 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.1. Przegląd technik i zagadnień z obszaru programowania 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.1. Przegląd pojęć obiektowych
- 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.1. Nieformalne wskazówki dotyczące projektowania schematów relacji
- 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.1. Inne zagadnienia z obszaru zależności funkcyjnych: reguły wnioskowania, równoważności i pokrycie minimalne
- 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.1. Wprowadzenie
- 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.1. Rodzaje jednopoziomowych indeksów uporządkowanych
- 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.1. Translacja zapytań języka SQL do postaci wyrażeń algebry relacji i innych operacji
- 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.1. Drzewa zapytań i heurystyki optymalizacji 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.1. Wprowadzenie do problematyki przetwarzania transakcji
- 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.1. Techniki blokowania dwufazowego dla celów sterowania współbieżnego
- 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.1. Pojęcia związane z odtwarzaniem
- 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.1. Zagadnienia z obszaru 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.1. Wprowadzenie do 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.1. Wyzwalacze i inne pojęcia związane z aktywnymi bazami danych
- 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.1. Zagadnienia z obszaru wyszukiwania informacji (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.1. Przegląd technologii 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.1. Wprowadzenie do bezpieczeństwa baz danych[1]
- 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
Helion - inne książki
-
Oto drugie wydanie książki, którą specjaliści CISO uznali za przełomową. Dowiesz się z niej, jak kwantyfikować niepewność i jak za pomocą prostych metod i narzędzi poprawić ocenę ryzyka w nowoczesnych organizacjach. Znalazły się tu nowe techniki modelowania, pomiaru i szacowania, a także mnóstwo ...(60.90 zł najniższa cena z 30 dni)
52.20 zł
87.00 zł(-40%) -
W tej książce omówiono wewnętrzny sposób działania frameworka Kubernetes i pokazano, jak za jego pomocą budować wydajne, niezawodne i odporne na awarie aplikacje natywnej chmury. Dowiesz się, jak kontenery używają przestrzeni nazw w celu izolowania procesów, a także jak korzystają z funkcjonalnoś...(62.30 zł najniższa cena z 30 dni)
53.40 zł
89.00 zł(-40%) -
Jeśli zastanawiasz się nad przekwalifikowaniem i karierą w branży informatycznej albo chcesz poszerzyć swoje umiejętności o programowanie, ale wydaje Ci się ono czarną magią, zapewniamy - w programowaniu nie ma nic z magii. To proces polegający na tworzeniu zbioru instrukcji, dzięki którym komput...(27.93 zł najniższa cena z 30 dni)
23.94 zł
39.90 zł(-40%) -
Ta zwięzła publikacja przyda się profesjonalistom, którzy lubią drobne ulepszenia prowadzące do dużych korzyści. Zrozumiale wyjaśniono w niej, na czym polega proces tworzenia czystego i niezawodnego kodu. W rozsądnej dawce podano zagadnienia teoretyczne, takie jak sprzężenie, kohezja, zdyskontowa...(34.93 zł najniższa cena z 30 dni)
29.94 zł
49.90 zł(-40%) -
Komputery firmy Apple to swojego rodzaju legenda - dla niektórych wybór oczywisty i właściwie jedyny, dla innych zwykła moda nakręcająca popularność, dla części tajemnica. Czy warto ją poznać i przesiąść się z komputera pracującego pod Windowsem lub Linuksem na Macintosha z macOS? Warto, warto, p...(53.40 zł najniższa cena z 30 dni)
53.40 zł
89.00 zł(-40%) -
Dzięki tej książce dowiesz się, jak pozyskiwać, analizować i wizualizować dane, a potem używać ich do rozwiązywania problemów biznesowych. Wystarczy, że znasz podstawy Pythona i matematyki na poziomie liceum, aby zacząć stosować naukę o danych w codziennej pracy. Znajdziesz tu szereg praktycznych...(41.40 zł najniższa cena z 30 dni)
41.40 zł
69.00 zł(-40%) -
Dzięki tej świetnie napisanej, miejscami przezabawnej książce dowiesz się, na czym naprawdę polega testowanie granic bezpieczeństwa fizycznego. To fascynująca relacja o sposobach wynajdywania niedoskonałości zabezpieczeń, stosowania socjotechnik i wykorzystywania słabych stron ludzkiej natury. Wy...(35.40 zł najniższa cena z 30 dni)
35.40 zł
59.00 zł(-40%) -
Książka Java. Teoria w praktyce została pomyślana tak, by krok po kroku przybliżać specyfikę tego języka programowania. Zaczniesz od podstaw - poznasz między innymi główne założenia, zgodnie z którymi działa Java: maszynę wirtualną, zmienne, operatory, instrukcje sterujące i tablice - by następni...(65.40 zł najniższa cena z 30 dni)
65.40 zł
109.00 zł(-40%) -
Ta książka zawiera szereg praktycznych wskazówek dotyczących przygotowania, przeprowadzania i oceniania wyników kontrolowanych eksperymentów online. Dzięki niej nauczysz się stosować naukowe podejście do formułowania założeń i oceny hipotez w testach A/B, dowiesz się także, jak sprawdzać wiarygod...(47.40 zł najniższa cena z 30 dni)
47.40 zł
79.00 zł(-40%) -
Współpraca z ChatGPT wymaga pewnego przygotowania. Niewątpliwą zaletą tej technologii jest to, że można się z nią porozumieć za pomocą języka naturalnego ― takiego, jakim komunikujemy się ze sobą na co dzień. Rzecz w tym, by nauczyć się w odpowiedni sposób zadawać pytania i wydawać poleceni...(29.94 zł najniższa cena z 30 dni)
29.94 zł
49.90 zł(-40%)
Dzieki opcji "Druk na żądanie" do sprzedaży wracają tytuły Grupy Helion, które cieszyły sie dużym zainteresowaniem, a których nakład został wyprzedany.
Dla naszych Czytelników wydrukowaliśmy dodatkową pulę egzemplarzy w technice druku cyfrowego.
Co powinieneś wiedzieć o usłudze "Druk na żądanie":
- usługa obejmuje tylko widoczną poniżej listę tytułów, którą na bieżąco aktualizujemy;
- cena książki może być wyższa od początkowej ceny detalicznej, co jest spowodowane kosztami druku cyfrowego (wyższymi niż koszty tradycyjnego druku offsetowego). Obowiązująca cena jest zawsze podawana na stronie WWW książki;
- zawartość książki wraz z dodatkami (płyta CD, DVD) odpowiada jej pierwotnemu wydaniu i jest w pełni komplementarna;
- usługa nie obejmuje książek w kolorze.
Masz pytanie o konkretny tytuł? Napisz do nas: sklep[at]helion.pl.
Książka, którą chcesz zamówić pochodzi z końcówki nakładu. Oznacza to, że mogą się pojawić drobne defekty (otarcia, rysy, zagięcia).
Co powinieneś wiedzieć o usłudze "Końcówka nakładu":
- usługa obejmuje tylko książki oznaczone tagiem "Końcówka nakładu";
- wady o których mowa powyżej nie podlegają reklamacji;
Masz pytanie o konkretny tytuł? Napisz do nas: sklep[at]helion.pl.
Książka drukowana
Oceny i opinie klientów: Wprowadzenie do systemów baz danych. Wydanie VII Ramez Elmasri, Shamkant B. Navathe (1) Weryfikacja opinii następuję na podstawie historii zamówień na koncie Użytkownika umieszczającego opinię. Użytkownik mógł otrzymać punkty za opublikowanie opinii uprawniające do uzyskania rabatu w ramach Programu Punktowego.
(1)
(0)
(0)
(0)
(0)
(0)