Czym jest baza danych?

Podobne dokumenty
Bazy danych 2. Wykład 1

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

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

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

Podstawowy Wykład z Systemów Baz Danych

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

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

Bazy danych. Zaliczenie. Literatura. Strony WWW. Wykład 1: Wprowadzenie do baz danych. Semestr 1

SZKOLENIE: Administrator baz danych. Cel szkolenia

Pojęcie systemu baz danych

RELACYJNE BAZY DANYCH

Bazy danych w sterowaniu

Podstawy Systemów Zarządzania Baz Danych

Bazy danych. Andrzej Łachwa, UJ, /15

Zarządzanie transakcjami

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

Hurtownie danych. Przetwarzanie zapytań. ZAPYTANIA NA ZAPLECZU

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

Wykorzystanie standardów serii ISO oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych

Zintegrowane Systemy Zarządzania Biblioteką SOWA1 i SOWA2 ZAMAWIANIE I REZERWOWANIE

EXSO-CORE - specyfikacja

Systemy GIS Systemy baz danych

Logika Temporalna i Automaty Czasowe

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

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

Bazy danych. Dr inż. Paweł Kasprowski

Hurtownie danych. 31 stycznia 2017

Bazy danych. Zenon Gniazdowski WWSI, ITE Andrzej Ptasznik WWSI

Wprowadzenie do multimedialnych baz danych. Opracował: dr inż. Piotr Suchomski

Opis podstawowych modułów

Włodzimierz Dąbrowski, Przemysław Kowalczuk, Konrad Markowski. Bazy danych ITA-101. Wersja 1

Podstawy Systemów Zarządzania Baz Danych

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

E-commerce. Genialnie proste tworzenie serwisów w PHP i MySQL.

Spis treści. Przedmowa

Deduplikacja danych. Zarządzanie jakością danych podstawowych

System Obsługi Wniosków

Specyfikacja wymagań systemowych (może podlegać edytowaniu na kolejnych etapach)

Logika Temporalna i Automaty Czasowe

Adam Cankudis IFP UAM

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

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

ECDL/ICDL Użytkowanie baz danych Moduł S1 Sylabus - wersja 5.0

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

System zarządzania materiałami firmowymi

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

Alicja Marszałek Różne rodzaje baz danych

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

Wprowadzenie do technologii Business Intelligence i hurtowni danych

Projektowanie Zorientowane na Dziedzinę. ang. Domain Driven Design

Plan wykładu. Przykład. Wprowadzenie BAZY DANYCH. Transakcje Hurtownie danych

Liczba godzin Punkty ECTS Sposób zaliczenia. ćwiczenia 30 zaliczenie z oceną. ćwiczenia 30 zaliczenie z oceną

Currenda EPO Instrukcja Konfiguracji. Wersja dokumentu: 1.3

P o d s t a w y j ę z y k a S Q L

Usługi analityczne budowa kostki analitycznej Część pierwsza.

Praca w sieci z serwerem

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

OfficeObjects e-forms

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

risk AB ZARZĄDZANIE RYZYKIEM OPERACYJNYM Dodatkowe możliwości programu: RYZYKO BRAKU ZGODNOŚCI PRALNIA

Podstawy teoretyczne baz danych. Recovery Transakcyjne odtwarzanie bazy danych po awarii

Relacyjne, a obiektowe bazy danych. Bazy rozproszone

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

Problemy niezawodnego przetwarzania w systemach zorientowanych na usługi

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

Określanie wymagań. Cele przedsięwzięcia. Kontekst przedsięwzięcia. Rodzaje wymagań. Diagramy przypadków użycia use case diagrams

Wykład :45 BD-1 W_3

PRZEWODNIK PO PRZEDMIOCIE

serwisy W*S ERDAS APOLLO 2009

Modelowanie i analiza systemów informatycznych Spis treści

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

Dokumentacja wstępna TIN. Rozproszone repozytorium oparte o WebDAV

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

Funkcjonalność jest zgrupowana w następujących obszarach:

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

EGZAMIN POTWIERDZAJĄCY KWALIFIKACJE W ZAWODZIE Rok 2018 ZASADY OCENIANIA

Platforma elektronicznego obiegu dokumentów dla klientów KBA. Copyright by Korycka, Budziak & Audytorzy Sp. z o.o.

