Podstawowy Wykład z Systemów Baz Danych



Podobne dokumenty
Projektowanie Systemów Informacyjnych

Projektowanie i wdrażanie systemów informatycznych (materiały do wykładu cz. II)

Bazy Danych. C. J. Date, Wprowadzenie do systemów baz danych, WNT - W-wa, (seria: Klasyka Informatyki), 2000

Wykład I. Wprowadzenie do baz danych

Podstawowe pojęcia dotyczące relacyjnych baz danych. mgr inż. Krzysztof Szałajko

Projektowanie Systemów Informacyjnych

Pojęcie bazy danych. Funkcje i możliwości.

Diagramu Związków Encji - CELE. Diagram Związków Encji - CHARAKTERYSTYKA. Diagram Związków Encji - Podstawowe bloki składowe i reguły konstrukcji

Czym jest baza danych?

PRZEWODNIK PO PRZEDMIOCIE

Dział Temat lekcji Ilość lekcji. godz. 1 Organizacja zajęć Omówienie programu nauczania 3

Diagramy przepływu danych I

Karta (sylabus) modułu/przedmiotu Mechanika i Budowa Maszyn Studia I stopnia

Wrocławska Wyższa Szkoła Informatyki Stosowanej. Bazy danych. Dr hab. inż. Krzysztof Pieczarka.

Wykład II Encja, atrybuty, klucze Związki encji. Opracowano na podstawie: Podstawowy Wykład z Systemów Baz Danych, J.D.Ullman, J.

Bazy danych 2. Wykład 1

MODELOWANIE PRZEPŁYWU DANYCH

Bazy danych Wykład zerowy. P. F. Góra

Komputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl

Baza danych. Baza danych to:

Baza danych. Modele danych

Diagramy związków encji. Laboratorium. Akademia Morska w Gdyni

Zagadnienia (1/3) Data-flow diagramy przepływów danych ERD diagramy związków encji Diagramy obiektowe w UML (ang. Unified Modeling Language)

Baza danych to zbiór wzajemnie powiązanych ze sobą i zintegrowanych danych z pewnej dziedziny.

Systemy baz danych. mgr inż. Sylwia Glińska

Bazy Danych. Bazy Danych i SQL Podstawowe informacje o bazach danych. Krzysztof Regulski WIMiIP, KISiM,

RELACYJNE BAZY DANYCH

K1A_W11, K1A_W18. Egzamin. wykonanie ćwiczenia lab., sprawdzian po zakończeniu ćwiczeń, egzamin, K1A_W11, K1A_W18 KARTA PRZEDMIOTU

Definicja bazy danych TECHNOLOGIE BAZ DANYCH. System zarządzania bazą danych (SZBD) Oczekiwania wobec SZBD. Oczekiwania wobec SZBD c.d.

Bazy danych - wykład wstępny

Podstawowe pakiety komputerowe wykorzystywane w zarządzaniu przedsiębiorstwem. dr Jakub Boratyński. pok. A38

SZKOLENIE: Administrator baz danych. Cel szkolenia

Program wykładu. zastosowanie w aplikacjach i PL/SQL;

Wymagania klienta mogą być opisane na różnych poziomach abstrakcji: Podział wymagań: Wymagania funkcjonalne Wymagania niefunkcjonalne

Technologia informacyjna

WPROWADZENIE DO BAZ DANYCH

Model logiczny SZBD. Model fizyczny. Systemy klientserwer. Systemy rozproszone BD. No SQL

Projektowani Systemów Inf.

Liczba godzin 1,2 Organizacja zajęć Omówienie programu nauczania 2. Tematyka zajęć

Wykład 2. Relacyjny model danych

Informatyka II stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny) kierunkowy (podstawowy / kierunkowy / inny HES)

Systemy GIS Systemy baz danych

INFORMATYKA Pytania ogólne na egzamin dyplomowy

Alicja Marszałek Różne rodzaje baz danych

Podyplomowe Studium Informatyki w Bizniesie Wydział Matematyki i Informatyki, Uniwersytet Łódzki specjalność: Tworzenie aplikacji w środowisku Oracle

22. Podstawowe pojęcia baz danych. Baza Danych. Funkcje bazy danych. Właściwości bazy danych. Modele baz danych.

Ogólny plan przedmiotu. Strony WWW. Literatura BAZY DANYCH. Materiały do wykładu:

Literatura. Bazy danych s.1-1

Podstawy Programowania Obiektowego

Projektowanie systemów informatycznych. Roman Simiński siminskionline.pl. Modelowanie danych Diagramy ERD

