Podstawy baz danych Wykład

Slides:



Advertisements
Podobne prezentacje
Wprowadzenie do C++ Zajęcia 2.
Advertisements

Systemy do operowania dużymi i trwałymi zbiorami danych
przetwarzaniu informacji
Rola komputera w przetwarzaniu informacji.
Wykład (12 godz): Jan Aleksander Wierzbicki Ćwiczenia ( godz):
Bazy danych zastosowania i skutki Prentice Hall8.2 O czym będzie Elektroniczna przechowalnia informacji: podstawy baz danych Nieco dalej: Systemy.
Komponenty bazy danych Baza danych Jest to uporządkowany zbiór powiązanych ze sobą danych charakterystycznych dla pewnej klasy obiektów lub zdarzeń,
BAZA DANYCH - RODZAJE.
WPROWADZENIE DO BAZ DANYCH
25/08/2001 Bazy danych II 1 Piotr Górczyński Wstęp do SQL.
Wycofywanie potwierdzonych transakcji
Wykład 8 Wojciech Pieprzyca
Wstęp do programowania obiektowego
Rozproszone bazy danych
Projektowanie i programowanie obiektowe II - Wykład IV
Modele baz danych - spojrzenie na poziom fizyczny
Analiza, projekt i częściowa implementacja systemu obsługi kina
Bazy Danych Wykład 1 S. Kozielski.
Bezpieczeństwo baz danych
Architektura systemów wykorzystujących bazy danych (systemów bazodanowych) Wykład S. Kozielski.
Multimedialne bazy danych
Wykład 3 Analiza i projektowanie strukturalne
Wykład 2 Cykl życia systemu informacyjnego
Teoria relacyjnych baz danych
dr inż. Piotr Muryjas Wyższa Szkoła Przedsiębiorczości i Administracji
Bazy Danych II prowadzący: mgr inż. Leszek Siwik
Bazy danych.
Systemy baz danych Wykład 1
Temat 19: Organizacja informacji w bazie danych – część 1.
Budowanie tabel i relacji
Bazy danych.
Bazy danych Access 200x Ćwiczenie 1.
Moduł: Informatyka w Zarządzaniu
POŚREDNIK Jak reprezentowana jest informacja w komputerze? liczby – komputer został wymyślony jako zaawansowane urządzenie służące do wykonywania.
Zarządzanie informacją
Rozwiązanie zadań do zaliczenia I0G1S4 // indeks
Wybrane zagadnienia relacyjnych baz danych
WPROWADZENIE DO BAZ DANYCH
Programowanie obiektowe – język C++
Komendy SQL do pracy z tabelami i bazami
dr Łukasz Murowaniecki T-109
1 Każdy obiekt jest scharakteryzowany poprzez: tożsamość – daje się jednoznacznie wyróżnić; stan; zachowanie. W analizie obiektowej podstawową strukturą
Modelowanie obiektowe Diagramy UML – diagram przypadków użycia
Bazy danych Microsoft access 2007.
PREZENTOWANIE INFORMACJI O ZAWODACH MOTORCYCLES GRAND PRIX
Interakcja człowiek – komputer Podstawy metod obiektowych mgr inż. Marek Malinowski Zakład Matematyki i Fizyki Wydz. BMiP PW Płock.
Łódź 2008 Banki danych WYKŁAD 2 dr Łukasz Murowaniecki T-109.
Temat 3: Integralność danych. Integralność danych, określana również mianem spójności danych, jest to funkcja SZBD, która gwarantuje, że dane nie zostaną.
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski 1 informatyka +
Podstawowe informacje
Model obiektowy bazy danych
Temat 4: Funkcje Systemu Zarządzania Bazą Danych (SZBD)
System Zarządzania Bazą Danych
Systemy informatyczne
Projektowanie relacyjnych baz danych – diagramy związków encji
.NET i Bazy Danych Projekt: Wadim Grasza.
Projektowanie postaci formularza:
BAZY DANYCH MS Access.
Bazy Danych Wprowadzenie
BAZY DANYCH Microsoft Access Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej Katedra Automatyki i.
Prezentacja programu PowerPoint
Temat: Tworzenie bazy danych
T. 18. E Proces DGA - Działania (operatorka).
Kurs Access.
Projektowanie wspomagane komputerem
{ Wsparcie informacyjne dla zarządzania strategicznego Tereshkun Volodymyr.
Strukturalny język zapytań SQL - historia
Technologie Informacyjne Bazy danych
Modele baz danych - spojrzenie na poziom fizyczny
Zapis prezentacji:

Podstawy baz danych Wykład 1 3.10.2006 Antoni Dydejczyk http://www.ftj.agh.edu.pl/~antek

Tematyka wykładów Relacyjny model danych Język SQL Normalizacja w bazach danych, optymalizacja zapytań Zagadnienia bezpieczeństwa w bazach danych Techniczne aspekty stawiane systemom baz danych Dostęp do baz danych – ODBC, JDBC, CGI, Perl, PHP Język XML w systemach baz danych Narzędzia CASE w trakcie projektowania baz danych

Literatura Thomas Connolly, Carolyn Begg, Systemy baz danych Pearson Education Limited 2002, tłumaczenie RM 2004 Jeffrey D. Ullman, Jennifer Widom Podstawowy wykład z systemów baz danych Wydawnictwo Naukowo - Techniczne 2000 C.J.Date Wprowadzenie do systemów baz danych Wydawnictwo Naukowo – Techniczne 2000 Mark Whitehorn, Bill Marklyn Relacyjne bazy danych Wydawnictwo Helion 2002

Warunki zaliczenia Projekt 1 – prosta baza w Access’ie Projekt 2 – rozbudowany projekt – SQL Wystąpienie 10-15" na zajęciach (Test – podstawowe zagadnienia dotyczące baz danych) Diagramy ER w opisie baz danych Relacyjne bazy danych Normalizacja w relacyjnych bazach danych Bezpieczeństwo w bazach danych Zagadnienia techniczne w bazach danych Dostęp do baz danych

Bazy danych Historia badań w zakresie baz danych stanowi przykład wyjątkowej efektywności i niesamowitego sukcesu ekonomicznego. Mimo, że bazy danych są przedmiotem badań naukowych od dwudziestu lat, zasilają przemysł informatyczny około 10 miliardami dolarów rocznie w samych Stanach Zjednoczonych. Osiągnięcia w dziedzinie baz danych przyczyniły się walnie do rozwoju systemów komunikacyjnych, zagadnień transportowych i logistycznych, zarządzania finansami, systemów wnioskowania na podstawie danych, dostępu do informacji naukowej oraz wielu innych zastosowań cywilnych i wojskowych. Umożliwiły także istotny postęp w wielu klasycznych dziedzinach nauki, takich jak sama informatyka czy, na przykład, biologia. ( Silberschatz i in. 1990, 1996 )

Czym jest baza danych ? Baza danych jest : zbiorem informacji istniejącym przez długi czas, zbiorem powiązanych danych, uporządkowanym zbiorem danych, do których może mieć dostęp wielu użytkowników jednocześnie w dowolnym odpowiadającym im momencie czasu, logicznie spójnym zbiorem danych, przechowywanych w komputerze, który służy określonym celom i do którego istnieje współbieżny dostęp wielu użytkowników.

Czym jest baza danych ? W potocznym rozumieniu termin baza danych odnosi się do zbioru danych zorganizowanego przez system zarządzania bazą danych. Baza danych – systemy przetwarzania danych przechowywanie danych przetwarzanie danych wyszukiwanie danych

Przykładowe bazy danych system rezerwacji miejsc (hotel, biuro podróży, linie lotnicze) systemy bankowe, firmy ubezpieczeniowe system biblioteczne system dokumentujący działanie przedsiębiorstwa gospodarka materiałowa zarządzanie personelem obsługa zamówień i księgowość zarządzanie i planowanie produkcji

Wspólne cechy baz danych proste zbiory danych o stałym formacie, które mogą być opisane na poziomie logicznym, zwłaszcza przy zastosowaniu modeli danych opartych na rekordach; proste typy danych dla wartości pól lub atrybutów, opisujących zbiór danych sparametryzowane, wstępnie zdefiniowane zapytania, opisujące powtarzalne zadania wykonywane przez bazę danych; bezpośrednia aktualizacja, powodująca zastąpienie starych wartości nowymi bez zachowania starych wartości; krótkie transakcje, reprezentujące zadania do wykonania przez bazę danych w odpowiedniej do wykonania postaci.

System zarządzania bazą danych Umożliwienie użytkownikowi utworzenia nowej bazy danych i określenia jej schematu (logicznej struktury danych) za pomocą specjalizowanego języka definiowania danych ( DDL data definition language). Udostępnienie użytkownikowi możliwości tworzenia zapytań o dane, oraz aktualizowania danych (query language - DML data manipulation language). Zapewnienie możliwości przechowywania ogromnej ilości danych, ochrony danych przed niepowołanym dostępem, oraz efektywnego dostępu do danych Sterowanie jednoczesnym dostępem do danych przez wielu użytkowników

System zarządzania bazą danych Wejście - wprowadzanie danych - kontrola poprawności danych Wyjście - wyprowadzanie danych - raporty, wydruki Przetwarzanie danych - zakładanie zbiorów danych - wprowadzanie danych do zbiorów - aktualizacja danych - przetwarzanie i wyszukiwanie - wytwarzanie dokumentów zewnętrznych Dodatkowe funkcje systemu : - kontrola integralności danych - zgodność wszystkich danych - zabezpieczenie przed utratą danych - ochrona danych przed nieuprawnionym dostępem

Wejścia do systemu SZBD Główne elementy SZBD Wejścia do systemu SZBD Zapytania – pytania o dane. poprzez interfejs zapytań bezpośrednich poprzez interfejsy programów użytkowych Aktualizacja – operacja zmiany danych (aktualizacja możliwa poprzez interfejsy j.w.) Modyfikacja schematu – umożliwia administratorowi systemu zmianę schematu bazy danych, pozwala tworzyć nowe bazy danych.

Moduł zarządzania pamięcią Główne elementy SZBD Moduł zarządzania pamięcią Wybiera właściwe dane z pamięci i dostosowywać je do wymagań wyższych modułów moduł zarządzania plikami – organizuje wymianę danych zawartych w plikach w oparciu o strukturę fizyczną systemu plików - bloki dyskowe moduł zarządzania buforami – organizuje wymianę danych pomiędzy pamięcią operacyjną a blokami na dysku

Moduł przetwarzania zapytań Główne elementy SZBD Moduł przetwarzania zapytań Obsługa zapytań i aktualizacji danych optymalizacja zapytania indeksowanie bazy danych optymalizacja przeszukiwania bazy danych

Moduł zarządzania transakcjami Główne elementy SZBD Moduł zarządzania transakcjami Odpowiada za spójność systemu Transakcja – nieformalna grupa operacji przeznaczona do wykonania razem w jednym ciągu, jako duża operacja jednostkowa.

Dodatkowe moduły SZBD – zarządzania rozproszonymi danymi – tworzenia i administrowania replikami Replika danych – dane są znacznie częściej ‘używane’ niż aktualizowane; nie jest tylko kopią danych – to dynamiczne uaktualnienie tego co zostało zmienione (wykorzystuje się to np. u ‘mobilnych agentów’ – używanie komputerów przenośnych – mających zminimalizowaną bazę danych) Techniki tworzenia replik : - tryb synchroniczny – w momencie aktualizacji od razu tworzona jest replika - tryb asynchroniczny – przedziały czasowe lub zdarzenie wywołuje proces uaktualnienia

SZBD schematycznie Zestaw narzędzi SZBD Interfejs SZBD Model danych Jądro SZBD Świat zewnętrzny Baza danych

Podsystem komunikacyjny SZBD Klient 1 Klient 2 Klient 3 Podsystem komunikacyjny SZBD System operacyjny Baza danych

Ewolucja modeli danych Płaski model relacyjny System plików Diagramy Bachmana Model hierarchiczny Model sieciowy Płaski model relacyjny Zagnieżdżony model relacyjny Model związków encji Modele obiektów złożonych Semantyczne modele danych Model obiektowy

Modelowanie baz danych Zorientowany obiektowo DBMS ODL Pojęcia Relacje Relacyjny DBMS E/R E/R - Entity - Relationship ODL - Object Definition Language DBMS - Database Management System

Główne typy (generacje) baz danych 1. Proste modele danych. Dane zorganizowane są w strukturę rekordów zgrupowanych w plikach. Głównymi dostępnymi operacjami są operacje na rekordach (ewentualnie na ich poszczególnych polach). 2. Klasyczne modele danych. Należą do nich modele hierarchiczne, sieciowe i relacyjne. Modele relacyjne stanowią najbardziej popularną obecnie podstawę architektur systemów baz danych. 3. Semantyczne modele danych. Semantyka to inaczej znaczenie. Klasyczne modele danych nie dostarczają łatwego sposobu odczytania informacji o semantyce danych, stąd podejmuje się próby stworzenia innych modeli, uzupełniających ten brak. Przykładem częściowej realizacji tego programu są obiektowe modele danych.

Zasady (reguły) opisujące modele BD Model danych (a w odniesieniu do konkretnej realnej sytuacji - architektura systemu baz danych) - zbiór ogólnych zasad posługiwania się danymi. Zbiór ten obejmuje trzy główne części: 1. Definicja danych: zbiór reguł określających logiczną strukturę danych; 2. Operowanie danymi: zbiór reguł dotyczących procesu dostępu do danych i ich modyfikacji; 3. Integralność danych: zbiór reguł określających., które stany bazy danych są poprawne (a więc zarazem jakie operacje prowadzące do modyfikacji danych są dozwolone).

Architektura baz danych Model zewnętrzny - opisuje świat z punktu widzenia użytkowników baz danych - może istnieć wiele modeli zewnętrznych tej samej rzeczywistości - nie musi być związany z konkretnym modelem danych Poziomy abstrakcji Model zewnętrzny Schemat zewnętrzny Model pojęciowy Schemat pojęciowy Model wewnętrzny Schemat wewnętrzny

Architektura baz danych Poziomy abstrakcji Model zewnętrzny Schemat zewnętrzny    Model pojęciowy - tworzony przez analityków - opisuje świat w kategoriach konkretnego modelu danych - abstrahuje od szczegółów implementacji odpowiada na pytanie "co?" a nie "jak?" Model pojęciowy Schemat pojęciowy Model wewnętrzny Schemat wewnętrzny

Architektura baz danych Poziomy abstrakcji Model zewnętrzny Schemat zewnętrzny  Model wewnętrzny tworzony przez projektantów SZBD izolowany od aplikacji zarządzany przez administratora definiuje struktury danych i związane z nimi ścieżki dostępu oferuje fizyczną reprezentację danych, partycjonowanie dysku, alokację pamięci Model pojęciowy Schemat pojęciowy Model wewnętrzny Schemat wewnętrzny

Architektura baz danych Poziomy abstrakcji Języki Model zewnętrzny Definicja danych Schemat zewnętrzny Model pojęciowy Manipulacja danymi Schemat pojęciowy Model wewnętrzny Administracja danych Schemat wewnętrzny

Języki baz danych Do operowania na bazach danych służą następujące języki: Język definiowania danych (ang. DDL - Data Definition Language) umożliwiający definiowanie struktury danych przechowywanych w bazie, czyli schematu bazy danych Język manipulowania danymi (ang. DML - Data Manipulation Language) umożliwiający dodawanie, modyfikowanie i usuwanie informacji w bazie danych Język sterowania danymi (ang. DCL - Data Control Language) umożliwiający sterowanie transakcjami Język zapytań (ang. QL - Query Language) - umożliwiający pobieranie informacji z bazy danych. W praktyce te cztery języki są ze sobą zintegrowane. Takim zintegrowanym językiem jest m.in. SQL (ang. Structured Query Language). Do listy języków można tu jeszcze dodać rozszerzenia proceduralne stosowane przez różne firmy produkujące SZBD.

SZBD – z perspektywy projektanta systemu Poziom interfejsu Model danych i język zapytań Interfejs języka wewnętrznego Inne interfejsy Poziom języka przetwarzania Zarządzanie perspektywami Kompilator języka Sterowanie integralnością semantyczną Interpreter języka Autoryzacja Dekompozycja zapytania Generowanie planu dostępu Optymalizacja zapytania Poziom przetwarzania transakcji Wykonanie planu dostępu Generowanie transakcji Kontrola współbieżności Zarządzanie buforem Odtwarzanie Poziom zarządzania pamięcią pomocniczą Zarządzanie fizyczną strukturą danych Dostęp do dysku

Problem Dziennik ocen. Możliwość sortowania wg nazwiska, daty, oceny. Możliwość tworzenia list dla różnych przedmiotów Rozwiązania: Rozwiązanie przy pomocy arkusza kalkulacyjnego - Excel. Rozwiązanie przy pomocy bazy danych – Access.

Dane Nazwisko tekstowa 25 Imię tekstowa 20 Ocena całkowita Data oceny data Przedmiot tekstowa 20

Arkusze zawierają dane dla poszczególnych przedmiotów Excel Arkusze zawierają dane dla poszczególnych przedmiotów

Excel Operacje możliwe do wykonania na danych w arkuszu kalkulacyjnym sortowanie filtrowanie formularz operacje matematyczne

Excel Sortowanie danych

Excel Filtrowanie danych

Excel Formularz

Tabele danych w programie Access

Relacje pomiędzy tabelami Access Relacje pomiędzy tabelami

Formularz wprowadzający dane Access Formularz wprowadzający dane

Formularz przedstawiający dane zawarte w tabeli Access Formularz przedstawiający dane zawarte w tabeli

Wprowadzanie danych do tabeli ocena Access Wprowadzanie danych do tabeli ocena

Przedstawienie danych zawartych w tabeli - ocena Access Przedstawienie danych zawartych w tabeli - ocena