Bazy danych w geomatyce Databases in Geomatics

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

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

ZAPYTANIE OFERTOWE. Wsparcie projektów celowych

Zespół Szkół Ponadgimnazjalnych nr 1 im. ks. Stanisława Konarskiego w Jędrzejowie

ZAŁĄCZNIK NR 3 OPIS PRZEDMIOTU ZAMÓWIENIA DOTYCZĄCY WDROŻENIA PLATFORMY ZAKUPOWEJ

I. KARTA PRZEDMIOTU CEL PRZEDMIOTU

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

System plików warstwa fizyczna

System plików warstwa fizyczna

System plików warstwa fizyczna

CRM VISION FUNKCJE SYSTEMU

System automatycznego wysyłania SMSów SaldoSMS

Hurtownie danych. Wstęp. Architektura hurtowni danych. CO TO JEST HURTOWNIA DANYCH

Obsługa transakcji rozproszonych Java. Marek Wojciechowski, Maciej Zakrzewicz Instytut Informatyki, Politechnika Poznańska

Cele przedsięwzięcia

Projektowanie architektury systemu rozproszonego. Jarosław Kuchta Projektowanie Aplikacji Internetowych

Oracle11g: Wprowadzenie do SQL

Krzysztof Kadowski. PL-E3579, PL-EA0312,

Baza danych sql. 1. Wprowadzenie

Kopie bezpieczeństwa NAPRAWA BAZ DANYCH

Transkrypt:

Czym jest baza danych? Dane = znane fakty. Baza danych to zbiór powiązanych ze sobą danych, które można w jakiś sposób zarejestrować i które mają konkretne znaczenie. Przykład: książka adresowa. Jan Kowalski posiada książkę adresową znajomych. Książka ta zawiera następujące informacje o znajomych: imię, nazwisko, adres, numer telefonu. Ponadto znajomi są uporządkowanie wg kolejności alfabetycznej nazwisk. Książka adresowa może mieć postać zeszytu lub pliku exel. Jest to bez wątpienia zbiór powiązanych ze sobą danych.

Czym jest baza danych? Podana definicja jest zbyt ogólna, np.: powyższy slajd jest zbiorem powiązanych ze sobą słów, a zatem należałoby go potraktować jako bazę danych. Pojęcie bazy danych należy uszczegółowić. Od bazy danych oczekuje się następujących własności: opisuje jakiś wybrany aspekt świata rzeczywistego nazywany mini-światem lub dziedziną problemu, jest logicznie spójnym zbiorem danych tzn. spełnia ograniczenia nałożone na dane, jest projektowana, konstruowana i wypełniana danymi w określonym celu, do bazy danych powinna być przypisana grupa użytkowników.

System zarządzania bazą danych System zarządzania bazą danych(szbd) jest zbiorem programów organizujący dane w bazie. Od SZBD oczekuje się: umożliwienia użytkownikowi utworzenia nowej bazy danych i określanie jej schematu za pomocą języka definiowania danych(data-definition language), udostępnienia użytkownikowi możliwości tworzenia zapytań o dane oraz aktualizowania danych za pomocą języka zapytań (query language) lub języka operowania danymi (data-manipulation language), możliwości przechowywania olbrzymiej ilości danych przez długi czas, chroniąc je przed przypadkowym i niepowołanym dostępem, sterowanie jednoczesnym dostępem do danych przez wielu użytkowników z zapewnieniem bezkolizyjności i ochrony przed przypadkowym uszkodzeniem danych.

Wszechobecność baz danych odgrywają kluczową rolę w życiu codziennym współczenego społeczeństwa. Tradycyjne zastosowanie baz danych(bazy danych numerycznych i tekstowch): systemy bankowe: wpłata wypłata pieniędzy, bankomaty, przelewy online, rezerwacja pokoi hotelowych, rezerwacje biletów lotniczych, katalog biblioteczny, sklepy internetowe, markety- system aktualizuje informacje o stanie towaru w sklepie w trakcie robienia zakupów.

