Plan rozdziału. Wprowadzenie. Wprowadzenie. Specyfika baz danych



Podobne dokumenty
Wprowadzenie. Definicja. Cechy bazy danych

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

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

Wykład I. Wprowadzenie do baz danych

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

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

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

Bazy danych 2. Wykład 1

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

Pojęcie bazy danych funkcje i możliwości

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

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

Systemy GIS Systemy baz danych

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

Wykład 2. Relacyjny model danych

SZKOLENIE: Administrator baz danych. Cel szkolenia

Plan. Wprowadzenie. Co to jest APEX? Wprowadzenie. Administracja obszarem roboczym

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

Adam Cankudis IFP UAM

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

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

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

ORGANIZACJA ZAJĘĆ BAZY DANYCH PLAN WYKŁADU SCHEMAT SYSTEMU INFORMATYCZNEGO

Podstawy Systemów Zarządzania Baz Danych

Krzysztof Kadowski. PL-E3579, PL-EA0312,

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

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

z tematyką związaną z gromadzeniem systemów informatycznych Bartman Jacek

PRZEWODNIK PO PRZEDMIOCIE

Rozdział 1 Wprowadzenie do baz danych. (c) Instytut Informatyki Politechniki Poznańskiej 1

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

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

LITERATURA. Wprowadzenie do systemów baz danych C.J.Date; WNT Warszawa 2000

Baza danych. Modele danych

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

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

poziom: Core wersja: 2.6 moduł: B : Wytwarzanie SYLLABUS

Pojęcie bazy danych funkcje i możliwości Charakterystyka baz danych:

Zaawansowane Systemy Baz Danych

Projektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34

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

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

Technologia informacyjna

OfficeObjects e-forms

ZMODYFIKOWANY Szczegółowy opis przedmiotu zamówienia

Technologia informacyjna

Usługi sieciowe i bazy danych w ochronie zdrowia z elementami telemedycyny. Dr hab. Jacek Pniewski 2017/18, semestr letni, piątki około 14:00

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

PROGRAM PRAKTYKI ZAWODOWEJ. Technikum Zawód: technik informatyk

Szkolenie autoryzowane. MS 6232 Wdrażanie bazy danych Microsoft SQL Server 2008 R2

Spis treści. Przedmowa

Zasady organizacji projektów informatycznych

Baza danych. Baza danych to:

Bazy danych w sterowaniu

RELACYJNE BAZY DANYCH

Opisy efektów kształcenia dla modułu

PROGRAM NAUCZANIA DLA ZAWODU TECHNIK INFORMATYK, O STRUKTURZE PRZEDMIOTOWEJ

SQL w 24 godziny / Ryan Stephens, Arie D. Jones, Ron Plew. Warszawa, cop Spis treści

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

Cel przedmiotu. Wymagania wstępne w zakresie wiedzy, umiejętności i innych kompetencji 1 Język angielski 2 Inżynieria oprogramowania

Opis wymagań i program szkoleń dla użytkowników i administratorów

Bazy danych. Zenon Gniazdowski WWSI, ITE Andrzej Ptasznik WWSI

Alicja Marszałek Różne rodzaje baz danych

PRZEWODNIK PO PRZEDMIOCIE

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

Tomasz Grześ. Systemy zarządzania treścią

WPROWADZENIE DO BAZ DANYCH

S y s t e m y. B a z D a n y c h

INFORMATYKA Pytania ogólne na egzamin dyplomowy

Czym jest baza danych?

Bazy danych 1. Podstawowe pojęcia

KARTA PRZEDMIOTU 1,5 1,5

AUREA BPM Oracle. TECNA Sp. z o.o. Strona 1 z 7

Bazy danych i ich aplikacje

Wprowadzenie do technologii Business Intelligence i hurtowni danych

2017/2018 WGGiOS AGH. LibreOffice Base

Hurtownie danych. Przetwarzanie zapytań. ZAPYTANIA NA ZAPLECZU

Szczegółowy opis przedmiotu umowy. 1. Środowisko SharePoint UWMD (wewnętrzne) składa się z następujących grup serwerów:

Modelowanie danych, projektowanie systemu informatycznego

Bazy danych - wykład wstępny

Bazy danych. Plan wykładu. Rozproszona baza danych. Fragmetaryzacja. Cechy bazy rozproszonej. Replikacje (zalety) Wykład 15: Rozproszone bazy danych

PLAN ZARZĄDZANIA KONFIGURACJĄ OPROGRAMOWANIA PROJEKT <NAZWA PROJEKTU> WERSJA <NUMER WERSJI DOKUMENTU>

Wymagania dotyczące oprogramowania bazodanowego

I. KARTA PRZEDMIOTU CEL PRZEDMIOTU

Projekt: MS i CISCO dla Śląska

Podstawy Systemów Zarządzania Baz Danych

OfficeObjects e-forms

Hurtownie danych wykład 5

Podstawowy Wykład z Systemów Baz Danych

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

Odkrywanie CAQDAS : wybrane bezpłatne programy komputerowe wspomagające analizę danych jakościowych / Jakub Niedbalski. Łódź, 2013.

Wprowadzenie do metodologii modelowania systemów informacyjnych. Strategia (1) Strategia (2) Etapy Ŝycia systemu informacyjnego

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

Historia modeli programowania

Mariusz Trzaska Modelowanie i implementacja systemów informatycznych

Transakcje. (c) Instytut Informatyki Politechniki Poznańskiej

Organizacja zajęć BAZY DANYCH II WYKŁAD 1. Plan wykładu. SZBD Oracle

Kurs programowania. Wykład 12. Wojciech Macyna. 7 czerwca 2017

OpenOfficePL. Zestaw szablonów magazynowych. Instrukcja obsługi

Transkrypt:

1 Plan rozdziału 2 Wprowadzenie Wprowadzenie Przykład bazy danych Systemy plikowe a systemy baz danych Dramatis personæ Dlaczego używać bazy danych? Dlaczego nie używać bazy danych? Podsumowanie i pytania Wprowadzenie 3 Specyfika baz danych 4 Definicja Baza danych to kolekcja powiązanych ze sobą danych. Dane to znane fakty które mogą być odnotowane i które posiadają domniemane znaczenie. Cechy bazy danych baza danych reprezentuje wybrany fragment rzeczywistości, zwany miniświatem (ang. miniworld, universe of discourse), zmiany w miniświecie są odzwierciedlane w bazie danych, baza danych to logicznie spójna kolekcja danych, baza danych jest projektowana, budowana i wypełniana danymi w konkretnym celu; posiada docelową grupę użytkowników i zbiór aplikacji użytkowych. Trwałość danych kilka, kilkadziesiąt, kilkaset lat, niezależne od aplikacji, platformy sprzętowo-programowej, Duży wolumen przetwarzanych danych tysiące, miliony, miliardy danych, dane nie mieszczą się w pamięci operacyjnej, dane nie mieszczą się w pamięci operacyjnej, przestrzeń nazw jest za mała aby nazwać wszystkie dane, ilość danych uniemożliwia liniowe przeglądanie danych, Złożoność danych złożoność strukturalna i semantyczna, istnienie złożonych ograniczeń integralnościowych, istnienie złożonych zależności między danymi.