Bazy Danych. Bazy Danych i SQL Podstawowe informacje o bazach danych. Krzysztof Regulski WIMiIP, KISiM, regulski@metal.agh.edu.pl

E-1IZ s2. Informatyka II stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny)

Diagramy ERD. Model struktury danych jest najczęściej tworzony z wykorzystaniem diagramów pojęciowych (konceptualnych). Najpopularniejszym

Sylabus do programu kształcenia obowiązującego od roku akademickiego 2014/15

030 PROJEKTOWANIE BAZ DANYCH. Prof. dr hab. Marek Wisła

FUNKCJE SZBD. ZSE - Systemy baz danych 1

ORGANIZACJA I ZARZĄDZANIE INFORMACJĄ W BAZIE DNYCH. podstawowe pojęcia.

Rozkład materiału do nauczania informatyki w liceum ogólnokształcącym Wersja I

Rozkład materiału do nauczania informatyki w liceum ogólnokształcącym Wersja II

Autor: Joanna Karwowska

Diagram Przepływu Danych - podstawowe bloki składowe i reguły konstrukcji

Krzysztof Kadowski. PL-E3579, PL-EA0312,

Systemy baz danych w zarządzaniu przedsiębiorstwem. W poszukiwaniu rozwiązania problemu, najbardziej pomocna jest znajomość odpowiedzi

Projekt dotyczy stworzenia zintegrowanego, modularnego systemu informatycznego wspomagającego zarządzanie pracownikami i projektami w firmie

Bazy Danych. Modele danych. Krzysztof Regulski WIMiIP, KISiM,

Projekt małej Bazy Danych.

Faza Określania Wymagań

ZSE - Systemy baz danych 1 ZASADY PROJEKTOWANIA BAZ DANYCH

Bazy danych. Plan wykładu. Diagramy ER. Podstawy modeli relacyjnych. Podstawy modeli relacyjnych. Podstawy modeli relacyjnych

Systemy informatyczne. Modelowanie danych systemów informatycznych

Modelowanie i Programowanie Obiektowe

Projektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34

mail: strona: konsultacje: na stronie (po wcześniejszym umówieniu drogą mailową)

Szkolenie autoryzowane. MS Wdrażanie hurtowni danych w Microsoft SQL Server 2012

Relacyjny model baz danych, model związków encji, normalizacje

BAZY DANYCH model związków encji. Opracował: dr inż. Piotr Suchomski

Bazy danych. Wykład IV SQL - wprowadzenie. Copyrights by Arkadiusz Rzucidło 1

PAŃSTWOWA WYŻSZA SZKOŁA ZAWODOWA W NOWYM SĄCZU SYLABUS PRZEDMIOTU. Obowiązuje od roku akademickiego: 2011/2012

E-I2SG-2010-s1. Informatyka II stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny)

Opisy efektów kształcenia dla modułu

Modelowanie diagramów klas w języku UML. Łukasz Gorzel @stud.umk.pl 7 marca 2014

Zasady organizacji projektów informatycznych

Co to jest jest oprogramowanie? 8. Co to jest inżynieria oprogramowania? 9. Jaka jest różnica pomiędzy inżynierią oprogramowania a informatyką?

BAZY DANYCH wprowadzenie. Opracował: dr inż. Piotr Suchomski

Funkcjonalność systemów zarządzania bazami danych przestrzennych w kartografii internetowej (PosrtgreSQL/PostGIS) Krzysztof Kuśnierek

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32

Inżynieria oprogramowania. Wykład 6 Analiza i specyfikowanie wymagań

Multi-wyszukiwarki. Mediacyjne Systemy Zapytań wprowadzenie. Architektury i technologie integracji danych Systemy Mediacyjne

Program nauczania. Systemy baz danych. technik informatyk

BAZY DANYCH. Co to jest baza danych. Przykłady baz danych. Z czego składa się baza danych. Rodzaje baz danych

Podstawowe zagadnienia z zakresu baz danych

WPROWADZENIE DO BAZ DANYCH

Bazy danych. Wykład III Tabele. Copyrights by Arkadiusz Rzucidło 1

LITERATURA. C. J. Date; Wprowadzenie do systemów baz danych WNT Warszawa 2000 ( seria Klasyka Informatyki )

Oracle11g: Wprowadzenie do SQL

LK1: Wprowadzenie do MS Access Zakładanie bazy danych i tworzenie interfejsu użytkownika

Obiektowość BD Powtórka Czas odpowiedzi. Bazy Danych i Systemy informacyjne Wykład 14. Piotr Syga

Technologia informacyjna (IT - Information Technology) dziedzina wiedzy obejmująca:

