Wykład 1

Post on 24-Jan-2016

35 views 0 download

description

Wykład 1. Systemy Baz Danych Na podstawie książki Database Systems: Design, Implementation, and Management , Sixth Edition, Rob and Coronel. W trakcie tego wykładu, poznamy :. różnicę pomiędzy danymi i informacją, - PowerPoint PPT Presentation

Transcript of Wykład 1

1

1

Wykład 1

Systemy Baz Danych

Na podstawie książki

Database Systems: Design, Implementation, and Management,

Sixth Edition, Rob and Coronel

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

2

W trakcie tego wykładu, poznamy:

• różnicę pomiędzy danymi i informacją,

• definicję baz danych, ich różne typy i dlaczego są one pomocne w procesie podejmowania decyzji

• dlaczego proces projektowania baz danych jest taki ważny

• jak współczesne bazy danych ewoluowały z systemów plików

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

3

W trakcie tego wykładu, poznamy:

• Wady systemu plików (jako prekursora baz danych)

• Czym baza danych różni się od systemu plików i jak funkcjonuje DBMS wewnątrz systemu baz danych

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

4

Dane czy Informacja• Dane:

– Surowe fakty; tworzą bloki informacji– Nieprzetworzona informacja

• Informacja:– Przetworzone dane w calu ujawnienia znaczenia

• Dokładne, istotne i podane na czas informacje są kluczem do podejmowania właściwych decyzji.

• Podejmowanie właściwych decyzji jest kluczem do „przeżycia” w środowisku globalnym.

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

5

Przykład: Sprzedaż przypadająca na danego pracownika w dwóch działach

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

6

Prezentacja bazy danych i DBMS

• Baza danych (ang. database) — współdzielona, zintegrowana struktura (komputerowa) która przechowuje:

– Dane użytkownika końcowego (surowe fakty)

– Metadata (dane o danych)

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

7

Prezentacja bazy danych i DBMS (kontynuacja)

• DBMS (ang. database management system):

– Zestaw programów do zarządzania strukturą bazy danych i do kontrolowania dostępu

– Powala na współdzielenie danych pomiędzy wiele aplikacji i użytkowników

– Pozwala na bardziej wydajne i efektywne zarządzanie danymi

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

8

DBMS pozwala na zarządzanie danymi bardziej wydajnie i efektywnie

• Użytkownicy mają ułatwiony dostęp do lepiej zarządzanych danych

– Promowanie zintegrowanych widoków operacji

– Prawdopodobieństwo wystąpienia braku spójności jest znacznie zredukowane

– Możliwość generowania szybkich odpowiedzi na zapytania typu „ad hoc”

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

9

DBMS zarządza interakcją pomiędzy użytkownikami a bazą danych

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

10

Typy baz danych

• Single-user:

– Obsługa tylko jednego użytkownika w danej chwili

• Desktop:

– Baza danych typu Single-user uruchomiona na komputerze osobistym

• Multi-user:

– Obsługa wielu użytkowników w danej chwili

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

11

Typy baz danych (kontynuacja)

• Workgroup:

– Baza danych typu Multi-user obsługująca małą grupę użytkowników lub pojedynczy oddział (wydział)

• Enterprise:

– Baza danych typu Multi-user obsługująca dużą grupę użytkowników lub całą korporację

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

12

Lokalizacja bazy danych

• Scentralizowane:

– Obsługa danych zlokalizowanych w jednym określonym miejscu

• Rozproszone:

– Obsługa danych rozproszonych pomiędzy wiele miejsc

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

13

Bazy danych – podział ze względu na zastosowanie

• Transakcyjna (lub produkcyjna):– Obsługa codziennych operacji w firmie

• Hurtownie danych:– Przechowuje dane używane uzyskiwania informacji

niezbędnej to podejmowania taktycznych lub strategicznych decyzji

• Takie decyzje wymagają ogromnej ilości danych

– Często używana do przechowywania historycznych danych.

– Ich struktura jest odmienna.

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

14

Dlaczego proces projektowania jest taki ważny

• Definiujemy oczekiwane działanie i użycie bazy danych

• Różne podejścia muszą być stosowane do różnych typów baz danych

• Unikamy nadmiarowości danych (niepotrzebnie duplikowanych)

• Źle zaprojektowana baza danych generuje błędy to prowadzi do podjęcia błędnych decyzji może to spowodować upadek firmy

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

15

Co było przed bazami danych?Pliki i systemy plików (plikowe)

• Chociaż zarządzanie danymi poprzez system plików jest przestarzałe, to :– Zrozumienie relatywnie prostej charakterystyki systemu

