Bazy danych

86
Bazy danych

description

Bazy danych. Baza danych. pojęcie sięgające wieków informacja – pewien zasób ludzie od zawsze próbują gromadzić informację i wnioskować na jej podstawie komputery – tylko ułatwiają przetwarzanie informacji. Informacja ma wartość. gdy jest: dokładna (nie za dużo, ani nie za mało) dostępna - PowerPoint PPT Presentation

Transcript of Bazy danych

Page 1: Bazy danych

Bazy danych

Page 2: Bazy danych

Baza danych

• pojęcie sięgające wieków

• informacja – pewien zasób

• ludzie od zawsze próbują gromadzić informację i wnioskować na jej podstawie

• komputery – tylko ułatwiają przetwarzanie informacji

Page 3: Bazy danych

Informacja ma wartość

gdy jest:

• dokładna (nie za dużo, ani nie za mało)

• dostępna

gdy mamy „zły” sposób poszukiwania informacji możemy nie być w stanie jej odszukać

- może nam zabraknąć życia!

- komputer tu nic nie pomoże

Page 4: Bazy danych

Baza danych

• metoda strukturalizacji zarządzania informacją

• dotyczy fragmentu rzeczywistości i stanowi kolekcję danych

• część systemu informacyjnego- aplikacja bazy danych (oprogramowanie)- system informatyczny (sprzęt)

Page 5: Bazy danych

Przykładowa baza danych dla diagnostyki

Page 6: Bazy danych

Funkcjonalna struktura bazy danych

Page 7: Bazy danych

Elementy bazy danych dla diagnostyki

Page 8: Bazy danych

Bazy danych często służą do wspomagania procesów zarządzania

Page 9: Bazy danych

System zarządzania bazami danych (SZBD)

(ang. Data Base Management System, DBMS)

SZBD to oprogramowanie służące do zarządzania komputerowymi bazami danych.

Systemy baz danych mogą być sieciowymi serwerami baz danych lub udostępniać bazę danych lokalnie

Większość obecnie spotykanych systemów działa w trybie klient-serwer, gdzie baza danych jest udostępniana klientom przez SZBD będący serwerem.

Serwer baz danych może udostępniać dane klientom bezpośrednio lub przez inny serwer pośredniczący (np. serwer WWW lub aplikacji).

Page 10: Bazy danych

Podstawowe pojęcia ze słownika baz danych …

• Co to jest baza danych ?• Rekordy, pola, klucze• Co to jest język SQL ?• Rodzaje baz danych:

– plikowe, – relacyjne,– obiektowe– obiektowo-relacyjne– sieciowe

Page 11: Bazy danych

Cechy bazy danych

• trwałość (aplikacja powinna działać przez długi okres czasu – dane są przechowywane „latami”)

• zgodność z rzeczywistościązmiana rzeczywistości musi być uwzględniona w

bazie danych

Page 12: Bazy danych

Przykład danych do bazy

Tytuł:

Autor:

ISBN:.......

Tytuł:

Autor:

ISBN:.......

Tytuł:

Autor:

ISBN:.......

BIBLIOTEKA

POLE REKORD

Potop

H.Sienkiewicz H.Sienkiewicz

Quo VadisPan Tadeusz

A.Mickiewicz

Page 13: Bazy danych

Ujęcie projektowe

Dane przechowywane w tabeli:

Tytuł Autor ISBN Rok Wydania

...

Potop H.Sienkiewicz 23xc4 1970 ...Quo Vadis H.Sienkiewicz 3e45d 1985 ...Pan Tadeusz

A.Mickiewicz 231ws 1990 ...

... ... ... ... ...

Atrybuty

Rekordy

PoleKlucz

Page 14: Bazy danych

Przykładowa struktura rzeczywistego rekordu medycznej bazy danych

Page 15: Bazy danych

W bazie danych, musimy

• kontrolować redundancję (powtarzanie się danych)

• jeden fakt powinien być reprezentowany na jeden sposób

• problem dostępności i dokładności poszukiwanych danych (czas dostępu oraz nadmiar danych)

Page 16: Bazy danych

Posługiwanie się bazą danych

• wyszukiwanie danych

• modyfikacja (aktualizacja) danych

• dopisywanie danych

• usuwanie danych

Page 17: Bazy danych

Problem jednej tabeli

