ściąga1.docx

(16 KB) Pobierz

Model hierarchiczny

— Model obejmuje dwie struktury danych: 1) typy rekordów 2) związki nadrzędny – podrzędny

— Każdy element zwany rekordem może uczestniczyć w roli podrzędnej w co najwyżej jednym powiązaniu rekordów, w roli nadrzędnej w dowolnej liczbie powiązań

— Rekord podrzędny nie może istnieć bez rekordu nadrzędnego

— Podmiotem operacji jest jeden rekord

Model sieciowy

— Model obejmuje dwie struktury danych:1) typy rekordów 2) typy kolekcji

— Każdy rekord może jednocześnie uczestniczyć w wielu powiązaniach rekordów

— Rekord taki może równocześnie i wielokrotnie wystąpić w roli nadrzędnej oraz w roli podrzędnej,

powiązania realizowane są przez rekordy specjalne zwane łącznikami

— Podmiotem operacji jest jeden rekord

Model obiektowy

— Brak sprecyzowanej definicji obiektowych baz danych

— Model opiera się na takich pojęciach jak: klasa, obiekt, uogólnienie, abstrakcja, dziedziczenie

— Obiekty dysponują metodami

POSTULATY CODDA

1. Postulat informacyjny – dane są reprezentowane jedynie poprzez wartości atrybutów w wierszach tabel,

2. Postulat (gwarantowanego) dostępu – każda wartość w bazie danych jest dostępna poprzez podanie nazwy tabeli, atrybutu oraz wartości klucza podstawowego,

3. Postulat dotyczący wartości NULL  – dostępna jest specjalna wartość NULL dla reprezentacji wartości nieokreślonej jak i nieadekwatnej, inna od wszystkich i podlegająca przetwarzaniu

4. Postulat dotyczący katalogu  – informacje o obiektach bazy danych tworzących schemat bazy danych są na poziomie logicznym zgrupowane w tabele i dostępne w taki sam sposób jak każde inne dane.

5. Postulat języka danych – system musi dostarczać pełnego języka przetwarzania danych, który:

1)charakteryzuje się liniową składnią, 2) może być używany zarówno w trybie interaktywnym, jak i w obrębie programów aplikacyjnych, 3) obsługuje operacje definiowania danych (łącznie z definiowaniem perspektyw), operacje manipulowania danymi (aktualizację, także wyszukiwanie), ograniczenia związane z bezpieczeństwem i integralnością oraz operacje zarządzania transakcjami  (rozpoczynanie, zapis zmian i ponowny przebieg)

6. Postulat modyfikowalności perspektyw – system musi umożliwiać modyfikowanie perspektyw, o ile jest ono semantycznie realizowane,

7. Postulat modyfikowalności danych – system musi umożliwiać operacje modyfikacji danych, musi obsługiwać operatory INSERT, UPDATE oraz DELETE,

8. Postulat fizycznej niezależności danych – zmiany fizycznej reprezentacji danych i organizacji dostępu nie wpływają na aplikacje

9. Postulat logicznej niezależności danych – zmiany wartości w tabelach nie wpływają na aplikacje,

10. Postulat niezależności więzów spójności  (niezależność integralnościowa) – więzy spójności są definiowane w bazie i nie zależą od aplikacji,

11. Postulat niezależności dystrybucyjnej – działanie aplikacji nie zależy od modyfikacji i dystrybucji bazy,

12. Postulat bezpieczeństwa względem operacji niskiego poziomu – operacje niskiego poziomu nie mogą naruszać modelu relacyjnego i więzów spójności.

13. Reguła nieprowadzenia "działalności wywrotowej"- jeśli system jest wyposażony w interfejs niskiego poziomu (operacje na pojedynczych rekordach), nie może być użyty do prowadzenia działalności wywrotowej (np. omijania zabezpieczeń relacyjnych lub ograniczeń integralnościowych)

Pierwsza postać normalna