plików pozwala na lepsze zrozumienie istoty projektowania baz danych

– Świadomość problemów występujących przy zarządzaniu systemem plików pomaga unikać podobnych problemów z DBMS

– Znajomość systemu plików jest pomocna gdy planujesz konwersję przestarzałego systemu plików do DBMS

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

16

„Ręczne” systemy plików

• Składały się ze zbioru plików (akt, dokumentów papierowych) przetrzymywanych w gablocie.

• Schemat folderów był opracowany na podstawie oczekiwanego użycia danych

• Taki system był odpowiedni dla malej ilości danych i niewielkiego systemu raportowania

• Odszukiwanie i korzystanie z danych w rosnącym zbiorze folderów plików (akt) stawało się czasochłonne i nieefektywne.

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

17

Od ręcznego do komputerowego systemu plików

• Technicznie skomplikowany proces, wymaga pracy wielu specjalistów od przetwarzania danych (ang. data processing -DP)

• Specjaliści DP tworzyli strukturę plików, pisali oprogramowanie i projektowali aplikację do obsługi systemu plików

• Powstało wiele odmiennych systemów plików• Początkowo, struktura plików komputerowych była

podobna do plików ręcznych (zobacz rysunek 1.3)

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

18

Przykładowa zawartość pliku

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

19

Podstawowa terminologia (dla plików)

Dane : surowe fakty, takie jak : numery telefonów , data urodzin lub wielkość sprzedaży. Dane nie mają wielkiego znaczenia dopóki nie będą ułożone w pewien logiczny sposób. Najmniejszy „kawałek” informacji może być rozpoznany przez komputer (np. jeden znak). Pole: Zbiór znaków alfanumerycznych który ma specificzne znaczenie. Pole definuje i przechowuje dane Rekord: Logicznie połaczony zbiór pól które opisują osobę, miejsce lub rzecz. Plik: Zbiór powiązanych rekordów.

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

20

Przykład wczesnego projektowania baz danych

• Specjaliści DP pisali programy do tworzenia raportów :– Miesięcznej sprzedaży różnego typu polis

ubezpieczeniowych przez agentów

– Miesięcznej listy klientów którzy będą dokonywali wznowienia polis

– Sprzedaży polis i ich typów przez poszczególnych agentów

– Sprawozdań wysyłanych do klientów

• Dodatkowe raporty były przygotowywane gdy zachodziła taka potrzeba

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

21

Przykład wczesnego projektowania baz danych (kontynuacja)

• Inne działy wymagały również baz danych specjalnie dla nich

– Baza danych SPRZEDAŻ dla działu sprzedaży

– Baza danych AGENT dla działu osobowego

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

22

Przykład: zawartość pliku agenta

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

23

Ewolucja prostego systemu plików

• Od czasu gdy liczba baz danych rosła, ewoluowały też systemy plików

• Każdy plik używał innej aplikacji do obsługi.

• Każdy plik był przechowywany przez użytkownika lub grupę użytkowników którzy zlecili stworzenie tego pliku.

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

24

Prosty system plików

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

25

Prosty system plików (kontynuacja)

• Rozbudowa systemu wymagała nowych umiejętności (programistycznych) od specjalistów DP

• Dodatkowi programiści byli wymagani

• Specjaliści DP zostali podzieleni na DP managerów DP, i kierowników DP

• Podstawowymi zadaniami specjalistów DP pozostało programowanie

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

26

Problemy z plikowym systemem zarządzania danymi

• Każde zadanie wymaga programowania w językach 3-ciej generacji (3GL)

– Programista musi dokładnie zdefiniować zadanie i to w jaki sposób musi to być zrobione

• Współczesne bazy danych korzystają z języków 4-tej generacji (4GL)

– Pozwalają użytkownikowi na zdefiniowanie co musi być zrobione bez potrzeby definiowania jak to ma być zrobione

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

27

Programowanie w 3GL

• Czasochłonne• Programista musi znać fizyczną strukturę

plików• Gdy system rozrasta się to zarządzanie

dostępem do plików staje się trudniejsze i prowadzi do niesprawności systemu

• Skomplikowane kodowanie wymaga precyzyjnego umiejscowienia plików, komponentów systemu i charakterystyk danych

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

28

Programowanie w 3GL (kontynuacja)

• Zapytania typu „Ad hoc” są niemożliwe• Pisanie programów do tworzenia nowych

raportów jest czasochłonne• Gdy liczba plików wzrasta, zarządzanie

systemem staje się coraz trudniejsze• Wprowadzanie zmian do istniejącej struktury

