wyklad4 DYEZXSIY2SAJAQK2CMHQYHTVDIR3AXC4QAXCM5Q








Bazy danych: wyklad 4




Wykład 4

 Potrzeby | Właściwości
| Zadania


Systemy zarządzania bazami danych -- podstawy


Jakie potrzeby wypełniają
Omówione dotąd narzędzia (i szereg innych, do których postaram się nawiązać
w formie dygresji w dalszym ciągu wykładu) stwarzają niezłe możliwości
elektronicznego przechowywania i przetwarzania danych, jednak w wielu sytuacjach
nie są one wystarczające.  Szczególnie w większych organizacjach (firmach,
instytucjach) pojawia się zapotrzebowanie na bardziej jednolity i systematyczny
model zarządzania wielkimi ilościami informacji, a przechowywanie danych
np. w plikach tekstowych o określonym ad hoc formacie, przetwarzanych za
pomocą tworzonych każdorazowo dla wąskich potrzeb skryptów i programów
opartych na standardowych narzędziach manipulacji plikami i ich zawartością
nie wystarcza.  Dla wypełnienia tego zapotrzebowania stworzono właśnie
systemy zarządzania bazami danych (Database Management Systems,
DBMS), które stanowią główny temat naszych zajęć. O istnieniu potrzeby
skorzystania z DBMS w danej sytuacji świadczyć mogą następujące czynniki:


powiązane ze sobą informacje przechowywane są oddzielnie (w różnych plikach,
i być może na różnych komputerach), uzyskanie odpowiedzi na zapytania wymagające
czerpania informacji z różnych zbiorów danych staje się częstą potrzebą
i okazuje się coraz trudniejsze;


coraz częściej pojawiają się zadania, których wykonanie wymaga przenoszenia
informacji poza komputerem i przetwarzania niezautomatyzowanego, np. raporty
tworzone przez jeden z działów organizacji muszą być przekazywane do dalszego
przetwarzania innemu działowi zanim przyjmą postać ostateczną, z koniecznością
pośredniej konwersji formatów itp. zabiegów ,,ręcznych'', stwarzających
okazje do powstawania błędów i opóźnień;


te same dane są powielane w wielu różnych plikach, obsługiwanych przez
różne narzędzia, prowadząc do zbędnej komplikacji systemu, nadmiernych
kosztów i trudności w utrzymaniu spójności danych;


rosnąca objętość informacji zaczyna przekraczać możliwości dotychczas używanych
narzędzi, prowadząc do spadku wydajności systemu;


coraz trudniejsze staje się pogodzenie potrzeby wspólnego dostępu wielu
użytkowników do tych samych danych z koniecznością utrzymania ich integralności,
tj. ,,porządku'', zgodności z założonymi formatami i z aktualnym stanem
faktycznym, oraz ze złożonymi formami kontroli dostępu, tj. wymogiem wyraźnego
definiowania zakresu dopuszczalnych operacji dla każdego użytkownika.

Łatwo jest wymienić wiele przykładów sytuacji, w których skorzystanie z
DBMS jest wskazane:


dane personalne o pracownikach większej firmy lub instytucji wykorzystywane
są równolegle np. przez dział kadr, dział płacowy, dział socjalny i być
może jeszcze inne.  Zarazem część tych danych (np. o wysokości wynagrodzeń)
może mieć charakter poufny, na mocy przepisów wewnętrznych firmy lub praw
ogólnych, dostęp do odczytu danych (a tym bardziej ich modyfikacji) musi
być ściśle reglamentowany i udostępniany jedynie w zakresie koniecznym
dla zadań danego użytkownika;


dane o stanie magazynu firmy muszą być zarazem modyfikowane na podstawie
raportów o sprzedaży, jak i dostępne dla działu zaopatrzenia w celu odpowiedniego
uzupełniania zapasów; może z nich równiez korzystać np. dział marketingu
w celu planowania promocji.

Inne typowe obszary zastosowań aplikacji opartych na DBMS to systemy finansowo-księgowe,
bazy danych o klientach firmy, spisy abonentów danej usługi (telekomunikacja,
elektrownie itp.), systemy ewidencji ludności, katalogi asortymentu, katalogi
biblioteczne, i wiele innych.

Właściwości DBMS
Z bazą danych w używanym tu węższym znaczeniu, i z systemem zarządzania
bazą danych (DBMS), mamy do czynienia wtedy, gdy dane przechowywane są
w sposób scentralizowany w jednym miejscu, i ponadto wszelkie działania
na tych danych zarządzane są w sposób scentralizowany, poprzez wyspecjalizowane
w tym celu oprogramowanie. Oznacza to m. in., że w bazie danych przechowywane
informacje ujęte są w pewną logiczną strukturę, ,,rozumianą'' przez DBMS,
i operacje na danych definiuje się w terminach tej logicznej struktury
(a nie w
terminach np. umiejscowienia danych w konkretnym pliku, z punktu widzenia
systemu plików obsługiwanego przez system operacyjny). Omówimy teraz krótko
główne właściwości DBMS, pożądane z punktu widzenia wcześniejszych uwag
o zastosowaniach.


Współdzielenie danych