System zarządzania bazą danych 5 Wymagania odnośnie zarządzania danymi 6 System zarządzania bazą danych (ang. database management system, DBMS) to zbiór programów ogólnego przeznaczenia umożliwiających tworzenie i utrzymywanie bazy danych. SZBD umożliwia: definiowanie: określanie typów danych, struktur i ograniczeń konstruowanie: przechowywanie danych na nośniku elektronicznym manipulowanie: odczytywanie danych, wyszukiwanie danych, modyfikowanie danych w celu odzwierciedlenia zmian zachodzących w świecie rzeczywistym System zarządzania bazą danych musi umożliwiać opisywanie bytów świata rzeczywistego (encje) w terminach składowanych danych tworzenie i trwałe składowanie dużych kolekcji danych wydajne przeszukiwanie i aktualizowanie danych złożone zapytania do danych złożone aktualizacje danych modyfikowanie składowanych danych (np. dodawanie atrybutów) zarządzanie współbieżnym dostępem do danych odtwarzanie spójnego stanu bazy danych po awarii utrzymywanie spójności w danych zabezpieczenie dostępu do danych Środowisko bazy danych 7 Technologie baz danych 8 Na system bazy danych (ang. database system) składa się: baza danych, katalog bazy danych, system zarządzania bazą danych. system bazy danych zapytania i programy system zarządzania bazą danych moduł obsługi zapytań i programów katalog (metadane) moduł dostępu do danych baza danych Przetwarzanie transakcyjne dostęp do danych przez transakcje o własnościach ACID, metody synchronizacji transakcji (2PL, znaczniki czasowe), metody odtwarzania spójności (logi, punkty kontrolne, rollback), metody archiwizacji bazy danych, Fizyczne struktury danych i metody dostępu pliki uporządkowane, haszowe, zgrupowane, indeksy, bitmapy, połowienie binarne, haszowanie statyczne i dynamiczne, operacje połączenia, sortowania, grupowania, regułowe i kosztowe metody optymalizacji zapytań, Modele danych modele pojęciowe (związki encji, UML), modele logiczne (relacyjne, obiektowe, post-relacyjne), języki budowy aplikacji i narzędzia CASE.

Studenci Przykład 9 Przykład 10 Nazwisko Indeks Kierunek Biały 123456 INF Niebieski 778899 INF Przedmioty PrzNazwa PrzNumer PKr Wydział Systemy baz danych INF12 4 INF Wprowadzenie do informatyki INF03 2 INF Matematyka dyskretna MAT06 3 MAT Wykłady WNumer PrzNumer Semestr Rok Wykładowca 56 MAT06 lato 2004 Gąsiorowski 67 INF12 zima 2005 Baranowski 78 INF03 lato 2005 Kijankowski 79 INF12 lato 2005 Owczyński 101 INF03 zima 2006 Indykowski 122 MAT06 zima 2006 Żabczyński Oceny Indeks WNumer Ocena 123456 78 dst 123456 101 bdb 778899 56 db 778899 78 db+ 778899 67 dst 778899 122 bdb Przykład 11 Czy bazy danych są niezbędne? 12 studenci.txt przedmioty.txt readfile studenci.txt readfile przedmioty.txt find inflie #Jan Kowalski update #Jan Kowalski find infile #bazy danych update #bazy danych writefile studenci.txt writefile przedmioty.txt profesorowie.txt awaria w trakcie wykonywania programu duże kolekcje danych blokowanie plików na czas edycji

Systemy plikowe a bazy danych (1/4) 13 Systemy plikowe a bazy danych (2/4) 14 Samoopisujący się charakter baz danych system bazy danych posiada kompletny opis (definicję) bazy danych umieszczony w słowniku bazy danych (ang. database dictionary), słownik bazy danych jest też nazywany katalogiem bazy danych (ang. database catalog), system zarządzania bazą danych działa niezależnie od aktualnie przyjętej struktury bazy danych, każdorazowy dostęp do elementu danych wymaga ustalenia w słowniku struktury pliku i pozycji żądanego elementu. Niezależność programów i danych niezależność programów i danych (ang. program-data independence) wynika z przeniesienia definicji struktur danych do słownika bazy danych; zmiany struktury danych nie wpływają na programy 0 31 41 49 Nazwisko Indeks Kierunek DataUrodzenia Porównanie: systemy plikowe Definicja danych jest najczęściej elementem aplikacji przetwarzającej dane, w zależności od użytego języka może to być rekord (Pascal), struktura (C), klasa (C++ i Java). Systemy plikowe działają tylko z określonym rodzajem plików danych. niezależność programów i operacji (ang. program-operation independence) polega na rozdzieleniu sygnatury (interfejsu) od ciała operacji (implementacji), dzięki czemu zmiany implementacji operacji są transparentne dla programów korzystających z sygnatury operacji Systemy plikowe a bazy danych (3/4) 15 Systemy plikowe a bazy danych (4/4) 16 Wiele różnych widoków danych widok (perspektywa) to sposób postrzegania zawartości bazy danych przez każdego użytkownika, widok może oznaczać: ograniczony podzbiór danych wirtualne dane wywiedzione z oryginalnych danych Współdzielenie danych i przetwarzanie transakcyjne kontrola współbieżności (ang. concurrency control) ma na celu umożliwienie wielu użytkownikom dokonywania jednoczesnego dostępu do współdzielonych danych z zachowaniem poprawności modyfikacji Nazwisko Średnia Biały 4.0 Niebieski 4,125 HistoriaStudiów PrzNumer Ocena Semestr Rok WNumer INF03 dst lato 2005 78 INF03 bdb zima 2006 101 MAT06 db lato 2004 56 INF03 db+ lato 2005 78 INF12 dst zima 2005 67 MAT06 bdb zima 2006 122