Tytuł Autor ISBN Rok Wydania

...

Potop H.Sienkiewicz 23xc4 1970 ...Quo Vadis H.Sienkiewicz 3e45d 1985 ...Pan Tadeusz

A.Mickiewicz 231ws 1990 ...

... ... ... ... ...H.Sienkiewicz ... ... ...A.Mickiewicz ... ... ...

Page 18: Bazy danych

Najbardziej popularne są relacyjne bazy danych

Page 19: Bazy danych

Relacyjny model danych

• twórca E.F.Codd (1970)

• terminologia matematyczna – baza danych to zbiór relacji

• relacja jest reprezentowana przez tablicę (kolumny i wiersze)– np. dla zadanej kolumny mamy w wierszu

odpowiednią wartość

Page 20: Bazy danych

Model relacyjny -rys historyczny1970 Najbardziej znany, najczęściej cytowany artykuł E.F.Codd’a z IBM proponujący oparcie się na teorii relacji jako podstawie ideologicznej i teoretycznej architektury, języków i interfejsów systemów zarządzania bazami danych. Koncepcja została określona jako “relacyjny model danych”, RDM.

1971 - 1975 Zażarta walka ideologiczna pomiędzy zwolennikami RDM a zwolennikami koncepcji sieciowych baz danych opartych o propozycję grupy DBTG komitetu CODASYL. Walka toczy się o pieniądze rzędu 100 miliardów $ w skali 20 lat.

1971 - 1985 Intensywny rozwój teorii związanych z RDM. RDM stał się ulubionym konikiem grup teoretycznych na całym świecie (kilka tysięcy publikacji).

1975-1989 Intensywny rozwój technologii opartych o RDM. Kariera wielu systemów zarzadzania relacyjnymi bazami danych, takich jak: DB2, Oracle, Ingres, dBase; następnie Informix, Progress, Sybase, i wiele innych. Szerokie zastosowania na skalę przemysłową, ogromna popularność i pieniądze.

Page 21: Bazy danych

Model relacyjny - rys historyczny – cd.1975 Pierwsze publikacje na temat języka Sequel, poprzednika SQL, autorów z IBM (Chamberlin).

1986 Pierwszy standard języka SQL zaaprobowany przez ANSI. Wykazuje liczne odstępstwa od RDM.1989, 1992 Następne standardy SQL.

1987 E.F.Codd, sfrustrowany odstępstwami od RDM, publikuje słynne 12 reguł “prawdziwego” systemu relacyjnego. Żaden z istniejących systemów nie jest “prawdziwym” systemem relacyjnym. Ma rację, ale nikt tym się nie przejmuje. “Prawdziwego” systemu relacyjnego chyba już nigdy nie będzie.

1985-2006 Intensywna krytyka wad RDM. Świat naukowy zredukował swoje zainteresowanie RDM praktycznie do zera. Świat komercyjny rozbudowuje systemy bez jakiejkolwiek troski o ideologię RDM.

Page 22: Bazy danych

Model relacyjny - podstawowe założenia

Baza danych składa się z prostokątnych tablic, każda o określonej liczbie kolumn i dowolnej liczbie wierszy. Takie tablice sa okreslane jako relacje. Wiersz relacji jest nazywany krotką.

Elementy krotek są atomowe (niepodzielne) i są bezpośrednio wartościami. Niedozwolone jest tworzenie wskaźników prowadzących do innych krotek. Niedozwolone jest, aby element krotki był zbiorem wartości. Jest to tzw pierwsza forma normalna (1NF).

Porządek krotek nie ma znaczenia. Porządek kolumn również nie ma znaczenia.

Jakiekolwiek cechy odnoszące się do reprezentacji relacji lub usprawnienia dostępu do relacji są ukryte przed użytkownikiem.

Page 23: Bazy danych

Model relacyjny - podstawowe założenia- cd.

Relacje i ich kolumny posiadają nazwy. Nazwy kolumn są określane jako atrybuty.

Każda relacja posiada wyróżniony atrybut lub grupę atrybutów określną jako klucz. Wartość klucza w unikalny sposób identyfikuje krotkę relacji. Jakakolwiek inna identyfikacja krotki (np. wewnętrzny identyfikator) jest niewidoczna dla użytkownika.