Bazy danych. Dr Henryk Telega. BD 10/11 Wykład 1 1

Transkrypt:

Bazy Danych Wykład I Wprowadzenie Opracowano na podstawie: Podstawowy Wykład z Systemów Baz Danych, J.D.Ullman, J.Widom Copyrights by Arkadiusz Rzucidło 1

Definicje Baza danych to uporządkowany zbiór danych, przechowywany w pamięci komputera. Bazą danych nazywamy zbiór danych o określonej strukturze, zapisany na nośniku pamięciowym komputera, mogący zaspokoić potrzeby wielu użytkowników. W bazie danych zapisywane są fakty i zdarzenia zachodzące w pewnym wycinku rzeczywistości. Bazy danych są komputerowymi reprezentacjami fragmentów istniejącego świata rzeczywistego Copyrights by Arkadiusz Rzucidło 2

Definicje Baza danych to zestaw danych, metadanych (katalogów), programów i innych środków pozwalających na utrzymywanie, zabezpieczanie, przetwarzanie i udostępnianie danych dla użytkowników Baza danych jest magazynem danych z nałożoną na niego wewnętrzną strukturą W potoczny rozumieniu Baza danych jest zbiorem danych zorganizowanym przez System Zarządzania Bazami Danych DBMS (Data Base Management System) Informacje (dane) są takim samym zasobem firmy jak każdy inny (np. pracownicy, materiały, urządzenia) Informacje mają wartość tylko wtedy, gdy są dokładne i dostępne wtedy, gdy trzeba. Baza danych jest standardową metodą strukturalizacji informacji w większości organizacji. Copyrights by Arkadiusz Rzucidło 3

Czego oczekuje się od DBMS? Tworzenia nowej bazy danych i określenia jej schematu (logicznej struktury danych) za pomocą języka definiowania danych Możliwości tworzenia zapytań (query) o dane, aktualizowania danych za pomocą języka zapytań (query language) lub języka manipulowania danymi Możliwości przechowywania dużej ilości danych (GB) przez dłuższy czas, chroniąc je przed przypadkowym, niepowołanym dostępem a także umożliwiając efektywny dostęp do danych za pomocą języka zapytań i operacji Sterowania jednoczesnym dostępem do danych przez wielu użytkowników z zapewnieniem bezkolizyjności oraz ochrony danych przed uszkodzeniem Copyrights by Arkadiusz Rzucidło 4

Podział ze względu na budowę: Relacyjne bazy danych Hierarchiczne bazy danych Sieciowe bazy danych Obiektowe bazy danych Obiektowo - relacyjne bazy danych Copyrights by Arkadiusz Rzucidło 5

Ewolucja Copyrights by Arkadiusz Rzucidło 6

Hierarchiczne i sieciowe bazy danych Hierarchiczne Pierwsza elektroniczna baza danych Oparta o strukturę drzewiastą (lasu) Logiczne powiązania pomiędzy wartościami danych Powiązania jeden-jeden, jeden-wiele, wiele-jeden Sieciowe Zmodyfikowana wersja typu hierarchicznego Pozwala na definiowanie powiązań wiele-wiele w postaci struktury drzewiastej bez powtarzania poszczególnych wartości w ramach obiektu Copyrights by Arkadiusz Rzucidło 7

Relacyjne baz danych Dane przechowywane w tabelach (stała liczba kolumn i dowolną liczbę wierszy Typy określone są na etapie projektowania bazy danych Jest ich określona ilość Mają stały rozmiar Zwykle są ogólnie znanymi typami prostymi (tekst, liczba) Każda tabela ma wyróżniony klucz (wyróżniony atrybut lub kilka atrybutów) Zapytania do bazy Pewien podzbiór bazy danych podawany w tabeli Dane wybierane na podstawie wartości w konkretnych polach krotki Copyrights by Arkadiusz Rzucidło 8

Obiektowe bazy danych Model danych korzysta z takich pojęć jak: klasy, atrybuty, metody, udostępnia identyfikatory obiektów (OID), hermetyzację danych oraz metod, wielokrotne dziedziczenie Łączą właściwości obiektowości oraz obiektowych języków programowania Zapytania Obiektowo zorientowany język staje się językiem programowania jak i językiem bazy danych Zależność pomiędzy obiektem w aplikacji a obiektem w bazie danych Możliwość korzystania z SQL dla celów zgodności ze standardem ODBC Copyrights by Arkadiusz Rzucidło 9

Porównanie RBDMS i ODBMS Copyrights by Arkadiusz Rzucidło 10

Podział ze względu na sposób zarządzania Analityczne bazy danych Dane statyczne (historyczne, wydarzenia) Dane nie wymagają modyfikacji Dane służą jako źródło do analizy (prognozowania, analiza tendencji rynkowych) Przykład: bazy testów chemicznych, danych pomiarowych Operacyjne bazy danych Dane wymagają nieustannej modyfikacji dynamiczne Przedstawiają aktualny stan rzeczy Przykład: bazy zamówień, faktur, inwentaryzacyjne) Copyrights by Arkadiusz Rzucidło 11

