450 likes | 581 Views
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ą,
E N D
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ą, • 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, 6th Edition, Rob & Coronel
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, 6th Edition, Rob & Coronel
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, 6th Edition, Rob & Coronel
Przykład: Sprzedaż przypadająca na danego pracownika w dwóch działach Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel
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 (daneo danych) Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel
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, 6th Edition, Rob & Coronel
DBMS pozwala na zarządzanie danymibardziej 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, 6th Edition, Rob & Coronel
DBMS zarządza interakcją pomiędzy użytkownikami a bazą danych Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel
Typy baz danych • Single-user: • Obsługa tylko jednego użytkownika w danej chwili • Desktop: • Baza danych typu Single-useruruchomiona na komputerze osobistym • Multi-user: • Obsługa wielu użytkowników w danej chwili Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel
Typy baz danych (kontynuacja) • Workgroup: • Baza danych typu Multi-userobsługująca małą grupę użytkowników lub pojedynczy oddział (wydział) • Enterprise: • Baza danych typu Multi-userobsługująca dużą grupę użytkowników lub całą korporację Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel
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, 6th Edition, Rob & Coronel
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, 6th Edition, Rob & Coronel
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, 6th Edition, Rob & Coronel
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, 6th Edition, Rob & Coronel
„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, 6th Edition, Rob & Coronel
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, 6th Edition, Rob & Coronel
Przykładowa zawartość pliku Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel
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, 6th Edition, Rob & Coronel
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, 6th Edition, Rob & Coronel
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, 6th Edition, Rob & Coronel
Przykład: zawartość pliku agenta Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel
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, 6th Edition, Rob & Coronel
Prosty system plików Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel
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, 6th Edition, Rob & Coronel
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, 6th Edition, Rob & Coronel
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, 6th Edition, Rob & Coronel
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, 6th Edition, Rob & Coronel
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, 6th Edition, Rob & Coronel
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, 6th Edition, Rob & Coronel
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, 6th Edition, Rob & Coronel
Przykładowe pola pliku Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel
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, 6th Edition, Rob & Coronel
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, 6th Edition, Rob & Coronel
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, 6th Edition, Rob & Coronel
Porównanie bazy danych i systemu plików Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel
Środowisko systemu baz danych • System baz danych składa się z 5-ciu podstawowych części: • Sprzętu (ang. hardware) • Oprogramowania (ang. software) • Systemu operacyjnego • Oprogramowania DBMS • Aplikacji i programów narzędziowych • Ludzi • Procedur • Danych Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel
Środowisko systemu baz danych(kontynuacja) Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel
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, 6th Edition, Rob & Coronel
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, 6th Edition, Rob & Coronel
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 orazinterfejsy 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, 6th Edition, Rob & Coronel
Metadata w Microsoft Access Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel
System przechowywania danych w Oracle Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel
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, 6th Edition, Rob & Coronel
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 Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel