BAZY DANYCH Celem przedmiotu jest zapoznanie studentów z tematyką związaną z gromadzeniem i przetwarzaniem danych przy pomocy systemów informatycznych Bartman Jacek
2 POJĘCIA ( Wykład INFORMACJE I PRZEDMIOCIE Studia stacjonarne 15 h, prowadzący: dr inż. Jacek Bartman Studianiestacjonarne 10h prowadzący: dr inż. Jacek Bartman PODST TAWOWE Laboratorium Studia stacjonarne 30 h, prowadzący: dr inż. Jacek Bartman Studianiestacjonarne 15h prowadzący: dr inż. Jacek Bartman ECTS 3 pkt
3 Wykład WARUNKI ZALICZENIA obecność na 60 % wykładów zaliczenie z zajęć laboratoryjnych Laboratorium obecność na 80% zajęć zrealizowanie wszystkich przewidzianych ćwiczeń laboratoryjnych. zaliczenie kolokwiów MS Access MS SQL UWAGA: Kolokwia obejmują ją również zagadnienia teoretyczne przedstawiane na wykładzie
4 LITERATURA 1) Banachowski L., Chądzyńska A, Matejewski K. Relacyjne bazy danych : wykłady i ćwiczenia Warszawa Wyd. PJWSTK, 2009. 2) Bartman J. Bazy danych. Wydawnictwo UR 2013 3) Beynon Davies P. Systemy baz danych WNT Warszawa 2003 4) Hernandez M Projektowanie baz danych dla każdego: przewodnik krok po kroku Gliwice: Helion 2014. 5) Czapla Krystyna Bazy danych: podstawy projektowania i języka SQL Gliwice Helion, 2015 6) Rogulski M Bazy danych dla studentów: podstawy projektowania i języka SQL Warszawa WITKOM, 2012. 7) Ullman JD J.D., Widom J. Podstawowy kurs systemów baz danych Gliwice Helion, 2011.
5 BAZY DANYCH OBSZAR ANALIZY baza jest modelem pewnego aspektu rzeczywistości, rzeczywistość ta to obszar analizy rzeczy istotne nazywa się klasami lub encjami, np.: studenci, moduły, klasy mogą być powiązane, np.: którzy studenci jakie moduły zaliczają, klasy mają właściwości lub atrybuty, np.: studenci mają nazwiska, imiona, adresy itp.. klasy, atrybuty i związki muszą mieć jakąś reprezentację w bazie danych (baza musi być zaprojektowana) Obszar analizy Projektowanie bazy danych Schemat bazy danych
6 BAZY FAKTÓW Dane to fakty (zarejestrowane w bazie danych) Fakty same w sobie nie mają znaczenia, aby były użyteczne muszą być zinterpretowane. Zinterpretowane daneto informacje (maja przypisaną semantykę). np. : napis 43 sam nic nie znaczy, musi być podany kontekst Bazę danych możemy uważać za zbiór faktów lub pozytywnych asercji na temat tobszaru analizy za zbiór faktów. fktó W określonej chwili baza danych znajduje się w jakimś stanie (zawiera fakty prawdziweww danej chwili).
7 POJĘCIA ( TRWAŁOŚĆ Dane w bazie danych traktowane są jako trwałe (mogą być przechowywane przez pewien czas). Program Dane trwałe PODST TAWOWE Dane wprowadzane każdo razowo do programu nie są trwałe. Program Dane nietrwałe Wprowadzone do programu
8 CZĘŚĆ INTENSJONALNA I EKSTENSJONALNA Baza danych składa się z części: intensjonalnej i ekstensjonalnej Część intensjonalna zbiór definicji dfiijikó które opisują strukturę danych bazy, inaczej jest to schemat bazy danych (uzyskany w wyniku projektowania) Schemat: Uniwersytet Intensja (schemat) Klasy: Przedmioty dostępne dla studentów przedmioty Nauczyciele osoby wykładające oferowane przedmioty Związki: Nauczyciele wykładają przedmioty Atrubuty: Przedmioty mają nazwy Nauczyciele mają nazwiska i tytułu Część ekstensjonalna łączny zbiór danych w bazie (zawartość bazy) Schemat: Uniwersytet Przedmioty: Bazy danych Elektrotechnika Nauczyciele: Jan Kowalski, dr inż.. Piotr Nowak, prof. dr hab. Maria Maj, dr Związki: Jan Kowalski wykłada Bazy danych
9 INTEGRALNOŚĆ Baza ma właściwości integralności gdy dokładnie odzwierciedla swój obszar analizy Np.: w uniwersyteckiej bazie danych integralność oznacza zapewnienie, że baza daje poprawne odpowiedzi na pytania typu ilu studentów jest zapisanych na moduł ł Systemy relacyjnych hbaz danych Integralność jest ważna szczególnie w bazach, których dane zmieniają się. W zbiorze przyszłych stanów bazy są poprawne i niepoprawne integralność gwarantuje, iż baza nie przyjmie stanu niepoprawnego Schemat: Uniwersytet Przedmioty: Bazy danych Elektrotechnika Nauczyciele: Jan Kowalski, dr inż.. Piotr Nowak, prof. dr hab. inż.. Maria Maj, dr Związki: Jan Kowalski wykłada Bazy danych Piotr Nowak wykład Elektrotechnikę Schemat: Uniwersytet Przedmioty: Bazy danych Elektrotechnika Nauczyciele: Jan Kowalski, dr inż.. Piotr Nowak, prof. dr hab. Maria Maj, dr Związki: Jan Kowalski wykłada Bazy danych Piotr Niwolski wykłada Elektrotechnikę
1 0 REDUNDANCJA (NADMIAROWOŚĆ) Redundancja to powtarzanie się danych w bazie (należy jej unikać) Schemat: Uniwersytet Przedmioty: Bazy danych Elektrotechnika Nauczyciele: Jan Kowalski, dr inż.. Piotr Nowak, prof. dr hab. inż.. Maria Maj, dr Zli Zaliczają: Jan Kowalski wykłada Bazy danych Piotr Nowak wykład Elektrotechnikę Jan Kowalski wykłada Bazy danych Fakty w bazie danych nie powinny się powtarzać
11 FUNKCJE BAZY DANYCH Do wykonywania operacji na bazie są potrzebne dwa rodzaje funkcji: funkcje aktualizujące dokonują zmian w danych. Może się zdarzyć, iż aktualizacja jednej właściwości może prowadzić do dezakulizaji innej funkcje zapytań wydobywają dane z bazy nie zmieniając jej zawartości. zwracają odpowiedź tak/nie zwracają listę wartości ś Czy moduł X jest oferowany? Czy student X zalicza moduł Y? Którzy studenci zaliczają moduł X? Które moduły są ą obecnie oferowane?
12 PERSPEKTYWY Jednym z powodów, dla których bazy danych są używane przez wiele osób, jest to, że baza może być wykorzystywana do różnych celów. Np.: w bazie uniwersyteckiej dziekanaty będą zainteresowana danymi o studentach, układający podziały godzin danymi o salach i wykładowcach. Podzbiór danych będących w czyimś zainteresowaniu nosi nazwę perspektywy Identyfikacja perspektyw jest ważnym elementem procesu tworzenia bazy danychgdyż zapewnia iż żaden użytkownik bazy danych nie został pominięty w czasie opracowywania nowej aplikacji, pozwalają na dzielenie tej pracy na mniejsze części, którymi można łatwiej zarządzać.
13 Perspektywa Perspektywa użytkownika 6 użytkownika 1 POJĘCIA ( Perspektywa użytkownika 2 YDANYCH PODST TAWOWE Perspektywa użytkownika 5 Perspektywa użytkownika 4 Perspektywa użytkownika 3 BAZ Baza danych Aplikacja bazy danych
14 POJĘCIA ( PODSTAWOWE POJĘCIA Dane, Baza danych, Encja, Atrybuty System zarządzania bazą danych Systemy baz danych Historia zarządzania danymi TAWOWE H PODST BAZY DANYCH Bartman Jacek
15 DANE BAZY DANYCH Dane (def.) fakty zapisane symbolicznie, możliwe do przetwarzania, przechowywania lub przesyłania.
16 BAZA DANYCH POJĘCIA ( BAZY DANYCH PODST TAWOWE Baza danych (def) to zbiór powiązanych i trwałych danych opisujących rzeczywistość.
17 BAZA DANYCH Baza a danych jest magazynem danych z nałożona ba niego strukturą wewnętrzną zazwyczaj hierarchiczną Np.: bazą danych może być zbiór informacji o studentach kartoteka a w niej teczki z informacjami o studentach informacje naoddzielnychkartkach: danepersonalne, zaliczenia, praktyki itp.. Celem bazy danych jest najczęściej przechowywanie danych potrzebnych do codziennego funkcjonowania organizacji
18 ENCJA POJĘCIA ( BAZY DANYCH PODST TAWOWE Encja (def) to obiekt, który odróżnia się od innych, istnieje niezależnie i może być jednoznacznie zidentyfikowany.
19 TYPY ZWIĄZKÓW POMIĘDZY ENCJAMI 1:1 (jeden do jeden) każdemu elementowi z jednej encji odpowiada dokładnie jeden element z drugiej i odwrotnie. 1:N N(jeden do wielu) każdemu elementowi z pierwszej, encji może odpowiadać wiele elementów w drugiej encji ale każdemu elementowi z drugiej encji odpowiada d dokładnie d jeden element z pierwszej. Najpopularniejszy i najczęściej występujący typ związku. N:N (wiele do wielu) każdemu elementowi z jednej encji może odpowiadać wiele elementów z encji drugiej i na odwrót. Związki N:N występują dość często; niestety nie ma możliwości ich implementowania i wymagają poprzez wprowadzenie dodatkowej d encji rozbicia i na dwa związki typu 1:N.
20 ATRYBUT POJĘCIA ( BAZY DANYCH PODST TAWOWE Atrybut to element encji opisujący jedną z jej właściwości. ś ś
21 WŁAŚCIWOŚCI BAZY DANYCH Współdzielenie danych dane mogą być używane przez wiele osób nawet w tym samym czasie Integracja danych w bazie nie może być redundancji danych (danych powtarzających się oraz zbędnych) Integralność danych baza danych musi dokładnie odzwierciedlać swój obszar analizy (w przypadku danych powiązanych zmiany winny być propagowane). Integralność często zapewnia się ograniczając do niej dostęp. Bezpieczeństwo danych polega głównie na wydzielaniu zakresu danych do których poszczególni użytkownicy ymają określone prawa dostępu Abstrakcja danych stanowią ą model rzeczywistości Niezależność danych dane winny być oddzielone od procesów na nichoperujących (organizacjadanychma być niewidoczna dla użytkowników)
22 SYSTEM ZARZĄDZANIA BAZĄ DANYCH System Zarządzania Bazą Danych SZBD (DBMS) jest tto zbiór programów umożliwiających i użytkownikom definiowanie, konstruowanie, manipulowanie bazą danych Definiowanie specyfikacja typów danych, struktur, związków integralnościowych dla danych przechowywanych w bazie danych Konstruowanie proces zapisu danych na nośniku danych oraz ich kontrola przez SZBD Manipulowanie zapytania do bazy danych, modyfikacja, raportowanie
23 BAZY DANYCH ZADANIA SYSTEMU ZARZĄDZANIA BAZĄ DANYCH Pielęgnacja danych. Umożliwienie użytkownikowi tworzenia nowych baz danych i określania ich struktury logicznej (przy pomocy specjalnego języka) oraz aktualizowania ich. Wyszukiwanie danych. Udostępnienie użytkownikowi możliwości ś i tworzenia zapytań ń o dane. Kontrola danych. Sterowanie wielodostępem do danych
24 TRZY WARSTWOWA ARCHITEKTURA SZBD System zarządzania bazą danych jest pośrednikiem pomiędzy programami użytkowymi, y użytkownikiem i bazą ą danych. W 1975 (ANSI SPARC) zaproponował trzypoziomową architekturę SZBD: poziom zewnętrzny (użytkownika) opisuje jak użytkownicy widzą dane, poziom koncepcyjny (pojęciowy) opisuje widok wszystkich danych w bazie. Poziom ten opisuje logiczny widok baz danych, bez szczegółów dotyczących realizacji, poziom wewnętrzny (fizyczny) opisuje sposób przechowywania danych oraz metody dostępu do nich. Pomiędzy warstwami istnieją dwa poziomy odwzorowania przekładające się na dwa poziomy niezależności danych: logiczna niezależność danych oznacza niewrażliwość schematów zewnętrznych na zmiany w schemacie koncepcyjnym, fizyczna niezależność danych oznacza niewrażliwość schematu koncepcyjnego na zmiany w schemacie fizycznym.
25 TRZY WARSTWOWA ARCHITEKTURA SZBD Wgląd zewnętrzny Wgląd zewnętrzny Poziom zewnętrzny Odwzorowanie poziom zewnętrzny schemat konceptualny Schemat konceptualny Odwzorowanie poziom konceptualny schemat wewnętrzny Schemat wewnętrzny logiczna niezależność danych fizyczna niezależność danych Poziom konceptualny Poziom wewnętrzny Fizyczna Baza danych W SZBD można wyróżnić: jądro, interfejs i zestaw narzędzi JACEK BARTMAN
26 FUNKCJE SZBD (DBMS) Funkcje CRUD (Ceate Read Update Delete), Obsługa słownika danych przechowywanie metadanych (danych o danych), Zarządzanie transakcjami Sterowanie współbieżnością Odtwarzanie po awarii Kontrola uprawnień użytkownika Komunikacja danych (wymiana danych w systemie technologii informacyjnej) Wymuszanie więzów integralności Udostępnianie narzędzi ę do administrowania bazą ą danych (do importowania, eksportowania, monitorowania operacji, monitorowania wydajności)
27 SYSTEM BAZ DANYCH System Baz Danych to skomputeryzowany system przechowywania i przetwarzania danych System Baz Danych składa się ę z: modelu danych oprogramowania System Zarządzania Bazą Danych Inne oprogramowanie baz danych Często ę do sytemu baz danych zalicza się ę również: sprzęt: pamięci masowe, urządzenia systemowe użytkowników programiści i aplikacji tworzą programy umożliwiające i innym użytkownikom dostęp do bazy danych użytkownicy końcowi obsługujący bazę danych wprowadzający dane, generujący raporty itp.. administratorzy BD odpowiada za tworzenie i konserwacje rzeczywistej bazy danych, odpowiada za jej bezpieczeństwo
28 TYPY WSPÓŁCZESNYCH BAZ DANYCH Produkcyjne bazy danych obsługują standardowe funkcje przedsiębiorstwa. Oferują tworzenie, odczytywanie, modyfikowanie i kasowanie danych. Np.: baza o postępach studentów Bazy danychwspomagającedecyzje decyzje służą do wyszukiwania informacji wspomagających decyzje w przedsiębiorstwie. Oferują tylko odczyt danych. Np.: baza dotycząca rekrutacji na uniwersytecie Informacyjne bazy danych są to narzędzia dla użytkowników, mogą być aktualizowane, korzystają z baz produkcyjnych i wspomagających decyzje Np.: wykładowca powinien mieć informacyjna bazę danych dotycząca uczęszczania na zejścia studentów.
29 HISTORIA ZARZĄDZANIA DANYMI 4000 p.n.e 1900 n.e ręczne zarządzanie zapisam pierwszy pe znany zapis obejmujący majątek królewski óe i podatki w Sumerze. e. 1900 1955 zarządzanie zapisami na kartach perforowanych Maszyna Hollerith a (bazująca na wynalazku Jacquarda z 1801 roku). 1955 1970 programowane zarządzanie zapisami 1950 rok wynalezienie taśmy magnetycznej (na jednej mieściły się dane z ok. 10 000 kart perforowanych) praca wsadowana plikach i rekordach (nie daje możliwościwychwycenia wychwycenia błędów aż do zakończenia wsadu) 1965 1970 sieciowe zarządzanie danymi on line praca on line, przetwarzanie bieżących transakcji pliki indeksowane zastosowanie bębnów i dysków magnetycznych trzypoziomowa architektura bazy danych
30 BAZY DANYCH 1970 1995 relacyjne zarządzanie danymi 1970 model Codd a powszechne SZBD na komputery PC najczęściej stosowany model architektura klient server 1995 Obiektowe bazy danych dane aktywne oparte o mechanizmy dziedziczenia Często przechowują dane różnych typów np.: głos, obraz itp.
31 CHRONOLOGIA OPRACOWANIA MODELI DANYCH Chronologia powstawania modeli danych nie odpowiada chronologii powstawania SZBD opartych na tych modelach Dedukcyjny POJĘCIA ( Semantyczny Obiektowy Posteralcyjny PODST TAWOWE Relacyjny Sieciowy Hierarchiczny 1960 1970 1980 1990