1
|
|
2
|
|
3
|
- Wymagania
- spójność bazy danych po awarii
- trwałość danych
- wielodostęp
- poufność danych
- wydajność
- rozproszenie danych
|
4
|
|
5
|
- Transakcja
- Jest sekwencją logicznie
powiązanych operacji na bazie danych, która przeprowadza bazę danych z
jednego stanu spójnego w inny stan spójny. Systemy bazy danych
umożliwiają łączenie operacji w transakcje i gwarantują poprawne
zarządzanie transakcjami.
- Transakcja przelewu kwoty N z konta A na konto B:
- BEGIN.
- // Odejmij kwotę N z konta A;
- UPDATE konta.
- SET stan = stan - N.
- WHERE id_konta = A;
- // Dodaj do konta B kwotę N;
- UPDATE konta.
- SET stan = stan + N.
- WHERE id_konta = B;
- COMMIT;
- END.
|
6
|
- Definicja
- Baza danych jest spójna jeżeli jej stan jest zgodny ze stanem
reprezentowanego przez nią fragmentu świata rzeczywistego.
- Baza danych jest spójna jeżeli są w niej spełnione wszystkie
ograniczenia referencyjne i integralnościowe.
- Zagrożenia spójności bazy danych
- awarie sprzętu komputerowego i oprogramowania
- utrata danych w wyniku uszkodzenia pamięci masowej
- użytkownicy
- współbieżny dostęp do danych
|
7
|
- Atomowość
- zbiór operacji wchodzących w skład transakcji jest niepodzielny; albo
zostaną wykonane wszystkie operacje transakcji, albo żadna.
- Spójność
- poprawne wykonanie transakcji przeprowadza bazę danych z jednego stanu
spójnego do innego stanu spójnego.
- Izolacja
- transakcje są od siebie logicznie odseparowane. Mogą wzajemnie
oddziaływać na siebie w taki sposób jak gdyby były wykonywane
sekwencyjnie.
- Trwałość
- wyniki zatwierdzonych transakcji nie mogą zostać utracone, niezależnie
od awarii systemu.
|
8
|
- Historia
- Podstawy teoretyczne:
- E.Codd: „A Relational Model for Large Shared Data Banks”, rok 1970
- Projekty badawcze (lata siedemdziesiąte):
- IBM System R, SEQUEL (1978)
- Berkley Ingres
- Produkty komercyjne (lata osiemdziesiąte):
- Oracle (1979), Ingres (1979), DB2 (1982), Sybase, Informix, SQL Server
- Paradox, dBase
- Postgres, MySQL
- Standard:
|
9
|
|
10
|
|
11
|
- Własności relacji
- W relacji nie ma żadnych powtarzających się krotek
- W relacji nie ma atrybutów o powtarzających się nazwach
- Kolejność krotek w relacji jest całkowicie nieokreślona
- Wartościami atrybutów są dane atomowe
- Krotki są identyfikowane tylko i wyłącznie na podstawie wartości
atrybutów, lokalizacja krotki nie ma żadnego wpływu na tożsamość krotki
- Własności bazy danych
- Widziana jako zbiór relacji
- Nazwy relacji nie mogą się powtarzać
- Operatory: selekcja, projekcja, iloczyn kartezjański, połączenie, suma,
przecięcie, różnica
- Dane nie są powiązane za pomocą żadnych wskaźników, powiązania między
danymi tylko przez porównywanie wartości atrybutów
- Nieproceduralny język komunikowania się z bazą danych
- Użytkownik nie określa sposobu dostępu do danych i nie zna ich
fizycznej organizacji
|
12
|
|