— Relacja jest w pierwszej postaci normalnej, jeśli każda wartość atrybutu w każdej krotce tej relacji jest wartością elementarną, czyli nierozkładalną.

— Relacja jest w pierwszej postaci normalnej, jeśli nie ma powtarzających się grup

Druga postać normalna-, jeśli jest w 1PN oraz każdy atrybut tej relacji nie wchodzący w skład żadnego klucza potencjalnego jest w pełni funkcyjnie  zależny od wszystkich kluczy potencjalnych tej relacji.

— Relacja jest w 2PN jeżeli każdy atrybut nie wchodzący w skład klucza zależy od klucza a nie od jego części.

— Relacja będąca w pierwszej postaci normalnej, jest równocześnie w drugiej postaci normalnej, jeśli wszystkie jej klucze potencjalne są kluczami prostymi.

Trzecia postać normalna- Dana relacja jest w trzeciej postaci normalnej, jeśli jest ona w drugiej postaci normalnej i każdy jej atrybut nie wchodzący w skład żadnego klucza potencjalnego nie jest przechodnio funkcyjnie zależny od żadnego klucza potencjalnego tej relacji.

Forma normalna Boyce-Codd’a

— Jest uzupełnieniem trzeciej postaci normalnej i jest niezbędna w przypadku gdy atrybuty będące

kandydatami na klucze są:» wielokrotne,» złożone,» nakładające się na siebie

— Relacja jest w postaci Boyce-Codd’a (BCPN) jeżeli dla każdej nietrywialnej zależności między podzbiorami relacji zbiór będący wyznacznikiem jest zbiorem identyfikującym tej relacji

— Zależność X →Y jest trywialna jeżeli Y jest podzbiorem X

— Definicja BCPN zastępuje definicje, pierwszej, drugiej i trzeciej formy normalnej dodatkowo je poszerzając

Czwarta forma normalna

— Relacja jest w czwartej formie normalnej (IV PN) wtedy i tylko wtedy, gdy jest w trzeciej postaci normalnej i nie zawiera nietrywialnej wielowartościowej zależności atrybutów

Piąta postać normalna

— Relacja jest w piątej formie normalnej (V PN) wtedy i tylko wtedy, gdy jest w czwartej postaci normalnej i nie istnieje jej rozkład odwracalny na zbiór mniejszych tabel

Iloczyn kartezjański:

— (inaczej produkt) relacji R i S to relacja wszystkich uporządkowanych par krotek, z których pierwszy element pary należy do relacji R a drugi do S

— Schemat relacji RxS jest sumą schematów relacji R i S, w której powtarzające się atrybuty (kolumny) traktowane są jako odrębne elementy schematu, np. R.A i S.A

Złączenie naturalne: polega na połączeniu w pary tych krotek z relacji R i S, które mają identyczne wartości dla wszystkich wspólnych atrybutów i jest oznaczane R|><| S

— w rezultacie powstaje relacja, której schemat zawiera atrybuty relacji R i relacji S, przy czym wspólna część uwzględniana jest tylko raz

złączenie wewnętrzne (inner join) – w relacji wynikowej występują wyłącznie te krotki, które spełniają warunek złączenia

złączenie lewostronne zewnętrzne (left outer join) – zawiera wszystkie krotki R uzupełnione krotkami S spełniającymi warunek

złączenie prawostronne zewnętrzne (right outer join) - zawiera wszystkie krotki S uzupełnione krotkami R spełniającymi warunek

złączenie zewnętrzne pełne (full outer join) – zawiera wszystkie krotki R oraz S uzupełnione wartościami typu NULL gdy do danej krotki nie pasuje żadna krotka z drugiej relacji

złączenie zewnętrzne typu union - zawiera wszystkie krotki R nie pasujące do żadnej krotki S uzupełnione krotkami S nie pasującymi do żadnej krotki R

Złączenie teta