plików jest bardzo trudne• Zmiany w strukturze pliku wymagają

modyfikacji we wszystkich programach które korzystają z tego pliku

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

29

Programowanie w 3GL (kontynuacja)

• Jakiekolwiek modyfikacje po prostu generują błędy, dlatego wymagany jest dodatkowy czas na debugowanie programu.

• Wprowadzenie zagadnień ochrony danych jest bardzo trudne i dlatego często omijane

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

30

Zależności strukturalne i danych

• Zależność strukturalna – Dostęp do pliku zależy od jego struktury

• Zależność danych – Zmiany w strukturze bazy danych powodują

zmiany w dostępie programu do danych

– Logiczny format danych • Jak ludzie widzą dane

– Fizyczny format danych • Jak komputer „widzi” dane

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

31

Definicje pól i konwencje nazewnictwa

• Elastyczne definicje rekordów „przewidują” wymagania dla procesu raportowania poprzez podział pierwotnych pól na komponenty

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

32

Przykładowe pola pliku

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

33

Nadmiarowość danych

• Nadmiarowość danych prowadzi do niespójności danych

– Różne i sprzeczne wersje tych samych danych pojawiają się w różnych miejscach

• Błędy najczęściej powstają gdy dokonujemy zmian w wielu miejscach danego pliku i powtarzamy tą czynność w jednym lub wielu plikach

• Anomalie danych pojawiają się gdy wymagane zmiany w nadmiarowych danych nie są zakończone sukcesem

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

34

Anomalie danych

• Anomalie modyfikacji

– Mają miejsce gdy dokonujemy zmian w istniejących rekordach

• Anomalie wstawiania

– Mają miejsce gdy wprowadzamy nowe rekordy

• Anomalie kasowania

– Mają miejsce gdy kasujemy rekordy

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

35

Baza danych vs. System plików

• Wrodzone problemy systemu plików motywują nas do budowy i rozwoju prawdziwych baz danych

• System plików

– Wiele oddzielnych i niezależnych plików

• Baza Danych

– Logicznie połączone dane przechowywane w jednej strukturze

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

36

Porównanie bazy danych i systemu plików

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

37

Środowisko systemu baz danych• System baz danych składa się z 5-ciu

podstawowych części:1. Sprzętu (ang. hardware)

2. Oprogramowania (ang. software)• Systemu operacyjnego• Oprogramowania DBMS• Aplikacji i programów narzędziowych

3. Ludzi

4. Procedur

5. Danych

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

38

Środowisko systemu baz danych(kontynuacja)

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

39

Funkcje DBMS

• Wykonuje operacje które gwarantują integralność i spójność danych– Zarządzanie słownikiem danych

• Definiuje elementy danych i ich zależności– Zarządzanie magazynowaniem danych

• Przechowuje dane oraz formularze do wprowadzania danych i raportowania itp..

– Prezentacja i przetwarzanie danych • Przetwarza logiczne żądania na fizyczne

polecenia lokalizacji i pobierania żądanych danych

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

40

Funkcje DBMS (kontynuacja)

– Zarządzanie ochroną danych

• Narzuca reguły prywatności danych

– Sterowanie dostępem dla wielu użytkowników

• Tworzone są odpowiednie struktury tak aby wielu użytkowników mogło jednocześnie uzyskać dostęp do danych

– Tworzenie kopii zapasowych i przywracanie systemu

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

41

Funkcje DBMS (kontynuacja)

– Zarządzanie integralnością danych

• Wprowadza i egzekwuje reguły integralności w celu eliminacji problemów ze integralnością danych

– Języki dostępu do danych oraz interfejsy aplikacji i programowania

• Dostęp do danych poprzez język zapytań

– Bazodanowe interfejsy komunikacji

• Pozwalają bazie danych na akceptowanie żądań użytkowników przesyłanych siecią komputerową

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

42

Metadata w Microsoft Access

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

43

System przechowywania danych w Oracle

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

44

Podsumowanie

• Informacja jest pozyskiwana z danych które są przechowywane w bazie danych

• Do budowy i zarządzania bazą danych używamy DBMS

• Proces projektowania bazy danych definiuje jej strukturę

• Projektowanie jest bardzo ważne

Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel

1

45

Podsumowanie (kontynuacja)

• Pierwowzorem baz danych były systemy plików

• Ponieważ systemy plików nie posiadały DBMS, zarządzanie danymi było bardzo utrudnione (zwłaszcza gdy rosła l. plików)

• DBMS zostały wprowadzone aby przezwyciężać wewnętrzne słabości systemu plików