background image

 

 

1

Materiały uzupełniające do 

Materiały uzupełniające do 

wykładu: Bazy danych 

wykładu: Bazy danych 

i hurtownie danych

i hurtownie danych

Materiały uzupełniające do 

Materiały uzupełniające do 

wykładu: Bazy danych 

wykładu: Bazy danych 

i hurtownie danych

i hurtownie danych

background image

Rola SZBD (DBMS) w firmie

W p ro w a d z a n ie

d a n y c h  i ra p o rty

D z ia ł S p rz e d a ż y

A p lik a c je  D z ia łu  S p rz e d a ż y

S Z B D

D z ia ł U m ó w

B a z a  d a n y c h

A p lik a c je  D z ia łu  U m ó w

W p ro w a d z a n ie

d a n y c h  i ra p o rty

background image

Zadania DBMS: 

Zarządzanie zbiorami danych 

tworzenie nowych zbiorów (jednostek 
logicznej struktury DBMS, tj. baz 
danych, tabel, ...) 

usuwanie zbiorów 

modyfikowanie struktury zbiorów 

wstawianie, aktualizowanie i usuwanie 
danych 

background image

Wyszukiwanie informacji 
w odpowiedzi na zapytania otrzymane od 
programów klienckich.

Zarządzanie bazą danych jako całością 

tworzenie kont użytkowników 

definiowanie uprawnień dostępu 

monitorowanie działania bazy danych

 

Zadania DBMS: 

background image

Kluczowe pojęcia 
z zakresu baz danych

Rekord (record) zwany także krotką 

lub wierszem, to pozioma struktura 

danych opisująca jeden obiekt. 

Rekord składa się z pól opisujących 

dokładnie cechy obiektu np. 

pojedynczego pracownika. 

Pole (field) zwane także atrybutem 

lub kolumną, to struktura danych 

opisująca pojedynczą daną w 

rekordzie np. nazwisko pracownika. 

background image

Tabela (table) - zbiór rekordów 
opisujących obiekty w sposób 
ujednolicony tj. każdy rekord posiada te 
same nazwy pól. 

Baza danych składa się z tabel, tabele 
składają się z rekordów, rekordy składają 
się z pól.

Format danej (data format) – postać 
wprowadzania i wyświetlania danej 
(np. format kodu pocztowego 99-999)

background image

Typy danych

(ang. data type) - rodzaj danej, czyli forma 

zapisu informacji:

znakowy (ang.character) dana może 
przybierać tylko wartości znaków pisarskich 

liczbowy (ang.number) dana może 
przechowywać tylko liczby 