Wszechobecność baz danych Współczesne zastosowania baz danych: multimedialne b.d. przechowują zdjęcia, filmy, utwory muzyczne, systemy GIS system przechowujący dane geograficzne: mapy, zdjęcia satelitarne. Dane powiązane z punktami czy też innymi obiektami, dla których znane są współrzędne geograficzne, hurtownie danych i systemy OLAP pozwalają odkrywać wiedzę ukrytą w olbrzymich bazach danych a przez to wspomagać proces decyzyjny.

Przykład: system rezerwacji miejsc lotniczych Wymaga się, żeby: możliwa była rezerwacja na dany rejs dla konkretnego klienta obejmująca numer fotela, dostępne były informacje dotyczące rejsu: miejsce odlotu, port przeznaczenia, czas odlotu, czas przylotu, typ samolotu, była informacja o dostępności biletów i wariantach cen. Chcemy, żeby system zapewniał: możliwość wykonania zapytań o rejsy między wskazanymi portami w określonym czasie, dostępności i cenach odpowiednich miejsc, aktualizacje dotyczące rezerwacji rejsu klienta, przydzielenia miejsca, dostępność dla wielu agentów w jednym czasie, ochronę systemu przed pomyłką wynikającą z rezerwacji jednego miejsca przez więcej niż jednego klienta, ochronę danych przed utratą w przypadku usterki systemu.

Przykład: system bankowy Jakie dane są ważne: imię, nazwisko, adres, dane autoryzacyjne klienta, konta, kredyty, bilans na koncie, powiązanie kont i kredytów z klientami. Chcemy, żeby system zapewniał: możliwość wykonania zapytań o bilans na koncie, o wypływach i wypłatach z konta, aktualizacje wpłat i wypłat, ochronę systemu przed błędami!!! ochronę danych przed utratą w przypadku usterki systemu. W systemie bankowym nie ma miejsca na pomyłki!!!

Rys historyczny Pierwsze profesjonalne systemy zarządzania bazami danych pojawiły się pod koniec lat sześćdziesiątych. Początkowo były to system oparte na zwykłych systemach plików. Mankamentem była trudność w szybkim dostępie do danych oraz ryzyko ich utraty. System ten nie dostarczał możliwości wykonywania zapytań. Problem był również z jednoczesną pracą kilku użytkowników modyfikujących te same dane- tylko zmiany jednego z nich miały odzwierciedlenie w pliku. W pierwszych systemach zarządzania bazą danych dominowały dwa modele danych: hierarchiczny(drzewiasty) i sieciowy(grafowy). Systemy te nie dawały możliwości korzystania z języku zapytań wysokiego poziomu. Przez to napisanie programu obsługującego nawet proste zapytanie było bardzo skomplikowane.

Rys historyczny 1970rok-TedCodd-RELACYJNYMODELDANYCH. Dane reprezentowane są w postaci TABEL(relacji)- czytelnych dla użytkownika. Wewnątrz systemu istnieje złożona struktura danych, pozwalająca błyskawicznie wykonywać różnego rodzaju zapytania. Użytkownik nic nie musi wiedzieć o wewnętrznej strukturze danych, operuje jedynie wysokopoziomowym językiem zapytań.

Składowe SZBD

Moduł zarządzania pamięcią Zadaniem modułu zarządzania pamięcią jest wybieranie właściwych danych z pamięci i w razie potrzeby dostosowanie ich do wymagań modułów z wyższych poziomów. Składa się z dwóch części: moduł zarządzania plikami przechowuje informacje o miejscu zapisania plików na dysku i przekazuje zawartość bloku lub bloków, gdzie zapisany jest żądany plik modułowi zarządzania buforami, moduł zarządzania buforami obsługuje pamięć operacyjną, blokom przekazanym przez moduł zarządzania pamięcią przydziela obszar pamięci operacyjnej.

Moduł przetwarzania zapytań Obsługuje nie tylko zapytania, ale również aktualizacje danych czy też metadanych. Zadaniem tego modułu jest znalezienie optymalnego sposobu wykonania zadanych operacji i wydanie poleceń do modułu zarządzania pamięcią. Najtrudniejszym zadaniem, które musi wykonać ten moduł jest optymalizacja zapytań, tak żeby czas dostępu do danych był najkrótszy. W praktyce wyszukiwanie przyspieszają znacząco indeksy.

