Model relacyjny - modele baz danych - wojo77

advertisement
Model relacyjny.doc
(47 KB) Pobierz
Relacyjny model baz danych został wymyślony przez E.F. Codda na przełomie lat 70. i 80.
zeszłego stulecia. Standard RDBMS został ostatecznie opracowany przez ANSI X3H2. Dane w
takim modelu przechowywane są w tabelach, z których każda ma stałą liczbę kolumn i dowolną
liczbę wierszy. Każda tabela (relacja) ma zdefiniowany klucz danych (key) - wyróżniony atrybut
lub kilka takich atrybutów, którego wartość jednoznacznie identyfikuje dany wiersz.
Wyszukiwanie danych odbywa się za pomocą odwołania się programu do danego klucza i
identyfikacji danego wiersza za pomocą tegoż.
Model relacyjny – model baz danych oparty na postulatach relacyjności.
Dane w modelu relacyjnym są reprezentowane jako zbiór krotek, które w znormalizowanych
bazach danych są unikatowe i nie gra roli ich kolejność. Dostęp do nich jest realizowany za
pomocą algebry relacji - czyli dostęp do danych definiujemy poprzez operatory relacyjne takie
jak: rzutowanie, selekcja, złączenie, suma, różnica, produkt kartezjański . Ograniczenie
redundancji danych dokonuje się w procesie przejścia do kolejnych postaci normalnych. Zbiory
danych powiązane są logicznie za pomocą encji. W ten sposób uniezależnia się widziany przez
użytkownika obraz bazy danych od jej postaci fizycznej.
Model relacyjny składa się z trzech podstawowych elementów: struktury, integralności i
manipulacji. Struktura (znana najczęściej w postaci tabeli) jest formą prezentacji relacji, która
jest zdefiniowana w oparciu o typy (dziedziny). Typ jest nazwanym i skończonym zbiorem
wartości, do którego mogą należeć wartości atrybutów (kolumn) w relacjach. Integralność to
ograniczenie nakładane na bazę danych przez model relacyjny. Dwie podstawowe reguły
integralności to integralność encji (wartość klucza głównego nie może być NULL) oraz
integralność odwołań (nie mogą istnieć niedopasowane wartości klucza obcego).
Na elementy manipulacyjne modelu składają się: zbiór operatorów relacyjnych zwany algebrą
relacyjną oraz relacyjny operator przypisania, pozwalający na przypisanie relacji wyniku
powstałego z wyrażenia relacyjnego opartego na algebrze relacyjnej.
Model relacyjny obsługuje różne typy kluczy. Każda relacja (tabela) posiada przynajmniej jeden
klucz kandydujący. Klucz ten jest unikatowym identyfikatorem relacji i może być kombinacją
atrybutów, często jednak obejmuje jeden atrybut (kolumnę). Klucz ma za zadanie jednoznacznie
identyfikować każdą krotkę (wiersz). Klucz kandydujący jest zawsze kombinacją lub zbiorem
atrybutów (kolumn) nawet, gdy zbiór składa się tylko z jednego atrybutu.
Specjalnym rodzajem klucza kandydującego jest klucz główny. Jeśli relacja (tabela) posiada
jeden klucz kandydujący to staje się on automatycznie kluczem głównym. Gdy kluczy
kandydujących jest więcej należy określić, który z nich będzie kluczem głównym.
Z punktu widzenia modelu relacyjnego to klucze kandydujące, a nie główne mają prawdziwe
znaczenie. Klucz obcy jest zbiorem atrybutów jednej relacji (tabeli) i wskazuje wartości klucza
kandydującego innej lub tej samej relacji (tabeli).
W modelu relacyjnym każda relacja (prezentowana w postaci np. tabeli) posiada nagłówek i
zawartość. Nagłówek relacji to zbiór atrybutów, gdzie atrybut jest parą
nazwa_atrybutu:nazwa_typu, zawartość natomiast jest zbiorem krotek (reprezentowanych
najczęściej w postaci wiersza lecz ściślej określane jako zbiór wartości atrybutów). W związku z
tym, że nagłówek jest zbiorem atrybutów nie jest ważna ich kolejność (dla porównania w
standardzie SQL kolejność podawania nazw kolumn jest brana pod uwagę). Zgodnie z modelem
relacyjnym każda krotka musi posiadać wartość odpowiedniego typu określanego przez atrybut z
nagłówka relacji, dlatego też model relacyjny w swojej pierwotnej formie nie akceptował
wartości typu NULL wykorzystywanych powszechnie w relacyjnych bazach danych - F. Codd
wprowadził do modelu wartości NULL w 1979 roku. Przedstawienie relacji w postaci tabeli jest
jedynie pewną reprezentacją graficzną, z punktu widzenia modelu relację można również
przedstawić w postaci zbioru punktów w przestrzeni n-wymiarowej, gdzie punkt reprezentuje
krotkę w relacji składającej się z n atrybutów.
Liczba kolumn określa stopień relacji. Relacja pierwszego stopnia jest relacją unarną. Relacja
drugiego stopnia jest relacją binarną.
Na modelu relacyjnym oparta jest relacyjna baza danych (RDBMS ang. Relational Database
Management Systems) - baza danych, w której dane są przedstawione w postaci relacyjnej.
Relacja reprezentowana jest przez tablicę (tablica=relacja, stąd nazwa) a tablice są pewnym
zbiorem rekordów o identycznej strukturze i wewnętrznie powiązanych za pomocą związków
zachodzących pomiędzy danymi. Powoduje to ułatwienie zarządzania bazą danych w stosunku
do tradycyjnego podejścia, gdzie dane są przechowywane w postaci strumienia. Takie podejście
ułatwia wprowadzania zmian, zmniejszenie możliwość pomyłek, ale dzieje się to kosztem
wydajności. Tradycyjną, nierelacyjną bazą danych jest BerkeleyDB.
Większość współczesnych relacyjnych baz danych korzysta z jakiejś wersji języka SQL
pozwalającego wprowadzać zmiany w strukturze bazy danych, jak również zmiany danych w
bazie i wybieranie informacji z bazy danych. Język ten opiera się na silniku bazy danych, który
pozwala zadawać w języku SQL pewnego rodzaju pytania (kwerendy) i wyświetlać dane, które
spełniają warunki zapytania. Zapytania SQL mogą także wykonywać operacje wstawiania
danych, usuwania danych i ich aktualizacji. Język SQL zapewnia również zarządzanie bazą
danych. Informacja o samej bazie przechowywana jest w postaci relacji (tabel) wewnątrz bazy
danych.
Sukces relacyjnych baz danych leży w istnieniu formalnej matematycznej struktury zwanej
rachunkiem relacyjnym, pozwalającym przeprowadzić automatyczne sprawdzanie pewnych
konstrukcji. Gwarantuje to wykonalność pewnych operacji i spójność zbiorów danych.
Problemy modelu relacyjnego [edytuj]
Konwencjonalne, relacyjne bazy danych są projektowane przy założeniu aktywnej postawy
użytkownika. Użytkownik wprowadza i otrzymuje na żądanie informacje ze zbioru danych.
Tego typu podejście określono jako oparte na koncepcji pasywnej bazy danych (HADP) (ang.
Human Active Database Passive). Niestety, istnieje szereg zjawisk, których praktyczna
realizacja przy pomocy tej koncepcji prezentacji danych jest znacząco utrudniona. Próbując
zastosować model uniwersalny napotkamy problemy dopiero w trakcie wdrożenia lub
pierwszego uruchomienia systemu. Jest to spowodowane uwzględnieniem przez projektanta
wartości średnich bez uwzględnienia ciągłego i nieograniczonego w czasie, a czasem
lawinowego napływu danych.
Różnice pomiędzy systemem relacyjnym i strumieniowym [edytuj]
Można wskazać kilka podstawowych różnic pomiędzy systemami relacyjnymi i strumieniowymi.
Poniżej zamieszczono te cechy funkcjonalne systemów, które są spotykane jedynie w systemach
strumieniowych.

implementacja ciągłych zapytań w systemie zarządzania danymi (nie w aplikacji)
moduł rejestracji danych umieszczony w systemie zarządzania danymi (wbudowany)


język zapytań oparty o zmodyfikowaną/rozszerzoną/alternatywną algebrę opisującą
operacje na strumieniach danych
Plik z chomika:
wojo77
Inne pliki z tego folderu:

Model relacyjny.doc (47 KB)
Obiektowa baza danych to zbiór obiektów.doc (35 KB)
 Strumieniowa baza danych.doc (38 KB)

Inne foldery tego chomika:
access 2000 - księga eksperta [ PL ]
bazy danych - robeart chwastek [ PL ]
bazy danych w architekturze klient - serwer [ PL ]
 bazy sql - referat [ PL ]
 nowe dokumenty



Zgłoś jeśli naruszono regulamin





Strona główna
Aktualności
Kontakt
Dział Pomocy
Opinie


Regulamin serwisu
Polityka prywatności
Copyright © 2012 Chomikuj.pl
Download