BDII Opracowania egzamin, Bazy danych II


  1. Cechy i właściwości baz danych

Baza danych - uporządkowany zbiór powiązanych danych, do których może mieć dostęp równocześnie wielu użytkowników, jest abstrakcyjnym, informatycznym modelem wybranego fragmentu rzeczywistości, bd składa się z: danych (uporządkowanych w sposób zrozumiały dla użytkownika) i systemu zarządzania bd (program umożliwiający dostęp i operacje na bd)

System bazy danych = BD + SZBD, zestaw programów umożliwiających tworzenie i eksploatację bd

Hurtownia danych - ogromne zasoby informacji przechowywane w kilkudziesięciu systemach informatycznych, używane przez duże firmy (np. sieć supermarketów), uporządkowane tematycznie, ujednolicony system kodowania, zawierający wymiar czasowy (dane dostępne zawsze choćby były stare), ma wspomagać przetwarzanie informacji dla celów statystycznych i analitycznych,

Baza danych powinna zapewniać:

  1. Scenariusze powstawania baz danych

Tworzenie bazy danych jest procesem modelowania. Rozpoczyna się od zebrania wymagań jakie ma spełniać bd (analiza). Następnie jest to proces kolejnych transformacji poprzez trzy poziomy modelowania: koncepcyjny (udokumentowanie zidentyfikowanych wymagań - model świata rzeczywistego), logiczny (schemat relacyjny), fizyczny (z użyciem konkretnego SZBD, uwzględnienie wymagań aplikacji co do wydajności i pamięci). Na końcu schemat można poddać normalizacji.

  1. Model danych jako architektura

Model danych - zbiór zasad posługiwania się danymi

  1. Algebra relacji - kategorie operacji

Algebra relacji to zbiór operatorów, które biorą jako argument 1 lub kilka relacji i produkują relację jako wynik.

Operacje można podzielić na cztery kategorie:

selekcja - operacja jednoargumentowa, określona przez warunek dotyczący wartości kolumny danej relacji, wynikiem jest relacja zawierająca te wszystkie wiersze, które spełniały warunek

rzut - operacja jednoargumentowa określona przez podzbiór zbioru kolumn danej relacji, dająca w wyniku tabelę składającą się z tych kolumn

iloczyn kartezjański - argumentami są dwie relacje, wynikiem relacja której wiersze są zbudowane ze wszystkich kombinacji wierszy relacji wyjściowych

równozłączenie - argumentami są dwie relacje, posiadające kolumny to tych samych dziedzinach, np. klucz główny jednej i klucz obcy w drugiej, wynikiem jest tabela otrzymana z iloczynu kartezjańskiego poprzez selekcje za pomocą warunku równości tych wspólnych atrybutów

złączenie naturalne - powstaje z równozłączenia dwóch poprzez rzutowanie usuwające powtarzające się kolumny złączenia

złączenie zewnętrzne (lewostronne, prawostronne, obustronne)

  1. Model relacyjny bazy danych

Relacyjny model danych - relacje:

  1. Cechy modelu relacyjnego

Zalety:

Wady:

Stosowanie:

  1. Normalizacja - zależności funkcyjne i wielowartościowe

Normalizacja - proces tworzenia tabel i powiązań między nimi zgodnie z określonym zbiorem reguł (pola powinny być atomowe - nie mogą być już dalej podzielone, wszystkie pola muszą odwoływać się do pola klucza podstawowego lub obcego, pola jednej tabeli muszą być niezależne względem siebie), proces przekształcania projektu bd przez postacie normalne, proces tworzenia schematu który nie podlega anomaliom

Postać normalna - stanowi sposób klasyfikowania tabel w oparciu o występujące w nich zależności funkcyjne

Zależność funkcyjna - oznacza, że znając jeden atrybut, zawsze możemy określić wartość drugiego

Zależność wielowartościowa - oznacza, że znając wartość jednego atrybutu, możemy określić wartość zbioru innego atrybutu

1NF - każdy atrybut niekluczowy jest funkcyjnie zależny od klucza głównego, każde pole jest atomowe

2NF - relacja jest w 1NF i każdy atrybut niekluczowy jest w pełni funkcyjnie zależny od klucza głównego (dla tabel z kluczami złożonymi stawiamy pytanie czy element niekluczowy jest jednoznacznie identyfikowany przez część klucza złożonego)

3NF - relacja jest w 2NF i każdy niekluczowy atrybut jest pośrednio zależny od klucza głównego, usuwamy tzw. zależności przechodni między danymi (dla każdej pary niekluczowych elementów zadajemy pytanie czy wartości obu pól zależą od siebie, jeżeli tak to przenosimy powiązane elementy do oddzielnej tabeli)