Moduł zarządzania transakcjami Moduł zarządzania transakcjami odpowiada za spójność systemu. Musi zagwarantować, że kilka jednocześnie przetwarzanych zapytań nie będzie sobie wzajemnie przeszkadzać oraz że żadne dane nie zostaną utracone, nawet na wypadek awarii systemu. Współpracuje z modułem zarządzania zapytaniami musi mieć na bieżąco informację o danych na których przetwarzane są zapytania, często przetwarzanie będzie musiało zostać opóźnione, żeby nie powstał konflikt. Poprawność przeprowadzania transakcji opisują właściwości ACID. niepodzielność(atomicity), spójność(consistency), izolacja(isolation), trwałość(durability).

Wejścia Mamy trzy wejścia do systemu zarządzania bazą danych: Zapytania czyli pytania o dane. Można je wykonywać na dwa sposoby: przez system zapytań bezpośrednich wbudowany w SZBD, przez interfejsy programów użytkownika typowy SZBD udostępnia możliwość realizacji zapytań na danych zarządzanych przez przez niego z poziomu aplikacji użytkownika, aktualizacje operacje zmiany danych, modyfikacje schematu czynności związane ze zmianą schema tu bazy danych wykonuje administrator bazy danych.

Jak transakcje to ACID Niepodzielność(atomicity) transakcja zostanie przeprowadzona albo żadne jej polecenie nie zostanie uwzględnione. W trakcie wypłaty pieniędzy z bankomatu, nie może być sytuacji że wypłata zostanie zapisana a pieniądze nie zostaną wypłacone. spójność(consistency) baz danych musi zapewniać oczekiwaną spójność danych. Np. dla linii lotniczych warunek spójności określa, że jedno miejsce w samolocie nie zostanie przydzielone dwom rożnym pasażerom. izolacja(isolation) dwie transakcje przetwarzane jednocześnie nie mogą na siebie wzajemnie wpływać. Jeśli dwie agencjesprzedająbiletynatensamrejsapozostałtylkojedenbilettotylko żądanie jedne z nich powinno zostać obsłużone, a drugie nie. trwałość(durability) jeśli transakcja zostanie zakończona to nawet w sytuacji awarii systemu wynik transakcji nie może zostać utracony.

Konsekwencje ACID Blokady równoczesne wykonywanie transakcji powoduje, że dwie transakcje mogą wykonać jednocześnie modyfikację tych samych danych. Wówczas zmiany pierwszej transakcji zostaną zniszczone zmianami drugiej. Dlatego moduł zarządzania transakcjami potrafi blokować elementy podlegające transakcji. Mechanizm zadziała w taki sposób, że dane zostaną zablokowane dla jednej transakcji i wówczas inne transakcje nie będą miały do nich dostępu. Dopiero po zakończeniu pierwszej transakcji druga uzyska dostęp, ale już do nowych wartości danych, jeśli te zostały zmienione. Logi moduł zarządzania transakcjami dokumentuje wszystkie operacje związane z transakcjami w logach przechowywanych w pamięci stałej(na dysku). Transakcje są przetwarzane w pamięci operacyjnej ale logi o nich na bieżąco są zapisywane na dysku. Logi zapewniają trwałość systemu. Zatwierdzanie transakcji transakcje przetwarzane są w pamięci operacyjnej, po zatwierdzeniu transakcji najpierw na dysku zapisuje się logi a potem dopiero następuje aktualizacja danych. Dzięki logom można sprawdzić, które operacje jeśli nie zostały nawet zapisane należy powtórzyć(w przypadku awarii systemu).

Architektura klient- serwer Większość systemów baz danych oparta jest na architekturze klient-serwer. Na serwerze znajduje się SZBD, do którego dostęp posiada wielu użytkowników- klientów. Po stronie klienta znajduje się aplikacja stanowiąca interfejs graficzny użytkownika, umożliwiający w czytelny sposób interpretację danych zawartych w bazie. We współczesnych rozwiązaniach systemowych często mamy do czynienia z architekturą trójwarstwowym pomiędzy klienta i serwer bazy danych dodatkowo dodany zostaje jeszcze jeden element a mianowicie serwer WWW. W tego typu rozwiązaniach najczęściej interfejsem użytkownika jest strona internetowa generowana w obrębie serwera www.