Co to jest Baza Danych Wielki, zintegrowany, zbiór r informacji Stanowi model świata rzeczywistego jednostki Entities (e.g., studenci ci, kursy, wykładowcy adowcy) relacje Relationships (e.g., Sławski prowadzi Technologie Informatyczne) A System zarządzania bazą DataBase Management System (DBMS) pakiet software do przechowywania i zarządzania bazą danych
Dlaczego nie Pliki? Szybki dostęp p aplikacji do ogromnych zasobów w (OS nie jest wystarczająco co efektywny) Szybkie i logiczne przeszukiwanie zasobów (formułowanie owanie zapytań do bazy queries) Zabezpieczenie przed uszkodzeniem albo niezgodności cią zasobów w z powodu jednoczesnego dostępu wielu użytkowniku ytkowników. w. Odzyskiwanie zasobów w po awariach Bezpieczeństwo i kontrola dostępu (OS dostarcza ograniczone narzędzia dzia)
Dlaczego DBMS Niezależno ność danych Efektywny dostęp Krótki czas budowy aplikacji Integralność i bezpieczeństwo danych Jednolite zarządzanie danymi Zgodny równoczesny r dostęp Odzysk po awariach
Dlaczego Bazy Danych Przejście od computation do information low end : od zasobów w lokalnych do webspace high end : zastosowania naukowe i biznesowe Wzrost różnorodnor norodności i ilości informacji Elektroniczne biblioteki, interaktywne foto i video, zasoby naukowe, zasoby encyklopedyczne
Systemy Baz Danych ORACLE SYBASE INFORMIX DB2 Ingres BTree SQL Server MS Access dbase
Modele e Danych data model opis organizacji zasobów w danych schema to opis konkretnego zasobu danych zgodnie z określonym modelem danych relational data model to dziś najszerzej stosowany model danych relation, tabela z wierszami i kolumnami Każda relacja ma schema, która opisuje kolumny (pola)
Ewolucja Modelu Danych
Poziomy Abstarkcji wiele views, jeden conceptual (logical) schema jeden physical schema View opisuje jak użytkownik u widzi dane Conceptual schema definiuje strukturę logiczną Physical schema definiuje zbiory i indeksy View 1 View 2 View 3 Conceptual Schema Physical Schema
Conceptual schema E/R model Entities, Relationships, Attributes Cardinalities 1:1, 1:m, n:1, m:n Keys (klucze): superkey, primary key, foreign key X
Przykład ad: Baza Bankowa Kolumna (atrybut) Wiersz (rekord) Tabela (relacja)
Przykład ad: Baza Uniwers ersytecka Conceptual schema: Students ts (sid:string, name:string, login:string, age:integer, gpa:real)
Przykład ad: Baza Uniwers ersytecka Conceptual schema: Students ts (sid:string, name:string, login:string, age:integer, gpa:real) Enrolled (sid:string, cid:string, grade:string) Courses(cid:string cid:string, cname:string, credits:integer)
Relation (Tablica) Nazwa Schema Zbiór r kolumn i rekordów w zgodnych ze specyfikacją Schema STUDENTS X
table relationship Relationship tworzy się pomocą kluczy (keys) Primary Key to pole w którym występuj pują unikalne wartości Foreign Key to pole które w innej relacji jest Primary Key Relationship pomiędzy Primary Key i Foreign Key zapewnia integralność bazy
Przykład ad: Baza Uniwers ersytecka External Schema (View): Course_info(cid:string cid:string, numstud:integer) cid numstud 215 15 382 21
SQL SQL: standardowy język j Baz Danych Data Definition Language (DDL) tworzenie, modyfikacja, kasowanie relacji określanie zależno ności między relacjami Zarządzanie użytkownikami, u bezpieczeństwem, etc. Data Manipulation Language (DML) Tworzenie zapytań do odszukania rekordów spełniaj niających kryteria Dodawanie, modyfikacja, usuwanie rekordów.
SQL CREATE TABLE <name> ( <field> <domain>, ) SELECT <fields> FROM <name> WHERE <condition> INSERT INTO <name> (<field names>) VALUES (<field values>) DELETE FROM <name>where <condition> UPDATE <name> SET <field name> = <value> WHERE <condition>
SQL DDL CREATE TABLE <name> ( <field> <domain>, ) CREATE TABLE Students (sid CHAR(20), name CHAR(20), login CHAR(10), age INTEGER, gpa FLOAT)
SQL DML INSERT INTO <name> (<field names>) VALUES (<field values>) INSERT INTO Students (sid, name, login, age, gpa) VALUES ( 53688, Smith, smith@ee, 18, 3.2) DELETE FROM <name>where <condition> DELETE FROM Students S WHERE S.name = Smith
SQL DML UPDATE <name> SET <field name> = <value> WHERE <condition> UPDATE Students SET age = age + 1 UPDATE Enrolled SET grade = E WHERE grade = F
SQL DML SELECT <fields> FROM <name> WHERE <condition> SELECT name, sid, gpa FROM Students WHERE gpa > 3.3 Name Sid Gpa Jones 53666 3.4 Smith 53650 3.8 name sid gpa Jones 53666 3.4 Smith 53650 3.8
SQL DML SELECT <fields> FROM <name> WHERE <condition> SELECT S.name, E.cid FROM Students S, Enrolled E WHERE S.sid=E.sid AND E.grade='A'
Data Warehousing Co to jest data warehousing? Systemy przechowują dane operacyjne używane w codziennych transakcjach. Analitycy biznesu często nie mają dość wiedzy i narzędzi do przetwarzania danych operacyjnych. Wielokrotne procesy przetwarzania tych samych danych operacyjnych spowalnia systemy Format danych operacyjnych jest często niewygodny dla analityków biznesu. data warehousing rozwiązuje zuje te problemy poprzez tworzenie zasobów danych informacyjnych które sąs wytworzone na podstawie danych operacyjnych tak aby ułatwiu atwić analizę zjawiska i podjęcie właściwej w decyzji.
Data Warehousing Architektura Three Tier
Data Warehousing Architektura Three Tier
Data Warehousing Architektura Three Tier