Bazy danych informacje
podstawowe
Program zajęć
" Bazy danych i systemy informacyjne z bazami
danych
" Model relacyjny
" Wprowadzenie do projektowania struktur relacyjnych
" Języki zapytań
" Systemy zarządzania bazami danych
" Tworzenie aplikacji w systemach z bazami danych
" Wprowadzenie do MS Access
Literatura
" M.J. Hernandez: Bazy danych dla zwykłych
śmiertelników. Mikom, 1998.
" R.K. Stephene, R.R. Plew: Relacyjne bazy danych
- projektowanie. Robomatic, 2003.
" Wellesley Software: SQL Język relacyjnych baz
danych. WNT, 1995.
" T. Conolly, C. Begg: Systemy baz danych. RM
2004.
" T. Traczyk, Wykłady z baz danych,
http://www.ia.pw.edu.pl/~ttraczyk/
Bazy danych i systemy informacyjne
z bazami danych
" Co to jest baza danych i do czego służy
" Rola baz danych we współczesnych
systemach informacyjnych
" Architektury systemów z bazami danych
" Modele danych w bazach danych
" Specyfika projektowania i użytkowania
systemów informacyjnych z bazami danych
" Systemy OLTP i OLAP
Bazy danych
Czym jest baza danych Przykładowe zastosowania baz
danych
" Pamięć trwała danych
(persistent data) " Systemy finansowo-księgowe
" Określona struktura i reguły " Systemy wspomagające
integralności zarządzanie
" Rejestry i kartoteki (np. publiczne)
Cele użytkowania baz danych " Systemy rezerwacji (np. lotniczej)
" Niezawodność zapisu " Systemy internetowe (np. sklepy
elektroniczne)
" Integralność danych
" Sprawność zapytań
Alternatywy dla baz danych
" Wygodne interfejsy
" Systemy plikowe
" Wielodostęp
systemy spadkowe, język Cobol
" Zabezpieczenia dostępu
prywatne formaty
" XML
Systemy informacyjne z bazami
danych
Współczesne profesjonalne systemy informacyjne z reguły wykorzystują bazy danych. W ogromnej
większości przypadków stosowane są systemy relacyjne.
" Dlaczego baza danych stanowi dobry fundament systemów informacynych?
" Bezpieczeństwo
zabezpieczenia dostępu
niezawodność
ograniczenia integralności
możliwość scentralizowanego administrowania danymi
przetwarzanie transakcyjne
" Wydajność
wydajne przetwarzanie transakcji
szybkie wyszukiwanie
" Wielodostęp
Otwartość
elastyczność dostępu do danych
współdziałanie z różnymi zródłami danych
" Możliwości rozwoju
skalowalność
przenośność
możliwości pracy rozproszonej
Składniki systemów informacyjnych z
bazami danych
Baza danych
" System zarządzania bazą danych (DBMS - Database Management System)
jest obowiązkowym pośrednikiem między programami a danymi
wymusza właściwe operowanie danymi
realizuje zapytania i manipulacje danymi zlecone przez programy
" Metadane (słownik)
struktura danych
reguły integralności
prawa dostępu
" Dane
" Języki dostępu do danych
język definiowania danych
język manipulowania danymi
język zapytań
Aplikacja
" Warstwa sieciowa
" Środowiska wykonania aplikacji (runtime, serwery aplikacyjne, kontenery itp.)
" Moduły aplikacji
Architektury systemów z bazami
danych
Architektura jednokomputerowa Architektura ze współdzieleniem plików
" Budowa " Budowa
wszystkie funkcje w komputerze
wszystkie funkcje
klienta
" w jednym komputerze
wiele programów
" niekiedy w jednym
" pełni funkcję lokalnych DBMS
programie
" współdzieli te same pliki danych (na
serwerze plików lub w sieci peer-to-
" Problemy
peer)
brak wielodostępu
" Problemy
słaba koordynacja wielodostępu
brak scentralizowanych zabezpieczeń
dostępu i integralności danych
model dane do zapytania
nie nadaje się do zastosowań
profesjonalnych (co najwyżej SOHO)
Architektury systemów z bazami
danych
Architektura klient-serwer
" Budowa
klient specjalny program (runtime)
" prezentacja
" logika aplikacji
" część przetwarzania danych
serwer danych DBMS
" składowanie danych
" realizacja zapytań
" przetwarzanie danych
" Zalety
możliwość budowy silnych systemów z
dość słabych komputerów model
zapytanie do danych
" Problemy
konieczność instalacji specjalizowanego
oprogramowania na klientach
trudne administrowanie klientami
duże koszty eksploatacji komputerów-
klientów
Architektury systemów z bazami
danych
Architektura wielowarstwowa
" Klient przeglądarka WWW
prezentacja
część logiki aplikacji (gruby klient)
" Serwer aplikacyjny
serwer HTTP (może być w osobnej warstwie)
wykonywanie aplikacji
" logika aplikacji
" część przetwarzania danych
" Serwer danych DBMS
składowanie danych
przetwarzanie danych
Cienki klient
" Istota
na komputerze klienta tylko przeglądarka
WWW
klient realizuje tylko prezentację
" Zalety
brak problemów z administrowaniem
klientami
powszechnie znane środowisko pracy
darmowe oprogramowanie
całkowita przenośność
scentralizowane administrowanie
bezpieczeństwo
Modele danych w bazach danych
Model hierarchiczny
" Cechy podstawowe
struktura danych ma postać drzewa
" węzły: typy opisywanych obiektów
" łuki: związki typu ojciec-syn
opis obiektu (rekord) zbudowany z pól
zawierających dane opisujące obiekt
związki zrealizowane jako wskazniki
łatwo realizuje się tylko jeden rodzaj związku
między dwoma typami obiektów
" Znaczenie praktyczne
system IBM IMS (1978)
" bardzo wielkie dane zgromadzone
" poprzednik użyty w programie Apollo
nowych projektów nie robi się
Model sieciowy
" Struktura danych ma postać grafu (sieci)
" Związki reprezentowane przez wskazniki
" Znaczenie wyłącznie historyczne
Modele danych w bazach danych
Model relacyjny
" Cechy podstawowe
dane zawarte w tabelach
" liczba kolumn i typy stałe
" liczba wierszy zmienna
" wiersze nie mają numerów ani adresów
" wiersze identyfikowane przez wartości
wybranych kolumn (kluczy)
związki pomiędzy wierszami tabel
" zdefiniowane poprzez zależności
między wartościami wybranych kolumn
" nie ma wskazników
" Znaczenie praktyczne
model dominujący we wszelkich
dziedzinach zastosowań
" Ograniczenia
mało naturalna reprezentacja danych
trudne operowanie na złożonych
obiektach
" brak złożonych typów danych
" dane rozproszone w wielu tabelach
ograniczona podatność na zmiany
modelu
Modele danych w bazach danych
Model obiektowy " Zalety
dość naturalna reprezentacja świata
" Cechy podstawowe
łatwość działania na złożonych
obiekt w bazie reprezentuje obiekt w
obiektach duża podatność na zmiany
świecie zewnętrznym
" Znaczenie praktyczne
łączne modelowanie danych i zachowań
stosowany powszechnie w
złożone typy danych
programowaniu
tożsamość obiektu niezależna
w bazach danych w zasadzie tylko w
od zawartości danych
zastosowaniach naukowych lub
dziedziczenie (inheritance):
eksperymentalnych
" strukturalne: potomek dziedziczy
przewidywana ewolucja baz
strukturę danych
relacyjnych w kierunku relacyjno-
" behawioralne: potomek dziedziczy
obiektowych
metody i operatory
enkapsulacja: wnętrze obiektu dostępne
jedynie w sposób w nim zdefiniowany
polimorfizm: tak samo nazwane metody
i operatory działają swoiście w
zależności od klasy obiektu
Specyfika systemów z bazami danych
Cechy specyficzne systemów informacyjnych z Pożądane cechy systemów informacyjnych
bazami danych
" Podatność na zmiany
" Zwykle bardzo złożone
łatwość wprowadzania zmian
złożone funkcjonalnie
niski koszt zmian (w tym testów regresyjnych)
technicznie bardzo skomplikowane
niskie ryzyko zmian
" Tworzone na indywidualne zamówienie
" Stabilność technologii
często o niepowtarzalnej funkcjonalności
technologia w miarę szeroko wykorzystywana
bez możliwości długiego i masowego
stabilna pozycja rynkowa dostawców
testowania (np. beta-wersji)
duże szanse wsparcia w okresie wielu lat
" Przeznaczone do długoletniej eksploatacji
technologia rozwijająca się
silnie zmieniające się w czasie eksploatacji
" Otwartość
" Często przeznaczone do użycia w skali
zdolność do współdziałania (interfejsy, bramki
korporacyjnej (enterprise) itp.)
masowy wielodostęp internacjonalizacja
dostępność 7 x 24 rozszerzalność
" Silnie powiązane z innymi istniejącymi " Przenośność
wcześniej i równolegle systemami
sprzęt i systemy operacyjne
ładowanie wcześniej istniejących danych architektury
współdziałanie
" Skalowalność
stare technologie (legacy systems)
upsizing, dcwnsizing
VLDB (Very Large Databases)
Typy systemów z bazami danych
Systemy transakcyjne Systemy analityczne
(OLTP On Line Transaction Processing) (OLAP On Line Analytical Processing)
" Główne zadanie " Główne zadanie
gromadzenie danych analiza danych do celów wspomagania
decyzji
" Typowe środowisko
" Typowe środowisko
operacyjne bazy danych
hurtownie danych
" Typowe operacje
" Typowe operacje
wielka liczba niewielkich transakcji
modyfikujących dane niewielka liczba wielkich ,,transakcji''
odczytujących dane
operacje zapisu i odczytu
operacje odczytu głównie
interaktywne i wsadowe
interaktywne
" Główne problemy
operacje zapisu jedynie wsadowe
wielodostęp
" Główne problemy
konieczność stałego utrzymania
wielka ilość danych (VLDB)
spójności danych w warunkach ciągłych
zmian analiza wielowymiarowa
maksymalizacja średniej wydajności
" Wspierane przez nowoczesne systemy
relacyjne
" Tradycyjna domena relacyjnych baz
danych
Wyszukiwarka
Podobne podstrony:
BAZY DANYCH Streszczenie z wykładówStrona polecenia do bazy danych2004 11 Porównanie serwerów relacyjnych baz danych Open Source [Bazy Danych]MySQL Mechanizmy wewnętrzne bazy danychBazy danych w CADPostać normalna (bazy danych) – Wikipedia, wolna encyklopediabazy danych01 Projektowanie relacyjnej bazy danych Czym jest relacyj2004 05 Rozproszone fraktale [Bazy Danych]bazy danych projekt infor w projekcieBazy danych(1)więcej podobnych podstron