Manipulacja relacjami odbywa się w sposób makroskopowy przy pomocy operatorów algebry relacji lub innego tego rodzaju języka. Przetwarzanie “krotka po krotce” jest niedozwolone.

Page 24: Bazy danych

Zalety i wady relacyjnych baz danych

Zalety Wady Oparte na solidnych podstawach teoretycznych, zainteresowanie świata nauki oraz biznesu

Brak środków hermetyzacji i modularyzacji (brak oddzielenia implementacji od specyfikacji)

Stabilna pozycja na rynku Ograniczona podatność na zmiany Optymalizacja zapytań Mało naturalna reprezentacja danych

Niezależność od języka programowania Brak środków do przechowywania informacji proceduralnych

Możliwość zarządzania wielką ilością danych

Z góry ustalony konstruktor, brak złożonych obiektów

Możliwość stosowania złożonych kryteriów wyszukiwania

Trudne odwzorowanie złożonych relacji

Możliwość dostępu do danych fizycznych

Niezgodność modelu pojęciowego z modelem implementacyjnym

Dobre mechanizmy kontroli dostępu do danych, mechanizmy perspektyw

Niezgodność z modelem używanym przez języki ogólnego przeznaczenia

Page 25: Bazy danych

Ważnym pojęciem w bazie danych jest dziedzina danych

Przykład: Nie wystarczy stwierdzenie, że dane mają postać liczb całkowitych. Dziedzina precyzuje to dokładniej.

Nazwa Typ danych Format danych Opis

Numery telefonów lokalnych

Ciąg cyfr ddd-dd-dd*

Zbiór siedmiocyfrowych prawidłowych numerów telefonów na obszarze obowiązywania tego samego numeru kierunkowego w Polsce

Numery PESEL Ciąg cyfr ddddddddd* Zbiór poprawnych jedenastocyfrowych numerów PESEL

Wiek pracowników

Ciąg cyfr dd* Liczby całkowite z przedziału <15,80>

Page 26: Bazy danych

Bazy danych - transakcyjne i analitycznePorównanie modeli przetwarzania danych

Kryterium Przetwarzanie OLTP Przetwarzanie OLAP

Zastosowanie Prowadzenie biznesu Podejmowanie decyzji

Rodzaj użytkownikówSzeregowi pracownicy,

menedżerowie średniego szczebla

Analitycy, menedżerowie

wyższego szczebla

Liczba użytkowników Duża Stosunkowo niewielka

Operacje wykonywane na

danychZapis, odczyt Odczyt

Cel wykonywanych

operacji

Wprowadzanie, modyfikowanie

danych

Szczegółowe analizy,

wyszukiwanie informacji

Szczegółowość danychDane szczegółowe, brak

agregatów

Agregaty, podsumowania,

niewielka ilość danych

szczegółowych

Rząd wielkości bazy

danychGigabajty Gigabajty, Terabajty

Page 27: Bazy danych

Diagram encji i relacji jako jeden z ważnych składników koncepcji relacyjnej bazy danych

users

userpasswordfunction

session

idusertimedata

bases

userbasegrantsmask

session

privilege

Page 28: Bazy danych

Przykładowa struktura fragmentu projektu medycznej bazy danych

Page 29: Bazy danych

Proces wprowadzania danych do bazy

za pośrednictwem wypełnianych przez

użytkownika „formatek

ekranowych”.

Page 30: Bazy danych

Baza danych na przykładzie Microsoft Access

• płaszczyzna projektanta• płaszczyzna użytkownika

– wyszukiwanie, modyfikacja, dopisywanie, usuwanie danych – w obu płaszczyznach

• na podstawie mechanizmów płaszczyzny projektanta możliwe jest tworzenie płaszczyzny użytkownika (interfejs użytkownika)

Page 31: Bazy danych

Wyszukiwanie danych

• filtr – doraźnie

• kwerenda – trwale

Page 32: Bazy danych

Relacyjna Baza Danych

Autor

imię

nazwisko

adres...

Książka

tytuł

ISBN

rok wyd...

Wydawnictwo

nazwa

adresopis

Page 33: Bazy danych

Relacyjna Baza Danych

imię nazwisko

Henryk Sienkiewicz

Adam Mickiewicz

Autor

tytuł ISBN

Potop 12234ee4

Quo Vadis 334we2

Pan Tadeusz