logiczny (ang.logical) dana może 
przybierać tylko dwie wartości: prawda, 
fałsz
 (tak, nie

data (ang.date) postać daty i czasu np. 
rok.miesiąc.dzień godz:min:sek 

background image

alfanumeryczny (ang.alphanumeric) 

dana może przybierać wartości znaków 

ASCII oraz cyfry 

numeryczny (ang.numeric)  

wartościami danej mogą być tylko cyfry i 

znaki: + (plus), - (minus). 

walutowy (ang.currency) dana może 

przyjmować wartości liczbowe razem z 

symbolem waluty 

notatnikowy (ang.memo) dana może 

być oddzielnym zbiorem tekstowym 

służącym do przechowywania dowolnych 

opisów. 

background image

binarny (ang.binary) dana może być 

np. plikiem dźwiękowym lub 

filmowym. 

graficzny (ang.graphic) dana 

przechowuje grafikę (np. zdjęcia, 

wzory podpisów)

obiektowy (ang. object) dana 

przechowuje obiekty do których 

dostęp dokonuje się za pomocą 

techniki OLE (ang. object linking and 

embedding), czyli obiektów 

tworzonych przez różne aplikacje. 

background image

Model relacyjny

Najbardziej rozpowszechnionym obecnie 

modelem danych jest model relacyjny. 

Podstawową koncepcję modelu 

relacyjnego przedstawił w latach 

siedemdziesiątych E.F. Codd. 

background image

Model relacyjny (RDBMS)

Dane przechowywane są w tabelach, z 

których każda ma stałą liczbę kolumn i 

dowolną liczbę wierszy. Każda tabela ma 

zdefiniowany klucz danych (key) - 

wyróżniony atrybut lub kilka takich 

atrybutów, którego wartość 

jednoznacznie identyfikuje dany 

wiersz. Wyszukiwanie danych odbywa 

się za pomocą odwołania się programu 

do danego klucza i identyfikacji danego 

wiersza za jego pomocą 

background image

Przykładowe relacje 
przedstawione w postaci 
tabel 

background image

Tabela reprezentująca relację 
musi posiadać następujące 
właściwości:

nazwa tabeli jest nazwą relacji,

uporządkowanie kolumn tabeli jest nieistotne,

uporządkowanie krotek w tabeli jest nieistotne,

w tabeli nie może być dwóch takich samych 
krotek,

w kolumnie zawierającej wartości atrybutu 
A mogą występować wartości wyłącznie ze 
zbioru zwanego dziedziną atrybutu A.

background image

Dla modelu relacyjnego danych istotny jest 

fakt, że każda wartość atrybutu jest 

wielkością atomową (prostą, 

nierozkładalną). Jeśli spełniony jest 

omawiany warunek to mówimy, że relacja 

jest znormalizowana lub, że znajduje się 

w pierwszej postaci normalnej (1PN).

 

background image

Przykład bazy 
nieznormalizowanej

background image

Przykład bazy w pierwszej 
postaci normalnej

Pierwsza postać normalna jest konieczna aby, tabelę można było nazwać relacją.  
Większość  systemów  baz  danych  nie  ma  możliwości  zbudowania  tabel  nie 
będących w pierwszej postaci normalnej. 

background image

Relacyjna baza danych składa się z kilku 

powiązanych ze sobą tabel (relacji), które 

otrzymuje się w wyniku przeprowadzonego 

procesu normalizacji.

background image

Cechy baz relacyjnych

istnieje kilka źródeł danych (tabel) 
połączonych tzw. relacjami 

brak powtarzających się danych, gdyż te 
są zwykle wydzielone jako osobna tabela 

bazy tego typu można łatwo modyfikować 

łatwiejszy jest nadzór nad utrzymaniem 
integralności danych 

bazy tego typu ekonomicznie zarządzają 
zasobami (cechuje je mała redundancja) 

background image

Klucze tabeli

Realizacja szybkiego przeszukiwania bazy 
składającej się z wielu tabel wymaga obecności 
w tabeli pola lub ich zestawu jednoznacznie 
identyfikującego każdy rekord zapisany w 
tabeli. 

Pola takie noszą nazwę

 kluczy 

podstawowych

 tabeli (ang. primary key). 

Po zdefiniowaniu w tabeli klucza 
podstawowego, nie będzie można w jego pole 
wprowadzić wartości już istniejącej w tabeli ani 
wartości Null (pustej).

background image
background image

Klucz  obcy  to  taka  kolumna  w  tabeli,  która  zawiera 
wartości  będące  odnośnikami  do  klucza  głównego 
innej  tabeli  (sama  niekoniecznie  będąc  kluczem 
głównym - najczęściej nim nie jest). 

background image

Sortowanie rekordów - porządkowanie według 

jakiegoś kryterium.

Zapytanie (ang. query) lub kwerenda 

konstrukcja językowa, która pozwala na 

wyszukiwanie danych z bazy danych za pomocą 

zadawania pytań. Rodzaje kwerend to np.:

Wybierające 

Aktualizujące, 

Dołączające 

Usuwające  

Tworzące tabele 

Filtr - pozwala na wyświetlanie rekordów 

spełniających pojedyncze kryterium lub wiele 

kryteriów

Podstawowe operacje na 
relacyjnych bazach danych

background image

Operacje relacyjne

Operacja selekcji

Operacja projekcji

Operacja złączenia

background image

Operacja selekcji

Umożliwia pobranie 
wierszy (krotek) 
spełniających 
określony warunek. 

Operacja ta nazywana 
jest również 

podzbiorem 
poziomym

background image

Operacja projekcji

Umożliwia pobranie 
wartości wybranych 
pól (atrybutów) z 
wszystkich wierszy 
tabeli (krotek relacji). 

Operacja ta jest 
nazywana także 

podzbiorem 
pionowym

background image

Operacja złączenia

Umożliwia łączenie wierszy z dwóch lub więcej tabel 

z zastosowaniem określonego warunku łączenia. 

Wynikiem połączenia jest podzbiór produktu relacji czyli iloczynu 

kartezjańskiego

background image

Autorzy

Id_autor

Imię

Nazwisko

001

Adam

Mickiewicz

002

Bjarne

Stroustrup

Książki

Id_książki

Tytuł

Id_autor

100

Pan Tadeusz 001

200

Język C++

002

300

Dziady

001

Adam

Mickiewicz Pan 

Tadeusz

Adam

Mickiewicz Dziady

background image

SQL – Structured Query 
Language

Język używany do tworzenia i modyfikacji 
zapytań o raz sterowania dostępem do 
danych zorganizowanych w tabelach.
 
Z technicznego punktu widzenia, SQL 
jest podjęzykiem danych. Oznacza to, że 
jest on wykorzystywany wyłącznie do 
komunikacji z bazą danych. Nie posiada 
on cech pozwalających na tworzenie 
kompletnych programów

background image

Inne mechanizmy w bazach 
danych:

1. Raporty - czyli wydruki
2. Formularze
3. Makra
 (skrypty) - miniprogramy wspomagające 

wykonywanie szeregu kolejnych czynności (np. 

sterowanie formularzami)

4. Moduły (fragmenty kodu źródłowego w języku 

programowania wysokiego poziomu, np. Visual Basic, 

C++ itp.) - moduły pełnią tę samą funkcje co marka. 

Są stosowane do projektowania skomplikowanych 

operacji. Np. obliczeń, interakcyjnych interfejsów itp.

5. Mechanizmy grupowej modyfikacji (np. kwerendy 

aktualizujące)

6. Strony dostępu (formularze umożliwiające dostęp 

przez WWW, Access 2000 i nowsze)

background image

Organizacja systemu 
zarządzania bazą danych  

Scentralizowany system bazy danych 

Rozproszony system bazy danych

Lokalna baza danych 

background image

Ważniejsze systemy zarządzania 
bazą danych 

Systemy profesjonalne 

Oracle Corporation – 

PROGRESS Application Development Environment 

DB/2 (IBM )

Informix, 

Ingres

Sybase PL  

Adabas C, 

Gupta SQLBase

DBMS dla mniejszych firm 

Microsoft Access 

FoxPro (Microsoft) 

Paradox (Borland) 

dBase (Borland), 

MySQL 

background image

Hurtownie danych

background image

Definicje hurtowni danych (1

)

Twórca teorii hurtowni danych 

B.Immon

 

definiuje hurtownię danych jako:

tematycznie zorientowaną, spójną, 

chronologiczną 

i niezmienną kolekcję danych. 

background image

Hurtownie danych

Hurtownia danych to wydzielona 

centralna baza danych stworzona 

z myślą o prowadzeniu analiz 

służących do podejmowania decyzji 

strategicznych związanych 

z zarządzaniem organizacją.

background image

Hurtownia danych jest:

informacyjna a nie operacyjna, 

zorientowana na analizy oraz na 
wspomaganie decyzji, a nie na 
przetwarzanie transakcji, 

zwykle o architekturze 
klient/serwer, a nie pochodną 
bazującą na serwerze. 

background image

Cechy HD (Inmon)

 zbiór danych:

uporządkowany tematyczny 

spójny (zintegrowany)

chronologiczny (zawierający wymiar 
czasowy)

niezmienny (nieulotny)

background image

Cechy hurtowni danych 

uporządkowanie tematyczne – w hurtowni przechowywane są 

tylko te dane, które będą potrzebne do sporządzenia analiz 

w przewidywanym zakresie,

zintegrowanie – dane są przechowywane w ujednoliconym 

formacie, czyli dane dotyczące tego samego atrybutu 

a pochodzące z różnych źródeł przechowywane są w jednolity 

sposób,

niezmienność – w stosunku do hurtowni danych określa się 

tylko dwie operacje na danych: ładowanie danych oraz dostęp 

do danych. Dane zgromadzone w hurtownie nie podlegają 

modyfikacji w trakcie jej bieżącej eksploatacji,

oznaczenie czasowe gromadzonych danych – w hurtowni 

przechowywane są dane historyczne opatrzone znacznikiem 

czasu, który pozwala na ustalenie, z jakiego okresu 

historycznego dane te pochodzą.

background image

Uporządkowanie tematyczne

Dane  są  zorientowanie  na  najważniejsze  tematy, 
z punktu widzenia zarządzania przedsiębiorstwem. 

Tworzenie  HD  skupia  się  natomiast  na  modelowaniu 
danych  i  bazie  danych  w  sposób  wyłączny. 
Modelowanie  procesów  w  klasycznej  formie  nie  jest 
częścią środowiska HD. 

Z  HD  wyłączone  są  te  dane,  które  nie  są 
wykorzystywane  w  procesie  wspomagania  decyzji, 
podczas  gdy  dane  aplikacji  zawierają  informacje 
potrzebne  do  obsługi  procesów  bieżących.  Dane  te 
mogą, ale nie muszą być potrzebne analitykom firmy. 

background image

Spójność 

Najważniejszym aspektem HD jest to, że wszystkie bez 

wyjątku dane, które się w niej znajdują są zintegrowane. 

Integracja przejawia się w wielu różnych aspektach: nazwach, 

jednostkach miary, wyrażaniu czasu, struktur, opisów 

obiektów, postaci atrybutów itd. 

Integrowanie oznacza także łączenie danych z różnych 

systemów i zapewnia zunifikowane spojrzenie całościowe na 

sytuację firmy.

Potrzeba integracji wynika przede wszystkim z tego, że w 

ciągu wielu lat rozwijania systemu informatycznego organizacji 

różni twórcy podejmowali indywidualne decyzje odnośnie 

sposobów budowy aplikacji. (klucze, nazwy, kodowanie danych 

np. płeć K, M., lub Kobieta True False itd.). 

Dane zawarte w HD muszą zostać sprowadzone do 

porównywalności w ten sposób, że informacje zawarte w 

rozmaicie przedstawionych w aplikacjach danych są ujęte w 

sposób wspólnie akceptowany i jednolity (ontologia).

background image

Wymiar czasowy

Czas jest podstawą porządkowania danych w HD. Jest on 
podstawowym kluczem porządkowania informacji
 o otaczającym nas świecie. 

W HD dane odzwierciedlają zmiany zachodzące w długich 
okresach czasu - od kilku do kilkunastu i więcej lat. 

W HD każdy klucz wyszukiwania jest w sposób jawny lub 
niejawny oparty o czas. Jawnie może odnosić się do danych 
rejestrowanych na określony moment czasu. W sposób 
niejawny związany jest z danymi obliczanymi na koniec 
okresów sprawozdawczych (miesięcy , kwartałów, lat).

Trzecim wyróżnikiem HD jest to, że dane raz wprowadzone do 
bazy nie są z niej usuwane ani poprawiane. HD jest 
z praktycznego punktu widzenia widziana jako długa 
sekwencja ujęć rzeczywistości. 

background image

Niezmienność danych

W  hurtowni  danych  są  wykonywane  tylko  dwie  operacje  na 
danych: 

1.

wprowadzanie danych (dopisanie danych) do bazy,

2.

udostępnianie danych (odczyt danych).

 
Z tego powodu konstrukcja procedur obsługi HD może być 
prostsza, aniżeli w aplikacjach. Nie ma potrzeby zwracania uwagi 
na anomalie związane z aktualizacją danych, które są jedną z 
przyczyn dużej komplikacji systemów wielodostępnych. 

background image

Dodatkowa (5) cecha HD

Hurtownia danych ma wspomagać 

przetwarzanie informacji dla celów 

strategicznych i analitycznych.

 

(w przeciwieństwie do systemów transakcyjnych 

realizujących przetwarzanie dla celów 

operacyjnych)

background image

Źródła danych dla hurtowni 
danych

systemy  transakcyjne  działające 
w danej organizacji,

bazy  danych  istniejące  w otoczeniu 
organizacji,

zasoby systemu WWW,

arkusze 

kalkulacyjne 

lub 

pliki 

w formacie XML.

background image

Korzyści z zastosowania 
hurtowni danych 

Korzyści ogólne dla Firmy:

integracja danych pochodzących z różnych 

systemów,

skrócenie czasu dostępu do wybranych 

informacji,

skrócenie czasu przygotowywania raportów,

generowanie raportów ad-hoc,

śledzenie zmian zachodzących w 

poszczególnych danych firmy

nadawanie uprawnień użytkownikom 

systemu do poszczególnych informacji.

background image

Modele przetwarzania 
danych

background image

Istota modelu przetwarzania 
danych

Sposób, w jaki użytkownik korzysta

 z bazy danych

background image

Modele przetwarzania 
danych

przetwarzanie transakcji w trybie on-
line OLTP (on-line transaction 
processing) – tradycyjny model 
przetwarzania 

przetwarzanie analityczne w trybie 
on-line OLAP (on-line analytical 
processing) – model opracowany dla 
potrzeb analizy danych

background image

Cechy OLTP

Doskonałe narzędzie do obsługi bieżącej działalności 

firmy,  operacji bankowych i księgowych, wykonywania 

powtarzalnych i dobrze zdefiniowanych procesów. 

Charakteryzuje się krótkimi i prostymi transakcjami, 

które operują na niewielkich ilościach danych.

Większość operacji stanowią operacje modyfikacji 

zapisu krotek, równolegle wykonują się setki bądź 

tysiące transakcji, stąd kluczowe znaczenie mają 

kwestie integralności, odtwarzania czy izolacji.

Użytkownicy OLTP - najczęściej urzędnicy, pracownicy 

obsługi klienta itp. 

Nie znajduje zastosowania w procesach analizy danych, 

w systemach wspomagania decyzji oraz procesów nie 

do końca dobrze zdefiniowanych.

background image

1. Dynamiczna analiza danych – to taka, w której na danych 

historycznych mogą być wykonywane ekstensywne 
analizy wykorzystujące wielowymiarowe podejście do 
zjawisk i danych 
i pozwalają na zrozumienie ich dynamiki. 

2. Modele przedsiębiorstwa umożliwiają:

1. definiowanie struktur danych (kategoryzacja),
2. określenie przyczyn istniejącego stanu zapisanego w 

modelu kategoryzacji poprzez analizę danych 
historycznych (egzegeza),

3. budowanie scenariuszy prognozowanie i 

przewidywanie,

4. wskazywanie skomplikowanych połączeń pomiędzy 

danymi pozornie niepowiązanymi (formalny, oparty o 
formuły).

3. Wspólne dane przedsiębiorstwa – dane widziane poprzez 

OLAP muszą być identyczne z tymi, które są używane 
przez OLTP. 

 

Najważniejsze charakterystyki 

OLAP

background image

•Dostęp do bardzo dużych zbiorów danych

•Analiza powiązań pomiędzy wieloma elementami 

    gospodarowania: sprzedaż, reklama, regiony, 
kanały...

•Zawiera  agregaty  –  przede  wszystkim  sumy 

różnych wartości, ale także wyniki analiz długich 
szeregów czasowych, złączenia wielu baz itp.

•Zawiera hierarchie 

•Zawiera  złożone  formuły  w  odniesieniu  do 

różnorodnych przekrojów danych

Inne charakterystyki OLAP

background image

 

Porównanie modelu danych 

operacyjnych
i modelu danych hurtowni danych

MODEL DANYCH

OPERACYJNYCH

MODEL DANYCH HURTOWNI

Aktualizacja na poziomie rekordów

Aktualizacja na poziomie tablic

Integralność danych

Oczyszczone, przetworzone

Wiele wzajemnych relacji

Tablice wstępnie połączone

Zapytania na poziomie rekordu

Zapytania na poziomie tablic

Narzędzia SQL

OLAP, data mining, SQL

Transakcje

Usuwane dane nieistotne

Dane aktualne

Dane historyczne

Brak redundancji danych

Kontrolowana redundancja

Znormalizowany

Częściowo znormalizowany


Document Outline