Składowe RBDMS Modyfikacje schematu Zapytania Aktualizacje Procesor zapytań Moduł Zarządzania Pamięcią Moduł Zarządzania Transakcjami Dane Metadane Copyrights by Arkadiusz Rzucidło 12

Etapy projektowania baz danych Określenie wymagań systemu Analiza obszaru działania (modelowanie systemu) Projektowanie i programowanie Implementacja Projektowanie strukturalne specyfikacja funkcjonalna (diagram hierarchii funkcji DHF) model procesów i przepływu danych (diagram DFD) model danych (encje związki) (diagram związków encji ERD) współpraca z relacyjnymi bazami danych Copyrights by Arkadiusz Rzucidło 13

Analiza środowiska Wywiad środowiskowy Określenie zapotrzebowania Identyfikacja głównych potrzeb i niedomagań obecnego systemu informacyjnego Nakreślenie głównych założeń nowego systemu Zaplanowanie poprawek i rozwiązań dla nowego systemu Wstępna analiza funkcji systemu oraz zapotrzebowania na informację Copyrights by Arkadiusz Rzucidło 14

Diagram DHF (Diagram Hierarchii Funkcji) Reprezentuje układ hierarchiczny funkcji, które system będzie realizował w czasie pracy Zasada modelowania funkcji: pokazywać funkcje (co?), a nie mechanizmy (jak?) Funkcje pogrupowane są tematycznie Zasada dekompozycji - kompletność funkcjonalna - działanie funkcji nadrzędnej jest sumą działań funkcji podrzędnych Zawiera tylko funkcje systemu Funkcje są wyrażone za pomocą czynności Copyrights by Arkadiusz Rzucidło 15

Funkcje elementarne Muszą być w całości wykonane lub w całości zaniechane Stanowią podstawę do projektowania modułów aplikacji Mogą być dalej dekomponowane dla lepszego udokumentowania Dla f. element. modeluje się użycie danych przez funkcje (modele macierzowe) Copyrights by Arkadiusz Rzucidło 16

Metodyka tworzenia DHF Modelowanie "od góry" Konwencje: nazwy funkcji opisują ich działanie etykiety pokazują miejsce w drzewie Pożądane wymiary drzewa: klika na kilka Dekompozycja powinna doprowadzić do funkcji elementarnych Copyrights by Arkadiusz Rzucidło 17

Przykład DHF (fragment) Internetowe Wspomaganie Nauczania Administrowanie Studentami Administrowanie materiałami dydaktycznymi Realizacja procesu dydaktycznego Rejestracja studentów Logowanie studentów Sporządzanie statystyk Sporządzanie statystyk Wprowadzanie materiałów Edycja materiałów Sporządzanie zestawień Klasyfikowanie materiałów Udostępnianie materiałów Raportowanie użycia mater. Tworzenie i edycja grup lab. Przydzielanie studentów Rejestrowanie obecności i ocen Sporządzanie testów Copyrights by Arkadiusz Rzucidło 18

Diagram DFD (Diagram Przepływu Danych) Diagram przepływu danych jest narzędziem modelowania pozwalającym zobrazować system jako sieć procesów funkcyjnych, połączonych ze sobą potokami i zbiornikami danych Cele DFD: Specyfikacja czynności wykonywanych przedsiębiorstwie w powiązaniu z danymi Specyfikacja obiegu danych Copyrights by Arkadiusz Rzucidło 19

Budowa DFD Składniki: procesy magazyny danych obiekty zewnętrzne przepływy danych Każdy diagram odpowiada jednej funkcji nadrzędnej z hierarchii dekompozycji Zasady dekompozycji: kompletność funkcjonalna -- jak w FHD równoważenie między poziomami -- przepływy z/do funkcji nadrzędnej muszą zostać dokładnie "rozwiązane" jako przeplywy z/do funkcji podrzędnych Copyrights by Arkadiusz Rzucidło 20

Proces DFD Proces pokazuje fragment systemu przekształcający dane na wyniki Nazywane pojedynczym słowem lub frazą (jak funkcja DHF Co robi proces?) Różne notacje jajka mleko cukier Proszek do pieczenia Mieszaj ciasto ciasto Copyrights by Arkadiusz Rzucidło 21

