Typy bazy danych
Typy bazy danych bazy tekstowe, Textract, http://www.textract.com - bazy tekstowe, np. archiwum gazety, dla setek gigabajtów, szybkie wyszukiwanie i indeksacja informacji bazy danych bez struktury (free form) - informacja nieustrukturizowana
Bazy oparte na płaskich plikach tekstowych (ang. flat file) Stosowane w latach 60-70 stosowane w komputerach mainframe. Informacje s umieszczane w polach, które albo maj stała szeroko, albo s rozdzielane znakiem specjalnym, na przykład ;. Znak rozdzielajcy nie moe wystpowa w samych danych. Wystpuj pola Numer Identyfikacyjny - 4 kolumny, Profesja - 5 do 15 kolumny, Imi i Nazwisko - 16 do 40 kolumny.
Bazy oparte na płaskich plikach tekstowych (ang. flat file) Przykład danych opartych na plaskich plikach oddzielonymi ;. 1234;ksigowy;Adam Rutkowski; 3241;tokarz;Rafal Baniewicz; Przykład danych opartych na plaskich plikach o stałej szerokoci. 1234 ksigowy Adam Rutkowski 3241 tokarz Rafal Baniewicz
Bazy oparte na płaskich plikach tekstowych (ang. flat file) Płaskie pliki s czsto wykorzystywane do przenoszenia danych pomidzy rónymi implementacjami baz danych. Na przykład plik Exportu z jednej wiersji Oracle jest Importowany do wyszej wersji bazy danych Oracle; dane s przenoszone z jednej bazy do drugiej. System zarzdzania bazy danych Oracle potrafi widzie płaski pliki w systemie operacyjnym jako tabela bazy danych, jeeli opiszemy struktur plików; podamy miejsce pliku - dysk, katalog.
Bazy hierarchiczne Architektura modelu hierarchicznej bazy danych opiera si na relacji nadrzdny / podrzdny. Na wierzchu hierarchicznej struktury jest główna tabela, która wskazuje tabele podrzdne, zwizane z ni. Model hierarchicznej bazy danych ma posta typu odwróconego drzewa. Przykłady hierarchicznej bazy danych baza domen w Internecie Wydawca Wykonawca Sklepy Album Album Stan magazynu Sprzeda» Piosenka
Bazy hierarchiczne W bazie danych powinno si przechowywa jak najmniej nadmiarowych informacji. Przy aktualizacji danych koniecznie jest aktualizacji tych danych zawsze w wielu miejscach w celu uniknicia powstawania niespójnoci danych. Tabela nadrzdna moe posiada wiele tabel podrzdnych. Tabela podrzdna moe mie tylko jedn tabel nadrzdn. W celu odczytania danych z tabeli podrzdnej trzeba najpierw odczyta tabelí nadrzdn. System zarzdzania bazy danych Oracle ma moliwo implementacji w relacyjnej bazie danych modelu hierarchicznego - drzewa (ang. tree) i wyszukiwania informacji w nim poprzez zapytania, które przeszukuj drzewa.
Model sieciowy Rozwój modelu hierarchicznego. Tabele podrzdne mog mie wiele tabel nadrzdnych. Nie ma koniecznoci odczytywanie głównej tabeli w celu uzyskania dostpu do danych z tabel podrzdnych. Relacje pomidzy tabelami w modelu sieciowym nosz nazw struktury grupowej, w której jedna tabela jest włacicielem a inne tabele s członkami struktury. Struktury grupowe umoliwiaj realizacj relacji jeden-do-wielu pomidzy tabelami. Jeli zostanie zmieniona struktura bazy danych, zmiany wymaga równie aplikacja. Trudna zmiana, modyfikacja struktury raz utworzonych bazach danych.
Model sieciowy Wydawca Wykonawca Sklepy Album Zamówienia Stan Magazynu Sprzeda» Piosenka
Relacyjny model Najczciej uywanym obecnie modelem baz danych jest model relacyjny. Ojciec koncepcji relacyjnego modelu bazy danych jest badac z firmy IBM dr E.F. Codd. Jako podstaw formaln relacyjnego modelu baz danych uznaje si opracowany przez niego dokument ang. A Relational Model of Data for Large Shared Data Banks - 1970 ( Relacyjny model danych dla duych współuytkowanych banków danych ) W tym modelu jest najłatwiej zaimplementowa kontroli integralnoci danych po przez stosowaniu ograniczeniach (ang. constraints). Łatwo mona zmienia struktur bazy danych.
Relacyjny model Uytkownicy widz logiczny sposób przechowywania danych i nie musz zna ani rozumie fizycznego sposobu ich przechowywania. Łatwiejszy proces odczytywania danych.
Koncepcje relacyjnego modelu według E.F. Codda Wszystkie informacje w relacyjnej bazie danych (łcznie z nazwami tabel i kolumn) s reprezentowane bezporednio, jako wartoci przechowywane w tabelach. Kada warto w relacyjnej bazie danych musi by dostpna poprzez okrelenie nazwy tabeli, wartoci klucza podstawowego i nazwy kolumny. Oznacza to, e nie trzeba zna fizycznej lokalizacji danych i e mona w sposób niezaleny bezporednio odczytywa dowolne rekordy znajdujce si w tabelach bazy danych. DBMS powinien obsługiwa puste wartoci (dane nieznane lub nieadekwatne), odróniajc je od wartoci domylnych i (w sposób niezaleny) od ich dziedziny.
Koncepcje relacyjnego modelu według E.F. Codda Opis bazy danych i jej zawartoci jest reprezentowany na poziomie logicznym, w postaci tabel, i moe by odczytywany za pomoc zapyta wyraonych w jzyku bazy danych. Oznacza to, e meta dane, czyli dane opisujce dane, s przechowywane równie w tabelach bazy danych. Co najmniej jeden jzyk rozumiany przez baz danych musi mie dokładnie zdefiniowan składni i musi by zrozumiały dla uytkowników. Musi on umoliwia definiowanie danych, modyfikacj danych, definiowanie reguł integralnoci, autoryzacj i obsług transakcji. System musi umoliwia aktualizacj danych poprzez wszystkie perspektywy, które teoretycznie pozwalaj modyfikowa dane.
Koncepcje relacyjnego modelu według E.F. Codda DBMS musi pozwala na odczytywanie, wstawianie, aktualizacj i usuwanie danych na poziomie zbiorów. Zmiana metod dostpu lub struktur przechowujcych dane na poziomie fizycznym nie moe wpływa logicznie na napisane aplikacje i zapytania. Zmiany w strukturze tabel maj mie jak najmniejszy wpływ na napisane aplikacje i zapytania. W przypadku rozdzielenia jednej tabeli na dwie, aplikacja bdzie musiała ulec zmianie ñ tak aby odpowiednie kolumny były odczytywane z obu tabel. Jzyk bazy danych musi umoliwia definiowanie reguł integralnoci chronicych dane. Reguły te musz by przechowywane w dostpnym na bieco katalogu i nie moe istnie moliwo ich pominicia podczas modyfikacji danych.
Koncepcje relacyjnego modelu według E.F. Codda Fizyczne rozmieszczanie i przemieszczanie danych nie moe mie wpływu na napisane aplikacje i zapytania. Musi istnie moliwo pominicia reguł integralnoci danych poprzez uycie jzyków niskiego poziomu.
Relacyjny model - wymagania wobec uytkownika Uytkownicy musz si nauczy jzyka SQL. Uytkownicy musz wiedzie, jakie s relacje pomidzy tabelami i kto jest ich włacicielem. W celu odczytania danych zawartych w pojedynczej tabeli naley: zna jej właciciela, struktury tabeli i mie uprawnienia do jej odczytania.
Obiektowe bazy danych Obiektowa baza danych (ang. object-oriented database) to taka baza, w której dane mona przechowywa, definiowa i korzysta z nich za porednictwem jzyków programowania obiektowego. Jzyki programowania obiektowego - C++, Visual Basic, Java. W obiektowych bazach wyróniamy dwie podstawowe struktury: obiekty (ang. objects) strukturami posiadajcymi identyfikatory umoliwiajce tworzenie powiza z innymi obiektami literały (ang. literals) to wartoci zwizane z obiektami, które nie posiadaj identyfikatorów.
Obiektowe bazy danych Obiekty mog dziedziczy właciwoci od innych obiektów. Poprzez nadawanie wartoci właciwociom obiektów okrela si midzy innymi sposób ich zachowania. W przypadku bazy obiektowej jzyk programowania obiektowego słuy zarówno do definiowania struktury bazy danych, jak i do tworzenia aplikacji bdcej interfejsem tej bazy. Obiektowy model danych okrela zbiór obiektów; ich stan; uch zachowanie; relacje midzy nimi
Obiektowe bazy danych Odpowiednikiem tabeli w bazie relacyjnej jest klasa w bazie obiektowej. Obiekty klasy; dziedziczenie... Do odczytywania wartoci z innych klas oraz do dodawania i usuwania wartoci słu operacje. Typ w relacyjnej bazie danych mona zdefiniowa jako grup obiektów i literałów posiadajcych ten sam zestaw właciwoci, które mona modyfikowa dla konkretnych obiektów.
Obiektowe bazy danych Do operowania na danych w obiektowej bazie danych słuy obiektowy jzyk zapyta (ang. object query language - OQL). Jest on oparty na standardowym jzyku baz relacyjnych - SQL, ale posiada dodatkowe moliwoci, dziki którym mona wykonywa operacje na danych przechowywanych w postaci obiektów posiadajcych właciwoci. Jeyk zapyta Object Query Language (OQL) grupowanie obiektów zamki - metoda zamykania przez transakcje dostpu do obiektów zasady zachowania integralnoci bazy danych poprawno dziedziczenia hierarchia dziedziczenia
Obiektowo - relacyjne bazy danych (ang. object-relational) łczcy w sobie koncepcje relacyjnego modelu bazy danych z obiektowym stylem programowania. Model ten ma stanowi połczenie najlepszych właciwoci modelu obiektowego i relacyjnego. Midzynarodowa Organizacja Normalizacyjna (ang. International Standards Organization ñ ISO) ujła koncepcje obiektowo-relacyjne w nowym standardzie jzyka SQL o nazwie SQL3, nazywanym równie SQL99. Architektura relacyjnej bazy danych staje si bardziej trójwymiarowa. Mona tworzy własne typy danych.
Obiektowo - relacyjne bazy danych (ang. object-relational) Uytkownik musi rozumie zarówno koncepcje obiektowe, jak i relacyjne. W niektórych implementacjach modelu obiektowo-relacyjnego nie jest moliwe dziedziczenie właciwoci obiektów.
Według przeznaczenia OLTP (On Line Transaction Processing) - systemy transakcyjne. Transakcja - pełny obieg danych i aktualizacja bazy. system sprzeday, system rezerwacji biletów system finansowo - ksigowy system obsługi tranaskacji bankowych DSS (Decision Support Systems) - Systemy wspomagajce podejmowania decyzji. system obsługi wniosków o udzielania kredytów
Typy bazy danych według miejsca Rozproszone bazy danych - na wielu systemach komputerowych Sieciowe bazy danych, udostpnianie baz danych przez WWW.