4NF - niedozwolone niektóre relacje między kluczem podstawowym a polami niekluczowymi

5NF - postać normalna złączenie-rzut, tabela jest w takiej postaci jeżeli nie występują anomalia złączenia-rzutu, brak redundancji

Postać normalna Boyce'a-Codda - występuje gdy dla wszystkich XY, X jest kluczem

Anomalia wynikające z nieprawidłowego zaprojektowania tabeli:

Denormalizacja - stosuje się czasami aby zwiększyć wydajność aplikacji, powoduje to że nie będą wymuszone wszystkie nałożone ograniczenia - dlatego konieczne jest pisanie dodatkowych linii kodu, normalizacja redukuje więc nakład pracy związanej z oprogramowaniem bazy

  1. Proces projektowania baz danych (diagramy związków encji, język ODL)

JĘZYK ODL

Deklaracja w języku ODL zawiera: słowo interface, nazwę interfejsu (tzn. klasy), listę właściwości klasy otoczonej nawiasami klamrowymi; właściwościami mogą być atrybuty, związki i metody

DIAGRAMY ENCJI - metoda „z góry na dół” analizy danych, celem jej jest podzielenie zbioru danych na logiczne grupy

Diagramy encji służą do:

Zalety diagramów:

  1. Język SQL

SQL (Structured Query Language) był początkowo projektowany jako język zapytań. Obecnie stał się standardowym interfejsem dla relacyjnych i nierelacyjnych baz danych. SQL1 - 1987, SQL89 - ulepszone cechy integralności (klucze), SQL2 - schematy SCHEMA, dziedziny DOMAIN, asercje ASSERTION, SQL3 - triggery, wprowadzenie obiektowości

Instrukcje SQL można pogrupować w 4 grupy:

SQL może być używany jako:

Operatory w SQL:

  1. Transakcje - problem współbieżności, rozwiązywanie problemów

Transakcje - operacje które powodują zmianę stanu bazy danych lub wyszukują dane w bazie, transakcja jest sekwencją logicznie powiązanych operacji na bazie danych, jeżeli baza jest współużytkowana przez transakcję rozumie się wprowadzanie zmian do bazy lub wyszukiwanie danych, instrukcje SQL: COMMIT, ROLLBACK

Najprostszym sposobem zrealizowania współbieżności jest zastosowanie mechanizmu blokad. Rezultatem zastosowania tego mechanizmu jest szeregowanie dostępu do rekordów. Rozróżniamy blokady: do odczytu i do zapisu. Blokowanie odbywa się najczęściej na poziomie rekordu. Rekord blokowany jest tylko na czas dostępu do niego, a nie na czas całej transakcji. SZBD realizuje mechanizm blokad przez modyfikację tabeli blokad.

Metody uniknięcia impasu:

Dziennik transakcji - zapisuje przebieg wykonywania transakcji, używany jest do wykonywania kopii zapasowych i odzyskiwania danych

System przetwarzania transakcji SPT - zapisuje do dziennika operacje transakcji (uruchomienie transakcji, sprowadzenie potrzebnych rekordów z bd, zapisanie obrazu po transakcji, zatwierdzenie zmian)

Słownik danych - sposób zapisywania metadanych czyli danych na temat danych, znajduje się w katalogu systemowym, przechowuje: opis relacji (nazwy relacji, typy danych kolumn i ich nazwy), deklaracje kluczy głównych i obcych, opis perspektyw, deklaracje grup użytkowników i uprawnień, informacje o indeksach i rozmiarach plików, strukturze plików

  1. Obiektowość w bazach danych

OBD składa się z obiektów i klas obiektów powiązanych pewną liczbą mechanizmów abstrakcji.

Obiektowość oparta jest na następujących zasadach:

1. Budowa obiektu:

2. Struktura i zachowanie

3. Dostęp do obiektów jest realizowany poprzez przesyłanie komunikatów

4. Grupowanie obiektów w klasy

5. Hierarchia

Zalety OBD:

Cechy języka OBD:

  1. Cechy modelu obiektowego

  1. Standaryzacja - ODMG-93

Object Database Management Group to organizacja stworzona w 1991 roku przez członków pewnej liczby firm, która za cel obrała sobie stworzenie zbioru standardów obiektowego zarządzania bazą danych. Miało to wspomóc przenoszenie aplikacji między systemami. Standard ODMG składa się z:

Należy podkreślić, iż standard ODMG-93 jest zaprojektowany z myślą o integracji OBD ze standardem CORBA, co jest szczególnie ważne dla systemów obiektów rozproszonych. Dziś prawie każdy komercyjny system OBD oferuje mechanizmy współpracy bazy danych ze środowiskiem CORBA. Podsumowując można powiedzieć, ze przejście od architektury klient-serwer w kierunku technologii obiektów rozproszonych stwarza dobre perspektywy rozwoju dla OBD.

  1. System zarządzania bazą danych

SZBD - zorganizowany zbiór narzędzi umożliwiający dostęp i zarządzanie bazą danych, składa się zwykle z 3 części: jądro SZBD, interfejs, zestaw narzędzi

Zadania SZBD:

Mechanizmy charakteryzujące SZBD:

Składniki jądra SZBD:

Podstawowe funkcje jądra SZBD:

Porównanie baz danych relacyjnych i obiektowych.

Cechy

b. relacyjne

b. obiektowe

przechowywanie danych

tabele z określoną ilością kolumn i dowolnej liczbie wierszy

obiekty będące typami złożonymi mogącymi zawierać w sobie kolejne obiekty

operacje na danych

kwerendy

metody

stan na rynku

90%

rozwijający się trend

zalety

niezależność od języka programowania, dobrze zdefiniowana teoria

łatwość w reprezentowaniu rzeczywistości i zależności między obiektami, elastyczność

wady

brak możliwości reprezentacji relacji typu n-n, trudny model wymaga wielu tabel, brak złożonych typów danych, niezgodność z modelem używanym przez języki programowania

powiązanie z jednym językiem programowania, słaba obsługa przeszukiwania danych, brak powszechnie akceptowalnych zapytań, trudny dostęp do danych fizycznych

stosowanie

proste dane, które łatwo umieścić w tabeli, gdy wymagane wyszukiwanie wg różnych kryteriów

złożone struktury danych, dane zagnieżdżone, dane zmieniają dynamicznie rozmiar

  1. Przykłady rozwiązań!?

relacyjny Oracle (1977) - architektura klient-serwer, wydajny i niezawodny, dostępny na wiele platform, równoległe przetwarzanie transakcji, przetwarzanie rozproszone, dużo skalowalność, zgodny ze standardami, narzędzia do administrowania, Oracle Forms, Reports, Graphics, PL/SQL

obiektowy O2 - zaprojektowany i zaimplementowany pod koniec lat 80 przez niekomercyjną organizację, od 1991 na rynku, architektura klient-serwer, język programowania 4GL, interfejsy języków C i C++, traktuje obiekty i wartości jako konstrukcje niezależne, język zapytań OQL (Object Query Language) jest rozszerzeniem SQL, nie przestrzega reguły enkapsulacji, narzędzia do tworzenia aplikacji - nacisk położono na grafikę

Sysbase - wspólny interfejs dla wszystkich typów danych, Java do realizacji logiki aplikacji, wygodna realizacja zapytań rozproszonych, zaimplementowana obsługa multimediów

IBM-DB2 - obsługuje obiektowe rozszerzone dane przestrzenne, elastyczność serwerów, współpracuje z serwerami Javy

Informix - produktem flagowym jest Dynamic Server, zoptymalizowany system wspomagania decyzji za pomocą technologii równoległego przeszukiwania danych, moduł do multimediów, moduły do obsługi złożonych danych i logiki aplikacji

Bezpłatne systemy baz danych SQL: MySQL, PostgreSQL, Mini SQL

Bezpieczeństwo baz danych:

4GL - języki 4 generacji wspomagania tworzenia aplikacji:



Wyszukiwarka

Podobne podstrony:
BDII Opracowania egzamin, Bazy danych II
Wytyczne do przygotowania prezentacji BDII SQL dzienne 2011, Wit, Semestr4, Bazy Danych II
bazy danych II
Opracowanie Pytan Bazy danych M Nieznany
Bazy danych II kolokwium 1
Bazy danych II program proj, Politechnika Opolska, Informatyka, Semestr VI, Bazy danych II, Projekt
Opracowanie Teoria Bazy Danych 2011 Plebs By ITCompozer
bazy danych II
02 Bazy danych - bibliografia skrocona, INIB rok II, PIOSI janiak
Wzor projektu bazy danych (3), INIB rok II, PIOSI janiak
b, Banki danych, Opracowane przez dzielnego Remigiusza Boguszewicza opracowanie pyta˙ egzaminacyjnyc
egz, Pytania na egzamin testowy, Pytania na egzamin testowy, Relacyjne bazy danych 2002
Projekt BD Relacyjne Bazy Danych obligat ET II II 01

więcej podobnych podstron