Wprowadzenie. Definicja. Cechy bazy danych

Podobne dokumenty
Plan rozdziału. Wprowadzenie. Wprowadzenie. Specyfika baz 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

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

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

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

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

Systemy GIS Systemy baz danych

Wykład 2. Relacyjny model danych

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

SZKOLENIE: Administrator baz danych. Cel szkolenia

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

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

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

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

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

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

Adam Cankudis IFP UAM

Podstawy Systemów Zarządzania Baz Danych

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

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

PRZEWODNIK PO PRZEDMIOCIE

Krzysztof Kadowski. PL-E3579, PL-EA0312,

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

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

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

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

Baza danych. Modele danych

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

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

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

Projektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34

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

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

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

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

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

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

Technologia informacyjna

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

Zasady organizacji projektów informatycznych

Spis treści. Przedmowa

Zaawansowane Systemy Baz Danych

RELACYJNE BAZY DANYCH

PRZEWODNIK PO PRZEDMIOCIE

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

OfficeObjects e-forms

Technologia informacyjna

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

PROGRAM PRAKTYKI ZAWODOWEJ. Technikum Zawód: technik informatyk

KARTA PRZEDMIOTU 1,5 1,5

Baza danych. Baza danych to:

Alicja Marszałek Różne rodzaje baz danych

Opisy efektów kształcenia dla modułu

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

PROGRAM NAUCZANIA DLA ZAWODU TECHNIK INFORMATYK, O STRUKTURZE PRZEDMIOTOWEJ

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

ZMODYFIKOWANY Szczegółowy opis przedmiotu zamówienia

Bazy danych w sterowaniu

Wprowadzenie do technologii Business Intelligence i hurtowni danych

Bazy danych. Zenon Gniazdowski WWSI, ITE Andrzej Ptasznik WWSI

I. KARTA PRZEDMIOTU CEL PRZEDMIOTU

Czym jest baza danych?

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

Bazy danych 1. Podstawowe pojęcia

2017/2018 WGGiOS AGH. LibreOffice Base

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

Hurtownie danych. Przetwarzanie zapytań. ZAPYTANIA NA ZAPLECZU

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

Bazy danych - wykład wstępny

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

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>

INFORMATYKA Pytania ogólne na egzamin dyplomowy

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

Hurtownie danych wykład 5

Podstawowy Wykład z Systemów Baz Danych

Podstawy Systemów Zarządzania Baz Danych

WPROWADZENIE DO BAZ DANYCH

Modelowanie danych, projektowanie systemu informatycznego

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

Wykorzystanie regionalnej biblioteki cyfrowej do tworzenia repozytorium instytucjonalnego

Historia modeli programowania

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

Transakcje. (c) Instytut Informatyki Politechniki Poznańskiej

Grupy pytań na egzamin inżynierski na kierunku Informatyka

KARTA MODUŁU KSZTAŁCENIA

Projekt: MS i CISCO dla Śląska

Bazy danych i ich aplikacje

OfficeObjects e-forms

Jarosław Kuchta Projektowanie Aplikacji Internetowych. Projektowanie warstwy danych

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

Część I Rozpoczęcie pracy z usługami Reporting Services

INŻYNIERIA OPROGRAMOWANIA

Transkrypt:

Wprowadzenie 1

Plan rozdziału 2 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 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.

Specyfika baz danych 4 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, 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 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

Wymagania odnośnie zarządzania danymi 6 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 Na system bazy danych (ang. database system) składa się: baza danych, katalog bazy danych, system zarządzania bazą danych. system bazy danych system zarządzania bazą danych zapytania i programy moduł obsługi zapytań i programów moduł dostępu do danych katalog (metadane) baza danych

Technologie baz danych 8 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 Nazwisko Indeks Kierunek Biały 123456 INF Niebieski 778899 INF Przykład Przedmioty PrzNazwa PrzNumer PKr Wydział Systemy baz danych INF12 4 INF Wprowadzenie do informatyki INF03 2 INF Matematyka dyskretna MAT06 3 MAT 9 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 10

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 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. 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.

Systemy plikowe a bazy danych (2/4) 14 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 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 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 Nazwisko Średnia HistoriaStudiów PrzNumer Ocena Semestr Rok WNumer Biały 4.0 INF03 dst lato 2005 78 INF03 bdb zima 2006 101 MAT06 db lato 2004 56 Niebieski 4,125 INF03 db+ lato 2005 78 INF12 dst zima 2005 67 MAT06 bdb zima 2006 122

Systemy plikowe a bazy danych (4/4) 16 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

Dramatis personæ (1/2) 17 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

Dramatis personæ (2/2) 18 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 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......... Indeks WNumer Ocena 123456 78 dst 123456 101 bdb......... RaportZOcenami Indeks Nazwisko WNumer PrzNazwa Ocena 123456 Biały 78 Wprowadzenie do informatyki dst 123456 Biały 101 Wprowadzenie do informatyki bdb...............

Dlaczego używać bazy danych? (2/3) 20 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 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

Implikacje wykorzystania bazy danych 22 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 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.

Podsumowanie 24 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