23we45

Książka

Page 34: Bazy danych

Dane osobowe

imię

nazwisko

......

Hobby

nazwa

opis

.....

Przedmiot

nazwa

opis

Oceny

ocena

opis

Uczeń

Page 35: Bazy danych

Rzeczywiste relacyjne bazy danych bywają dosyć rozbudowane

Page 36: Bazy danych

W bazie danych może być wyróżniona warstwa aplikacji i warstwa prezentacji

Page 37: Bazy danych

Najważniejsze narzędzie baz danych: SQL Structured Query Language, czyli strukturalny język zapytań

SQL jest wszechstronnym językiem baz danych. Obejmuje polecenia związane z definiowaniem danych, tworzeniem zapytań oraz aktualizacją danych. Pełni jednocześnie rolę języka DDL i języka DML. Standard SQL umożliwia definiowanie perspektyw dla baz danych, określanie zabezpieczeń i metod uwierzytelniania, definiowanie więzów integralności oraz sterowanie wykonywaniem transakcji.

Page 38: Bazy danych

SQL: podstawowy format zdania select

select [all | distinct] expression {, expression}from table_name [corr_name] {.table_name [corr_name] } [where search_condition1][group by column {, column}][having search_condition2]

Zapytania SQL moga być bardzo złożone. Semantyka jest dość często niejasna (“SQL puzzles”).

Oprócz zdania select SQL wprowadza:

• zdania definicji danych• zdania manipulacji danymi (update, insert, delete )

Mimo to, SQL nie jest pełnym językiem programowania, w związku z czym wymaga:

• Zanurzenia zdań SQL w uniwersalny język programowania• Zdań pośredniczących, które umożliwiają takie zanurzenie

Page 39: Bazy danych

SQL: proste zdania select Zakładamy tablice: PRACOWNIK( NR, NAZWISKO, ZAROBEK, NRDZ)

DZIAŁ( NRDZ, NAZWA, LOKALIZACJA )

SemantykaZaczynamy od from: Specyfikujemy tablice do przeszukania oraz ew. ich lokalne synonimy (ściślej: zmienne krotkowe). Tworzymy iloczyn kartezjański tablic.

Następnie where: Usuwamy z tablicy lub iloczyny kartezjańskiego takie krotki, które nie spełniają warunku.

Na końcu select: Bierzemy z każdej wynikowej krotki to, co jest potrzebne.

Podaj nazwiska pracowników zarabiających mniej niż 1000:

select NAZWISKO from PRACOWNIK where ZAROBEK > 1000

Podaj nazwiska i nazwy działów pracowników pracujących w Radomiu:

select P.NAZWISKO, D.NAZWA from PRACOWNIK P, DZIAŁ Dwhere P.NRDZ = D.NRDZ and D.LOKALIZACJA = ‘Radom’

Na bazie tego prostego pomysłu utworzono gigantyczną odwróconą piramidę (setki stron specyfikacji)

SQL

Page 40: Bazy danych

Przykład interfejsu użytkownika w klinicznej

bazie danych „Neonatologia”

Page 41: Bazy danych

Co to jest niezgodność pomiędzy modelem pojęciowym i modelem implementacyjnym?

Mentalna percepcja świata rzeczywistego

Modelpojęciowy

Schemat relacyjnejstruktury danych

W modelu relacyjnym model pojęciowy jest budowany w oparciu o model encja-związek.Model encja-związek stara się odwzorować świat rzeczywisty, lecz nie może być bezpośrednio zaimplementowany, gdyż relacyjna baza danych na to nie pozwala. W rezultacie:

- schemat struktury danych gubi znaczną część semantyki danych,- użytkownik musi kojarzyć dane explicite w zdaniach SQL, co zwiększa ich złożoność i powoduje wzrost czasów wykonania.

Celem twórcy bazy danych jest uzyskanie jak najmniejszej luki pomiędzy myśleniem o rzeczywistości a myśleniem o danych i procesach, które zachodzą na danych.

Page 42: Bazy danych

Niezgodność modelu pojęciowego i relacyjnego(1)

Szef

Zatrudnia

Pracuje_w

DepartamentNrDNazwaDLokacja *

PracownikNrPracZawód *Wypłaty *

OsobaNazwiskoAdres *RokUrodz

Dziecko

Dziecko

Mama