Dramatis personæ (1/2) 17 Dramatis personæ (2/2) 18 Aktorzy na scenie administrator bazy danych (ang. DBA - database administrator): administrowanie zasobami systemu, autoryzacja dostępu, monitorowanie stanu systemu, aktualizacja sprzętu i oprogramowania projektant bazy danych (ang. database designer): wybór struktury i typów danych dla elementów danych, projektowanie powiązań między danymi, integracja perspektyw użytkowników końcowych użytkownik końcowy użytkownik dorywczy: zapytania ad hoc, język zapytań użytkownik naiwny: standardowe operacje, gotowe aplikacje użytkownik zaawansowany: zaawansowane mechanizmy b.d. użytkownik samodzielny: jednoosobowe aplikacje, gotowe pakiety analityk systemowy i programista: opracowanie wymagań użytkowników końcowych, implementacja i testowanie programów Pracownicy za sceną projektanci i programiści SZBD: projektowanie i implementacja systemu zarządzania bazą danych, tworzenie modułów przetwarzania zapytań, interfejsów programistycznych, struktur dostępu, itp. twórcy narzędzi: budowa opcjonalnych pakietów programów narzędziowych do projektowania baz danych, odtwarzania, budowania kopii zapasowych, narzędzi do importowania i eksportowania danych, graficznych interfejsów użytkownika, narzędzi do monitorowania i strojenia bazy danych administratorzy: strojenie i pielęgnacja środowiska w którym działa system baz danych, w szczególności administratorzy systemów operacyjnych i administratorzy sieci komputerowych Dlaczego używać bazy danych? (1/3) 19 Dlaczego używać bazy danych? (2/3) 20 Kontrola nadmiarowości danych nadmiarowość danych (ang. redundancy) polega na przechowywaniu tego samego elementu danych w wielu plikach pojedyncza logiczna modyfikacja pociąga wiele fizycznych modyfikacji, marnowanie przestrzeni dyskowej, niespójność danych. ze względów efektywnościowych pewien stopień nadmiarowości danych czasami bywa pożądany Oceny Studenci Nazwisko Indeks Kierunek Biały 123456 INF......... RaportZOcenami Indeks WNumer Ocena 123456 78 dst 123456 101 bdb......... Indeks Nazwisko WNumer PrzNazwa Ocena 123456 Biały 78 Wprowadzenie do informatyki dst 123456 Biały 101 Wprowadzenie do informatyki bdb............... Kontrola dostępu system bazy danych autoryzuje użytkowników i zarządza przywilejami obiektowymi (prawa dostępu do danych) i systemowymi (prawa wykonywania operacji) Trwałe składowanie obiektów i struktur danych składowanie obiektów aplikacyjnych po zakończeniu programu jest trudne i pracochłonne (np. ręczna serializacja obiektów), tzw. problem niezgodności dopasowania (ang. impedance mismatch problem) Wykorzystanie reguł dedukcyjnych współczesne systemy baz danych mogą wywodzić nową wiedzę na podstawie zgromadzonych danych poprzez złożone reguły dedukcyjne stanowiące odbicie zasad miniświata Wielość interfejsów języki zapytań, interfejsy programistyczne (API), formularze i raporty, graficzne narzędzia użytkownika (GUI)