Informacje przechowywane w bazie danych są zazwyczaj przeznaczone do
wykorzystania przez wielu użytkowników, często w tym samym czasie. DBMS
ma więc za zadanie zapewnić efektywne mechanizmy wielodostępu.  W
tym celu często stosuje się w budowie DBMS tzw. model klient-serwer: programy
używane przez użytkowników (klienci) są oddzielone od programu bezpośrednio
wykonującego operacje na danych (serwera); zazwyczaj klienci komunikują
się z serwerem poprzez mechanizmy sieciowe, korzystając z określonego protokołu
komunikacji -- umożliwia to uruchamianie klientów na innych komputerach
niż serwer, co zwiększa bezpieczeństwo (dostęp klientów do serwera jest
ograniczony do operacji możliwych w ramach protokołu) i odciąża serwer
np. od zadań związanych z końcową obróbką i prezentacją danych będących
wynikiem zapytania.

Integracja danych

Centralne składowanie wszystkich danych dotyczących danego obszaru
działalności umożliwia uniknięcie zbędnych powtórzeń tych samych informacji
-- ułatwiając utrzymanie spójności, oraz usprawnia uzyskiwanie odpowiedzi
na pytania złożone -- wymagające czerpania informacji z różnych logicznie
zbiorów danych.

Integralność danych

Łatwiej jest również utrzymać poprawność i aktualność informacji składowanej
centralnie; ponadto powierzenie faktycznych operacji na danych jednemu,
dobrze sprawdzonemu programowi serwera zmniejsza ryzyko naruszenia integralności
danych w stosunku do sytuacji, gdy operacje te wykonywane są za pomocą
wielu, tworzonych niezależnie i często ad hoc narzędzi.

Bezpieczeństwo danych

Scentralizowanie dostępu do danych umożliwia zastosowanie w DBMS własnego
mechanizmu kontroli i autoryzacji dostępu, bardziej szczegółowego aniżeli
umożliwia to sam system operacyjny w stosunku do dostępu do plików. 
Dzięki wykorzystaniu modelu klient-serwer nie jest konieczne, aby każdy
użytkownik posiadał dostęp do maszyny serwera bazy danych poprzez inne
mechanizmy, aniżeli protokół komunikacyjny danego DBMS.

Abstrakcja i niezależność danych

Ponieważ końcowy użytkownik bazy danych jest oddzielony przez DBMS
od wewnętrznych mechanizmów działania bazy danych, formatu zapisu itp.,
i ma tylko do czynienia (poprzez program klienta i ew. protokół komunikacji)
jedynie z logiczną strukturą danych, to ułatwia to rozwijanie aplikacji
korzystających z tych danych w kierunku nowych zastosowań czy np. wprowadzenie
zmian w wewnętrznej organizacji bazy danych bez konieczności zmian w klientach.


Zadania DBMS
Jądro DBMS -- w modelu klient-serwer, program serwera -- zajmuje się faktycznymi
operacjami związanymi z dostępem do fizycznego zapisu danych na urządzeniach
pamięci masowej. Operacje te zlecane są przez programy klienckie, z którymi
ma bezpośrednio do czynienia użytkownik końcowy, zazwyczaj za pośrednictwem
mechanizmów komunikacji sieciowej. ,,Językiem'' w jakim się komunikują
klienci z serwerem jest określony protokół wyższego poziomu (aplikacyjny).
Niestety, w przeciwieństwie do np. protokołu HTTP używanego w sieci WWW,
protokoły baz danych klient-serwer nie są zestandaryzowane -- DBMS każdego
producenta posługuje się właściwym sobie protokołem. Nierzadko powstaje
więc potrzeba posłużenia się dodatkowym pośrednictwem w postaci tzw. middleware
(np. sterowniki ODBC), aby uwolnić się od konieczności korzystania
jedynie z narzędzi dostarczonych przez producenta jądra DBMS w budowie
programów klienckich -- za cenę mniejszej wydajności i dodatkowej komplikacji
systemu.
Zadania realizowane przez jądro DBMS można sklasyfikować w sposób następujący:


Zarządzanie zbiorami danych

tworzenie nowych zbiorów (jednostek logicznej struktury DBMS, tj. baz
danych, tabel, ...)
usuwanie zbiorów
modyfikowanie struktury zbiorów
wstawianie, aktualizowanie i usuwanie danych


Wyszukiwanie informacji
w odpowiedzi na zapytania otrzymane od programów klienckich, jądro
bazy danych zwraca dane będące wynikiem odpowiedniego przeszukania bazy
danych, a programy klienckie zajmują się ich prezentacją użytkownikowi
po ewentualnej dalszej obróbce;



Zarządzanie bazą danych jako całością

tworzenie kont użytkowników
definiowanie uprawnień dostępu
monitorowanie działania bazy danych







 Strona główna | Dalej
| Początek


  Strona ta była oglądana 4970 razy


Mon Nov 2 1998  Robert
J. Budzyński   <Robert.Budzynski@fuw.edu.pl>




Wyszukiwarka

Podobne podstrony:
Sieci komputerowe wyklady dr Furtak
Wykład 05 Opadanie i fluidyzacja
WYKŁAD 1 Wprowadzenie do biotechnologii farmaceutycznej
mo3 wykladyJJ
ZARZĄDZANIE WARTOŚCIĄ PRZEDSIĘBIORSTWA Z DNIA 26 MARZEC 2011 WYKŁAD NR 3
Wyklad 2 PNOP 08 9 zaoczne
Wyklad studport 8
Kryptografia wyklad
Budownictwo Ogolne II zaoczne wyklad 13 ppoz
wyklad09
Sporzadzanie rachunku przepływów pienieżnych wykład 1 i 2
fcs wyklad 5
Wyklad08 Zaopatrz wWode
Wyklad3

więcej podobnych podstron