Tata

Ile schematów relacyjnych potrzeba, aby zaimplementować tę strukturę?

Departament( NrD, NazwaD )Lokacja( NrLokacji, NazwaLok, NrD )Szef( NrD, NrPrac)Pracownik( NrPrac, NrOsoby)PracDept( NrPrac, NrD)Zawód( IdZawodu, NazwaZawodu, NrPrac )Wypłata ( IdWypłaty,Wysokość, NrPrac ) Osoba( NrOsoby, Nazwisko, RokUrodz )Adres( NrAdresu, Miejsce, NrOsoby )Mama( NrOsoby, NrOsoby )Tata( NrOsoby, NrOsoby )

Czytelna pojęciowa struktura zamieniła się na 11 nieczytelnych schematów relacji

Pojawiły się nowe atrybuty - klucze

Semantyka wyrażona poprzez licznościzostała częściowo zgubiona

Semantyka dziedziczenia została zgubiona

Odtworzenie semantyki - użytkownik musizrobić explicite poprzez zapytania SQL

Page 43: Bazy danych

Niezgodność modelu pojęciowego i relacyjnego(2)

FirmaNazwaMiejsce *

PracownikZawód *

OsobaNazwiskoImię *Adres *

Firma( NrF, Nazwa)

Lokal( NrF, Miejsce) Zatrudnienie( NrF, NrP)

Pracownik( NrP, NrOs)

Osoba( NrOs, Nazwisko)

Wyszkolenie( Zawód, NrP)

Dochód( NrDochodu, Wypłata, NrF, NrP)

Imiona( NrOs, Imię) Adresy( NrOs, Adres)

Oceny( NrOceny, Ocena, NrF, NrP)

ZatrudnienieWypłata *Ocena *

FZ PZ

Page 44: Bazy danych

Garby modelu relacyjnegoZ góry ustalony konstruktor typu danych (relacja), rozszerzany ad hoc przez wytwórcówsystemów relacyjnych. Brak złożonych obiektów. Informacje o pojęciach wyróżnialnychi manipulowalnych w rzeczywistości są rozproszone w krotkach wielu tablic.

Skojarzenie tych informacji następuje w zapytaniach SQL, przez co wzrasta ich złożoność oraz czas wykonania (optymalizacja zapytań tylko częściowo to rozwiązuje).

Brak środków do przechowywania danych proceduralnych. Wszelkie informacje wykraczające poza strukturę relacyjną (perspektywy, procedury bazy danych, BLOBy, aktywne reguły,...) są implementowane ad hoc.

Brak środków hermetyzacji i modularyzacji: wykroczenie przeciwko zasadom abstrakcji i oddzielenia implementacji od specyfikacji.

Brak uniwersalności środków dostępu do danych, powodujący konieczność zanurzenia ichw uniwersalne języki programowania, znacznie niższego poziomu; niezgodność impedancji(impedance mismatch). Niespełnione obietnice przetwarzania makroskopowego (wiele-w-tym-samym-czasie); powrót do niewygodnej techniki jeden-w-tym-samym-czasie.

Brak wyspecjalizowanych środków do realizacji powiązań pomiędzy danymi.

Niespójne mechanizmy wartości zerowych, brak wariantów, brak porządku w relacjach.

Page 45: Bazy danych

Obiektowe bazy danych

Teza: bazy danych zawsze były obiektowe, chociaż nie realizowały wszystkichpojęć obiektowości, takich jak klasy, metody i dziedziczenie.

Teza: bazy danych zawsze były obiektowe, chociaż nie realizowały wszystkichpojęć obiektowości, takich jak klasy, metody i dziedziczenie.

Podstawowy wyróżnik: trwałe obiekty + identyfikatory obiektów

Docelowa tendencja - ortogonalna trwałość:Docelowa tendencja - ortogonalna trwałość:

Programista podczas programowania nie musi nic wiedzieć o bazie danych,operując na jej obiektach tak jak na obiektach/zmiennych programu.Baza danych powinna być niewidoczna (przezroczysta).

Programista podczas programowania nie musi nic wiedzieć o bazie danych,operując na jej obiektach tak jak na obiektach/zmiennych programu.Baza danych powinna być niewidoczna (przezroczysta).

Zmniejszenie dystansu pomiędzy fazami analizy, projektowania i implementacji