Dlaczego używać bazy danych? (3/3) 21 Implikacje wykorzystania bazy danych 22 Reprezentowanie złożonych zależności między danymi SZBD zarządza zależnościami między elementami danych (Student Oceny studenta), umożliwia efektywne i łatwe odczytywanie i modyfikowanie powiązanych danych Wymuszanie ograniczeń integralnościowych ograniczenia integralnościowe to reguły poprawności danych typ danych (nazwisko to ciąg liter, spacji i myślników) wartości danych (płeć to znak 'K' lub 'M') zakresy danych (wiek to liczba całkowita z przedziału <0,150>) związki między danymi (numer indeksu w raporcie z ocenami musi występować w pliku z danymi studentów) unikalność (numery PESEL studentów muszą być unikalne) opcjonalność/obligatoryjność (nazwisko musi być wypełnione) Kopie bezpieczeństwa i odtwarzanie po awarii Wymuszenie standardów ułatwienie komunikacji, uspójnienie nazewnictwa, symboli, oznaczeń, formatów, struktur raportów Efekt RAD szybkie tworzenie aplikacji (ang. rapid application development) jest możliwe dzięki przeniesieniu obsługi wielu typowych operacji na poziom systemu zarządzania bazą danych Elastyczność Dostępność aktualnych danych wszyscy użytkownicy współdzielą dane, pojawia się jedno źródło prawdy (ang. single source of truth) Zyski ekonomiczne konsolidacja danych i aplikacji, eliminacja redundancji, zwolnienie zasobów sprzętowych i ludzkich, zmniejszenie kosztów zarządzania Dlaczego nie używać bazy danych? 23 Podsumowanie 24 Wykorzystanie systemu baz danych pociąga za sobą istotny narzut, którego koszty mogą przekroczyć oczekiwane zyski z inwestycji. Narzut jest spowodowany: dużym kosztem początkowym inwestycji w sprzęt, oprogramowanie i szkolenie użytkowników, ogólnym charakterem SZBD, zapewnianiem współbieżności, autoryzacji i uwierzytelniania, przetwarzania transakcyjnego, wymuszania ograniczeń integralnościowych, odtwarzania po awarii Bazy danych nie wykorzystujemy gdy: baza danych i aplikacje są proste, dobrze zdefiniowane, nie podlegające ewolucji w czasie, występuje wymaganie przetwarzania w czasie rzeczywistym, wielodostęp nie jest wymagany. Podstawowe pojęcia baza danych, SZBD Porównanie baz danych i systemów plikowych słownik bazy danych, izolacja programów, danych i operacji, wsparcie wielu widoków danych, zarządzanie współbieżnym dostępem Użytkownicy bazy danych administrator, projektanci, użytkownicy końcowi, analitycy systemowi, projektanci SZBD i programów narzędziowych Cechy systemu baz danych kontrola nadmiarowości, autoryzacja, zapewnianie trwałości, reguły dedukcyjne, wsparcie ograniczeń integralnościowych, odtwarzanie Zalety i wady stosowania baz danych

Pytania 25 Zdefiniuj poniższe pojęcia baza danych, system zarządzania bazą danych, system bazy danych, słownik bazy danych, niezależność programów i danych, DBA, użytkownik naiwny, trwały obiekt aplikacyjny, metadane, kontrola współbieżności Podaj najważniejsze różnice między stosowaniem systemu bazy danych a stosowaniem systemu plikowego Podaj 3 obowiązki administratora bazy danych (DBA) Opisz różnice między różnymi kategoriami użytkowników końcowych Porównaj cechy systemu bazy danych z edytorem tekstu (na przykładzie MS Word), omów kontrolę redundancji, wielodostęp, backup i odtwarzanie, złożone zależności między danymi, ograniczenia integralnościowe