Przepływ DFD Przepływ służy do reprezentacji przenoszenia jednostek informacji lub pakietów informacji z jednego fragmentu systemu do innego Oznaczony jest nazwą informacji, która jest przekazywana Nazwa powinna być jednoznaczna i nie zawierać dwóch lub więcej informacji Numer wewnętrzny Numer telefonu Weryfikacja numeru telefonicznego Numer zewnętrzny Copyrights by Arkadiusz Rzucidło 22

Magazyn danych DFD Magazyn danych służy do modelowania zbioru danych w bezruchu Często nazywany jest plikiem lub bazą danych (bez względu na fizyczną postać magazynu) Magazyny zwykło oznaczać się nazwami zgodnymi z przechowywaną w nich informacją faktura Fakturowanie Dane faktury Faktury Copyrights by Arkadiusz Rzucidło 23

Terminator DFD Terminator reprezentuje obiekty zewnętrzne z którymi komunikuje się system pobierając lub emitując informację Terminatory znajdują się na zewnątrz systemu i łączą się z systemem za pomocą interfejsu Projektant nie może wpłynąć na sposób działania terminatora Żaden związek pomiędzy terminatorami nie jest istotny dla systemu Klient Dane osobowe Pobierz dane klienta Dane klienta Klient Copyrights by Arkadiusz Rzucidło 24

Wskazówki dotyczące konstruowania DFD Nazwy znaczące dla elementów diagramów Numerowanie procesów Unikać nadmiernie złożonych DFD Brak sprzeczości logicznej Nieskończone studnie Nieskończone źródła Magazyny tylko do zapisu lub tylko do odczytu Nieetykietowane przepływy Żaden z poziomów nie powinien zawierać więcej niż 6-8 procesów Równoważenie diagramów Copyrights by Arkadiusz Rzucidło 25

Przykład DFD kontekstowy Dane osobowe Dane konta studenta Student Wykonanie testu Materiały dyd. Student Wyniki testów Materiały edukacyjne Obecność Internetowe wspomaganie nauczania Raporty wyników naucz. Informacje od studentów Prowadzący zajęcia oceny Inf. o zajęciach Prowadzący zajęcia Copyrights by Arkadiusz Rzucidło 26

Przykład DFD poziom 0 Dane osobowe Informacje od prowadzących Student Test zaliczeniowy Administrowanie studentami Wyniki testów Lista studentów Student Testy zaliczeniowe Prowadzący zajęcia Obecności Oceny Materiały dydaktyczne Informacje o zajęciach Sylabusy Realizacja procesu dydaktycznego Lista grup lab. Przydział materiałów do przedmiotów Raporty frekwencji Materiały dyd. Prowadzący zajęcia Administrowanie materiałami Copyrights by Arkadiusz Rzucidło 27

Koniec Copyrights by Arkadiusz Rzucidło 28

Moduł zarządzania pamięcią Wybieranie właściwych danych z pamięci Dostosowywanie danych do wymagań modułów z wyższych poziomów systemu W prostych systemach może być tym samym co system plików SO W większości RDBMS zarządzają bezpośrednio przestrzenią dysku (efektywność) Dwa moduły Moduł zarządzania plikami przechowuje dane o miejscu zapisania plików na dysku Moduł zarządzania buforami obsługuje pamięć operacyjną Powrót Copyrights by Arkadiusz Rzucidło 29

Moduł zarządzania zapytaniami Zadaniem modułu jest przekształcenie zapytania lub operacji na bazie danych Zapytania w języku bardzo wysokiego poziomu (np. SQL) Najtrudniejszym z etapów odpowiedzi na zapytania jest optymalizacja zapytania Powrót Copyrights by Arkadiusz Rzucidło 30

Moduł zarządzania transakcjami Odpowiada za spójność systemu Gwarantuje, że kilka jednocześnie wykonywanych zapytań nie będzie wzajemnie sobie przeszkadzać Właściwości transakcji: Niepodzielność Żądanie aby cała transakcja została przeprowadzona albo, że żaden z jej elementów nie zostanie uwzględniony (bankomat zapis na koncie) Spójność baza musi być spójna, dane muszą zaspokajać oczekiwania klienta (miejsca w samolocie) Izolacja Dwie transakcje przeprowadzane równocześnie nie mogą na siebie wzajemnie wpływać (bilety na ten sam rejs) Trwałość Jeśli transakcja zakończy się jej wynik nie może być utracony z powodu awarii systemu. Powrót Copyrights by Arkadiusz Rzucidło 31