Zwiększenie poziomu abstrakcji w myśleniu programistów i użytkowników

Uwzględnienie informacji proceduralnej (metody)

Stworzenie nowego potencjału dla ponownego użycia

Page 46: Bazy danych

Co zdarzyło się w systemach po przejściu na technologie obiektowe?

Część informacji semantycznej, która tradycyjnie tkwiła w bibliotekach, typach, aplikacjach, modułach została umieszczona i usystematyzowana w ramach klas.

Relacyjna struktura aplikacji

... ... ...... ... ...

... ... ...... ... ...

... ... ...... ... ...

TypyBiblioteki procedur i funkcji

Modułyaplikacyjne

Słowniki,katalogi

Procedury bazy danych,perspektywy, reguły

Pasywne dane(relacje)

Powiązane obiektyKlasy i typy

...

...

...

...

...

...

.........

...

...

......

......

Obiektowa struktura aplikacji

...

Biblioteki procedur i funkcji

Modułyaplikacyjne

Słowniki,katalogi

Procedury bazy danych,perspektywy, reguły

Page 47: Bazy danych

Dodatkowe zalety baz obiektowych

Klasyczne funkcje SZBD:

Zarządzanie pamięcią zewnętrzną Zarządzanie schematem Sterowanie współbieżnością Zarządzanie transakcjami Odtwarzalność Przetwarzanie zapytań Kontrola dostępu

Do tych funkcji dołożone są:

Złożone obiekty Typy definiowane przez użytkownika Tożsamość obiektów Powiązania pomiędzy obiektami Hermetyzacja, interfejsy do obiektów Typy i/lub klasy oraz hierarchia dziedziczenia Przełanianie/przeciążanie/późne wiązanie Kompletność obliczeniowa (pragmatyczna)

Page 48: Bazy danych

Manifest obiektowych baz danychM.Atkinson, F.Bancilhon, D.DeWitt, K.Dittrich, D.Maier, S. Zdonik

Cechy obowiązkoweCechy obowiązkowe

złożone obiekty

tożsamość obiektów

hermetyzacja

typy lub klasy

dziedziczenie

przesłanianie z dynamicznym wiązaniem

rozszerzalność

kompletność obliczeniowa

trwałość

zarządzanie pamięcią pomocniczą

współbieżność, odtwarzanie

udogodnienia dla zapytań ad hoc

Cechy opcyjneCechy opcyjnewielokrotne dziedziczenie, kontrola typów, rozproszenie, transakcje projektowe, wersje

Cechy otwarteCechy otwarteparadygmat programowania, metody reprezentacji obiektów,system typów, jednolitość (kompatybilność)

Page 49: Bazy danych

Mimo licznych zalet obiektowe bazy danych są ciągle w fazie embrionalnej

Page 50: Bazy danych

Jak budujemy bazę danych?

• w sposób przyrostowy

- dla każdego elementu osobna baza, potem próba łączenia

- wada – brak globalnej wizji (redundancja, niespójność)

• od razu jako zintegrowany system

Page 51: Bazy danych

Budując bazę, bierzemy pod uwagę:

• jeden system (model) reprezentacji danychnp. model relacyjny

• współbieżny dostęp do bazy przez wielu użytkowników

• ochrona danych

• niezależność (zależność) określonych danych

Page 52: Bazy danych

Aplikacje korzystają z bazy:

• poprzez model danych– zbiór zasad dotyczących struktur danych,– warunki wspomagające utrzymanie zgodności z

rzeczywistością

• system zarządzania bazą danych– zbiór narzędzi dających dostęp do danych i ich

aktualizacji– np. wyszukiwanie danych, ochrona i dostęp do

danych, konta użytkowników

Page 53: Bazy danych

Modelowanie danych

• specyfikacja wymagań użytkowników• określenie modelu systemowego• konfiguracja sprzętu i oprogramowania

projektowanie bazy ~ 80% czasu tworzeniaimplementacja bazy ~ 20% czasu tworzenia

Page 54: Bazy danych

Zaawansowane funkcje baz danych…

• Transakcje• Replikacja bazy danych• Procedury i wyzwalacze [triggery]• Klucze obce i więzy integralności• Podzapytania• Wielowątkowość i blokowanie

Page 55: Bazy danych

Popularne serwery sieciowych baz danych

