Temat: Baza danych.
Baza danych to zbiór powiązanych ze sobą danych stanowiących abstrakcyjne, informatyczne odzwierciedlenie fragmentu rzeczywistości. Zbiór ten, powinien być logicznie spójny.
Baza danych jest projektowana, budowana, wypełniana danymi dla zrealizowania określonych celów. Korzystają z niej różne grupy użytkowników. Są to przede wszystkim ludzie wykorzystujący zawartą tam informacje i wnoszący zmiany. Szczególną grupę stanowią tak zwani projektanci którzy definiują strukturę bazy danych oraz przygotowują programy użytkowe nazywane aplikacjami które ułatwiają korzystanie z bazy przyszłym użytkownikom. Poprawnie zaprojektowana baza danych jest najpierw wypełniana danymi a następnie przetwarzana.
W pewnym uproszczeniu przez bazę danych rozumiemy uporządkowany zbiór danych. A przez system bazy danych bazę danych wraz z oprogramowaniem umożliwiającym operowanie na niej. Baza danych jest przechowywana na nośnikach komputerowych.
Można powiedzieć, że baza danych jest abstrakcyjnym, informatycznym modelem wybranego fragmentu rzeczywistości (mini światem).
Fragment rzeczywistości może być rozumiany jako rzeczywistość fizyczna, taka którą spostrzegamy naszymi organami percepcji i rzeczywistość konceptualna istniejąca w naszej wyobraźni.
Poprawne operowanie na bazie danych wiąże się z właściwą interpretacją danych, które zostają w niej zapisane. W związku z tym konieczny jest opis semantyki (znaczenia) danych zachowywanych w bazie.
W systemach baz danych rzeczywistość opisuje się za pomocą modelu danych. Przez model danych rozumiemy zbiór abstrakcyjnych pojęć umożliwiających reprezentację określonych własności tego świata.
Zbiór pojęć użyty do opisu własności konkretnego fragmentu świata rzeczywistego istotnych z punktu widzenia danego zastosowania tworzy schemat bazy danych. Baza danych jest modelem logicznie spójnym służy określonemu celowi.
Można powiedzieć, że każda baza danych posiada:
źródło danych;
użytkowników;
związki z reprezentowaną rzeczywistością;
Użytkownicy
|
Transakcja (zapytanie)
S --------------- |
Z| Moduł zarządzania transakcjami
|
B | Moduł zarządzania dostępem do danych
D ------------
/ \
Schemat Baza
bazy danych
danych
Użytkownicy kontaktują się z systemem bazy danych za pośrednictwem transakcji. Transakcja jest sekwencją instrukcji po wykonaniu której spójna baza danych nadal zachowuje swoją spójność. Transakcja jest operacją atomową. Transakcja atomowa to znaczy najmniejsza z możliwych czyli podstawowa. Transakcja nieprawidłowo wykonana jest wycofywana.
Baza danych umożliwia równoczesną pracę wielu użytkownikom.
System zarządzania bazą danych jest to moduł zarządzania dostępem do danych. Najogólniej mówiąc umożliwia on właściwą interpretację, wprowadzanie, usuwanie i modyfikację danych.
Z bazą danych ściśle związane jest pojęcie schematu bazy danych. Podczas gdy dane opisują cechy modelowanych obiektów schemat potrzebny jest po to aby dane były prawidłowo interpretowane. Jest on zatem opisem struktury przechowywanych danych oraz wzajemnych powiązań między nimi.
Modele danych:
Przez model rozumie się zbiór pojęć potrzebnych do opisu struktury baz danych, taka struktura obejmuje:
typy danych, związki między danymi i nałożone ograniczenia.
zbiór operacji do definicji, wyszukiwania i aktualizacji bazy danych.
Modele konceptualne - są to modele najbardziej zbliżone poziomem abstrakcji do wymagań projektantów. Opracowane w początkowej fazie projektowania systemu jako tak zwane diagramy związków ENCJI (ERD).
Modele implementacyjne - służą do transformacji wcześniej przygotowanego modelu konceptualnego bazy danych. Mamy również modele: hierarchiczne, sieciowe i relacyjne, praktyczne zastosowanie mają jedynie modele relacyjne.
Modele fizyczne - określają sposób organizacji danych w zewnętrznej pamięci komputera.
Metodyka projektowania baz danych; wyróżnia się pięć etapów z których pierwszym jest wyróżnienie fragmentu rzeczywistości (mini świata) którego baza danych ma dotyczyć.
Mini świat
|
Analiza mini świata - konstrukcja modelu konceptualnego mini świata.
|
Transformacja modelu koncepcyjnego do modelu relacyjnego.
|
Proces normalizacji
|
Wybór struktur fizycznych i określenie ścieżek dostępu.
|
Strojenie systemu
Zasadnicza część opracowania bazy danych polega na zbudowaniu modelu konceptualnego w postaci diagramu ERD (relacja związków ENCJI) oraz implementacyjnego w którym w przeważającej większości przypadków jest model relacyjny. Modele te na ogół wymagają specjalnych zabiegów ulepszających to jest: tak zwana NORMALIZACJA.
Ostatnimi etapami są:
dobór właściwych struktur fizycznych bazy danych. (np. indeksów)
strojenie systemu polegające na zwiększeniu efektywności przy użyciu mechanizmów dostępnych w systemie zarządzania bazą danych.
Etapy te są zwykle realizowane przez administratora bazy danych.
Języki stosowane w bazach danych.
W bazach danych stosuje się do projektowania i wypełniania baz danych cztery różne grupy języków.
Język definiowania danych - DDR (Data Definition Language) - służy do definiowania struktury danych przechowywanych w bazie a więc tworzenia schematu implementacyjnego bazy.
Język manipulowania danymi - DML (Data Manipulation Language) - służy do zapisu, usuwania i aktualizowania danych.
Język sterowania danymi - DCL (Data Control Language) - służy do sterowania transakcjami np. ich wycofywania lub zatwierdzania.
Język zapytań - QL (Query Language) - który umożliwia pobieranie z bazy informacji zgodnych z wyspecyfikowanymi warunkami.
Model REALCYJNY i algebra relacji.
Model danych w bazach relacyjnych obejmuje trzy składowe:
Relacyjne struktury danych
Operatory algebry relacyjnej
Ograniczenia integralnościowe określające możliwe wartości danych w sposób jawny lub nie jawny.
Struktury danych w modelu relacyjnym.
Podstawową strukturą danych jest RELACJA będąca podzbiorem iloczynu kartezjańskiego dwóch wybranych zbiorów reprezentujące dopuszczalne wartości danych. Jest ona za zwyczaj przedstawiana w postaci dwuwymiarowej tablicy
Pesel |
Imię |
Nazwisko |
Wykształcenie |
Ulica |
23118625141 |
Artur |
Młot |
SO |
Śniadeckich |
14154245651 |
Ola |
Kot |
P |
Ostrołęckich |
15165165155 |
Ala |
Polak |
WT |
Piękna |
32135146545 |
Ela |
Ładna |
ST |
Biała |
15316516515 |
Adam |
Kowalski |
P |
Kwiatek |
15616516515 |
Marek |
Mały |
WT |
Leśna |
45646546545 |
Bartek |
Wielki |
S |
Koszykowa |
Kolumny w bazach danych to ATRYBUTY
Wiersze w bazach danych to KROTKI
Komórki w bazach danych to POLA
Zawartość komórki w bazach danych to WARYOŚCI
W bazach danych relacja jest przedstawiona w postaci tabeli. Relacja jest zbiorem krotek posiadających tą samą strukturę lecz różne wartości. Każda krotka odpowiada jednemu wierszowi tablicy. Każda krotka posiada co najmniej jeden atrybut odpowiadający pojedynczej kolumnie tablicy.
Każda relacja (TABLICA) posiada następujące własności.
wszystkie krotki są różne (wiersze są unikalne) nie może być dwóch takich samych krotek
wszystkie atrybuty są różne (kolumny są unikalne) nie może być dwóch takich samych atrybutów.
kolejność krotek i atrybutów nie ma znaczenia.
Wartości atrybutów są niepodzielne (pól)
Operacje na relacjach opisywane są za pomocą matematycznych operacji na zbiorach i relacjach które są ścisłe ale trudno zrozumiałe dla przeciętnego człowieka. Natomiast posługiwanie się tabelami wierszami i kolumnami jest mniej formalne i ścisłe, ale bardziej przejrzyste. Tabela może reprezentować
zbiór ENCJI wraz z ATRYBUTAMI;
zbiór powiązań pomiędzy ENCJAMI wraz z ich ATRYBUTAMI;
ENCJI wraz z ATRYBUTAMI i ich powiązania z innymi ENCJAMI.
Każdy wiersz w tabeli reprezentuje pojedynczą encję powiązanie lub encję wraz z powiązaniami. W tabeli nie powinny powtarzać się dwa identyczne wiersze, zabezpieczenie przed tym powtórzeniem jest realizowane przez pole kluczowe (ID) Wiersze w odróżnieniu od kolumn są dynamiczne. Działanie bazy danych polega na dopisywaniu, modyfikacji i usuwaniu wierszy. W raz utworzonej tabeli rzadko dopisuje się lub kasuje kolumny. Ponieważ każda z kolumn reprezentuje pewną własność modelowanej rzeczywistości.
WSKAZÓWKI:
W przypadku projektowania tabeli w bazie danych należy stosować się do następujących wskazówek:
Używaj nazw opisowych do nazywania kolumn tabeli (atrybutów). Kolumny nie powinny mieć znaczenia ukrytego ani reprezentować kilku atrybutów.
Bądź konsekwentny w stosowaniu liczby pojedynczej lub mnogiej przy nazywaniu tabeli.
Utwórz tylko te kolumny które są niezbędne do opisania modelowanej encji czyli danego związki, relacji, powiązania. Tabele z mniejszą ilością kolumn są łatwiejsze w użyciu.
Utwórz kolumnę pól kluczowych dla każdej tabeli.
Unikaj powtarzania informacji w bazie danych (NORMALIZACJA).
Perspektywa
Strukturą pochodną do relacji jest tak zwana perspektywa. Jest ona czymś w rodzaju okna, przez które odczytujemy lub modyfikujemy dane z relacji lub zbioru relacji na którym zdefiniowano perspektywę. Perspektywa posiada następujące cechy:
ogranicza zakres dostępu danych do atrybutów i krotek określonych w definicji perspektywy;
jest zdefiniowana z wykorzystaniem co najmniej jednej relacji lub innej perspektywy;
jest pamiętana w systemie wyłącznie w postaci swojej definicji, a zatem perspektywa nie ma własnych danych. Każdorazowe odwołanie się do niej wymaga pobrania danych z krotek relacji bazowych.
Perspektywy inaczej nazywane są tabelami wirtualnymi lub oknami.
Perspektywy stosujemy w celu:
ograniczenia dostępu do relacji;
uproszczenia zapytań;
zapewnienie niezależności danych;
6
Diagramy koncepcyjne.
Relacje.
Relacje znormalizowane.
Fizyczne struktury danych.