—polega na złączeniu dwóch relacji R i S w iloczyn kartezjański i wyborze z niego tych krotek, które spełniają wyrażenie warunkowe na parze lub zbiorze par atrybutów z R i S i jest oznaczane symbolem R |><|Θ R  lub R |><|c S, gdzie Θlub C to wyrażenia logiczne

Równozłączenie

—to szczególny przypadek złączenia teta, w którym warunek ma charakter równości

wybranych atrybutów obu relacji

—powtarzające się kolumny opisujące atrybuty z warunku złączenia są pomijane

Jądro SZBD

— Menedżer plików

Menedżer plików systemu operacyjnego jest tłumaczem między strukturami danych, na których działa DBMS, a plikami na dysku. W celu wykonania tego zadania tworzy on zapis fizycznych struktur na dysku

— Mechanizmy dostępu

Menedżer plików nie zarządza bezpośrednio fizycznym wejściem i wyjściem danych. Współdziała on z odpowiednimi mechanizmami dostępu określonymi dla różnych struktur fizycznych

— Bufory systemu

Odczyt i zapis danych jest zwykle prowadzony przez bufory systemu operacyjnego. Są to tymczasowe struktury służące przechowywaniu danych i wykonywaniu na nich operacji

— Baza danych i katalog systemowy

przechowują dane i metadane aplikacji.

— System operacyjny

Dostęp do urządzeń dyskowych jest kontrolowany głównie przez system operacyjny gospodarza, który szereguje dyskowe operacje we-wy.

— Menedżer bazy danych

kontroluje dostęp do informacji DBMS przechowywanej na dysku. Wszystkie operacje dostępu do informacji w bazie danych są wykonywane pod jego kontrolą. Menedżer danych używa funkcji zarządzania danymi niższego poziomu, dostarczonymi przez system operacyjny gospodarza w jego systemie zarządzania plikami lub używa swoich własnych podprogramów. Takie funkcje będą realizować przesyłanie danych między pamięcią główną a dyskiem.

— Kompilator DDL

Kompilator języka definicji danych DDL bierze instrukcje wyrażone w DDL i uaktualnia katalog systemowy. Wszystkie moduły DBMS, które potrzebują informacji na temat obiektów bazy danych, muszą mieć dostęp do katalogu

— Procesor czasu wykonywania

obsługuje operacje wyszukiwania i modyfikowania, wyrażone względem bazy danych. Dostęp do dysku jest realizowany przez menedżera danych,

— Procesor zapytań

obsługuje interaktywne zapytania, wyrażone w języku operowania danymi (DML) takim jak SQL. Dokonuje on analizy składniowej i semantycznej zapytania, po czym przystępuje do generowania wywołań procesora czasu wykonywania.

— Prekompilator, kompilator DML, kompilator języka gospodarza

Prekompilator wycina polecenia DML z programu użytkowego napisanego w języku gospodarza. Polecenia te są następnie przekazywane do kompilatora DML, który tworzy kod wynikowy realizujący dostęp do bazy danych. Pozostałe części programu użytkowego są wysyłane do konwencjonalnego kompilatora i następnie te dwie części są wiązane razem, tworząc transakcję, która może być wykonana na bazie danych

Reguły ACID- ACID to mnemonik służący do opisania transakcji, jaka powinna być:» Niepodzielna (Atomic)» Spójna (Consistent)» Odizolowana (Isolated)» Trwała (Durable)

Wyzwalacze Triggery w SQL 99

— wyzwalacz (ang. trigger) jest specjalnym rodzajem składowanej procedury, która jest uruchamiana automatycznie podczas wykonywania instrukcji modyfikacji danych

— wyzwalacz jest powiązany z konkretną instrukcją modyfikacji danych (INSERT, UPDATE, DELETE)

— wyzwalacz jest uruchamiany przed modyfikacją, po lub zamiast modyfikacji

Zgłoś jeśli naruszono regulamin