NAZWA PRODUCENT LICENCJA

MySQL MySQL AB Open source

PostgreSQL PostgreSQL

Group

Open source

MsSQL Microsoft Closed source

ODBC Microsoft Closed source

Oracle Oracle Closed source

Page 56: Bazy danych
Page 57: Bazy danych
Page 58: Bazy danych

Hurtownia danych

HurtowniaDanych

Warstwa danych właściwych

TSA

Składnice danych

ODSZasilaniehurtowni:

czyszczenie,transformacja,ładowanie, itd.

Dystrybucjadanych

Daneoperacyjne

Dane zewnętrzneMetadane Użytkownicy

końcowi

Page 59: Bazy danych

Schemat gwiazdy

Page 60: Bazy danych

Schemat płatka śniegu

Page 61: Bazy danych

Integracja danych

Repozytoriummetadanych

Hurtownia danych

Load

Extract

Adaptery

Bazy danych, pliki Inne aplikacje

Usługi transportowe

Administrowanie Usługimetadanych

Menedżermapowania danych

Import/eksportmetadanych

Page 62: Bazy danych

Indeksacja bazy danych

Page 63: Bazy danych

Sposób rozwijania zapytań do

bazy danych

SQL

Nazwa Sieciowa

Dysk

Adres IP

Page 64: Bazy danych

Zapytania do bazy danych oraz odpowiedzi

Page 65: Bazy danych

Typowa interakcja „klient-serwer” w Internecie

Page 66: Bazy danych

Pośrednie sięganie do internetowej bazy danych

Page 67: Bazy danych

Model trójwarstwowy sieciowej bazy

danych

Page 68: Bazy danych

Protokół HTTP

Page 69: Bazy danych

Używanie sieciowej bazy danych z wykorzystaniem apletów Javy

JDBC = (Java Data Base Connectivity)

Page 70: Bazy danych

Dla potrzeb medycyny bardzo często wykorzystywane są multimedialne

bazy danych, zawierające obok danych tekstowych i liczbowych

także zapisy różnych danych multimedialnych rejestrowanych

u pacjenta – w szczególności różnych obrazów medycznych.

Page 71: Bazy danych

Najbardziej znanym przykładem są tu bazy PACS

Page 72: Bazy danych

Mają one różne zastosowania

Page 73: Bazy danych

Przykład japońskiego systemu typu PACS

Page 74: Bazy danych

Przykład multimedialnej medycznej bazy danych (mammografia)

Page 75: Bazy danych

Przykład indeksacji

(tworzenia opisu przypadku)

w multimedialnej bazie danych.

Opisy takie sporządza się w celu łatwego wyszukiwania

danych.

Ręczne sporządzanie

takich opisów jest bardzo

czasochłonne podczas gdy

automatyzacja tej operacji jest

bardzo trudna.

Page 76: Bazy danych

Architektura złożonej hurtowni danych

Inne źródła danych

ZESTAWIENIA

METADANE

DANE SZCZEGÓŁOWE

Przepisywanie zapytań, kontrola

poprawności

Ekstrakcja

Sukcesywne

generowanie i odświeżanie

zestawień

Pozyskiwanie Transformacja Wprowadzanie

HURTOWNIA DANYCH

Operacyjne bazy danych

Hurtownie tematyczne (Data Marts)

Narzędzia analityczne

Page 77: Bazy danych

Wyszukiwanie obrazów w multimedialne bazie danych bez angażowania czynnika ich

automatycznego rozumienia

Page 78: Bazy danych

Różne uproszczone schematy wyszukiwania

Page 79: Bazy danych

Przykładowe interfejsy użytkownika stosowane w systemach wyszukiwania

obrazów

Page 80: Bazy danych

VISUALSEEK

Page 81: Bazy danych
Page 82: Bazy danych

VIDEOQ

Page 83: Bazy danych

Przykład odpowiedzi systemu wyszukiwania obrazów

Page 84: Bazy danych

Automatyczna anotacja obrazów na bazie procesu uczenia

Page 85: Bazy danych

Podział obrazu na regiony będący kluczem do procesu auto-anotacji

Obraz poddawany auto-anotacji

Obraz podzielony na regiony do auto-anotacji

Page 86: Bazy danych

Różnej jakości automatyczna anotacja przykładowych obrazów