Hurtownie danych
Wprowadzenie do hurtowni
danych
1
marcin.mazurek@wat.edu.pl
Treść wykładu
Dlaczego tworzy się hurtownie danych ?
Co to jest hurtownia danych ?
Architektura hurtowni danych
Architektura hurtowni danych
Hurtownie danych a Business Intelligence
marcin.mazurek@wat.edu.pl
2
Systemy wsparcia operacyjnego
Systemy dostosowane do
wsparcia konkretnego procesu
biznesowego
Utrzymywane przez jeden
departament
departament
Zorientowane na bieżący stan
danych
Konieczna wysoka dostępność
aplikacji
W typowym scenariuszy użycia
wykorzystywana niewielka ilość
danych
Raporty i analiza w kontekście
wybranego obszaru zastosowania
marcin.mazurek@wat.edu.pl
a3
Problemy
Różne technologie – różne interfejsy
Pliki tekstowe
Relacyjne bazy danych (JDBC, ODBC)
BAPI – Business Application Programming Interface
JMS
WS
Te same dane identyfikowane są za pomocą
różnych kluczy
różnych kluczy
IMSI
Numer umowy
PESEL
Te same pojęcia są różnie rozumiane w każdym z
systemów źródłowych
Aktywny użytkownik
Czas połączenia – astronomiczny, czy naliczany według
taryfy?
Różny poziom granulacji danych
Rozproszenie geograficzne
Długi czas przygotowania raportu
Niejednoznaczność danych
Które dane są poprawne ?
marcin.mazurek@wat.edu.pl
4
Problemy
Twórcy kolejnych
raportów mają do
rozwiązania te
same problemy:
Wykorzystanie
Wykorzystanie
produktów
częściowych
przetwarzania:
„spider web”
ekstraktów
Wiarygodność
danych ?
marcin.mazurek@wat.edu.pl
5
Problemy biznesowe
Jakie wspólne cechy posiadają nasi najlepsi klienci ?
Ilu mamy aktywnych klientów, tzn. takich którzy wykonali przynajmniej 3
rozmowy w ciągu ostatnich 3 miesięcy ?
Jaki jest średni przychód z klientów w poszczególnych taryfach ?
W których taryfach współczynnik odejść klientów jest najmniejszy ?
W których taryfach współczynnik odejść klientów jest najmniejszy ?
marcin.mazurek@wat.edu.pl
6
Zobaczyć całego słonia…
marcin.mazurek@wat.edu.pl
7
Geneza
Integracja danych z
heterogenicznych źródeł
„Jedna wersja prawdy „
Kompletność danych
Spójność danych
Spójność danych
Łatwość wykonania zapytań
Efektywne przetwarzanie dużych
wolumenów danych w ramach
pojedynczego zapytanie do
systemu
marcin.mazurek@wat.edu.pl
8
Cel budowy hurtowni danych
Dostarczenie właściwych informacji we
właściwym miejscu i czasie by na ich
podstawie można było podejmować
podstawie można było podejmować
decyzje.
marcin.mazurek@wat.edu.pl
9
Hurtownia danych -
repozytorium (definicja węższa)
„subject oriented, integrated, time variant and non
volatile collection of data used in strategic decision
making” (Inmon)
Zbiór danych:
Zbiór danych:
zintegrowanych,
nieulotnych,
zorientowany tematycznie,
zawierający wymiar czasowy
zaprojektowanych jako podstawa systemu
wspomagania decyzji
.
marcin.mazurek@wat.edu.pl
10
Integracja danych
Unifikacja formatów
Reprezentacja dat,
adresów, statusów
Unifikacja znaczenia
Unifikacja znaczenia
Statusy, kategorie,
klasyfikacje
Spójność danych
Stabilność
Globalne identyfikatory
11
Integracja danych – unifikacja
sposobu zapisu informacji
marcin.mazurek@wat.edu.pl
12
Integracja danych – unifikacja
jednostek pomiaru
marcin.mazurek@wat.edu.pl
13
Integracja danych – różne
ź
ródła dla tej samej informacji
marcin.mazurek@wat.edu.pl
14
1)
Czy wszystkie atrybuty mają to samo znaczenie ?
2)
Co jest źródłem informacji ? Gdzie jest informacja pierwotna ? Dlaczego dane mogą się różnić ?
3)
Opracowanie algorytmu wyznaczającego poprawną wartość
4)
Obsługa błędów
Integracja danych - różne
klucze
marcin.mazurek@wat.edu.pl
15
Nieulotność danych
Dane załadowane do hurtowni danych nie
są z niej usuwane.
W hurtowni przechowywana jest pełna
16
W hurtowni przechowywana jest pełna
historia zmian
Niezależnie od daty uruchomienia raportu,
raport tak samo sparametryzowany
powinien zwrócić te same rezultaty.
Uporządkowanie tematyczne
Dane przechowywane są
w strukturach
niezależnych od struktur
aplikacji, która je
wygenerowała.
wygenerowała.
Model danych
odzwierciedla
„biznesowe” widzenie
danych, a nie techniczne.
17
Wymiar czasowy
Każda jednostka informacji jest
oznaczona chwilą lub zakresem czasu
Data zdarzenia (data rozmowy telefonicznej,
18
Data zdarzenia (data rozmowy telefonicznej,
data zakupu)
Przedział obowiązywania (okres kiedy klient
miał status aktywnego)
Zakres ważności danych (ang. validity)
Zakres ważności danych (w jakim okresie
czasu rekord miał daną postać)
Hurtownie danych a systemy
transakcyjne
Hurtownie danych (OLAP)
Systemy transakcyjne
(OLTP)
Struktura bazy danych
Zwykle zdenormalizowana (2NF)
Wysoce znormalizowana (3 NF)
Zapytania
Zapytania zwracające dane
zagregowane wyliczone w oparciu o
wiele rekordów
Zapytania zwracające kilka lub
kilkanaście rekordów
Ź
ródło zasilania
Systemy źródłowe OLTP, pliki.
Operator
Harmonogram zasilania
Zasilanie w oknie czasowym w
godzinach bez aktywności
użytkowników
Dane wstawiane w czasie pracy
Zawartość
Stan obecny i historia
Bieżący stan procesów biznesowych
Granulacja danych
Dane szczegółowe i zagregowane
Dane szczegółowe
Zmienność danych
Wstawione do hurtowni dane są
niezmienne
Dane zmieniane wielokrotnie w ciągu
dnia
Usuwanie danych
Nie
Tak
Zarządzanie transakcjami
Nie jest wymagane
Tak
marcin.mazurek@wat.edu.pl
19
Architektura
marcin.mazurek@wat.edu.pl
20
Architektura hurtowni danych
(Kimball)
marcin.mazurek@wat.edu.pl
21
Ź
ródło: R.Kimball The Data Warehouse Toolkit A Complete Guide to Dimensional Modelling
Hurtownia danych - system
(definicja szersza)
Enterprise data warehouse (EDW) The conglomeration of an
organization’s data warehouse staging and presentation areas(...). Largest
possible union of staging and presentation services, taken as a whole.
(Kimball)
Zbiór narzędzi, danych, procesów pozwalających kadrze kierowniczej i
analitykom szybciej i skuteczniej podejmować decyzje.
marcin.mazurek@wat.edu.pl
22
Ź
ródła danych
Wszystkie systemy
informatyczne i
interfejsy
zidentyfikowane jako
ź
ródła danych dla
hurtowni
hurtowni
Systemy
funkcjonujące
wewnątrz organizacji
Zewnętrzne źródła
danych
Notowania
Publikacje statystyczne
Inne
marcin.mazurek@wat.edu.pl
23
ETL Extract Transform Load
Cyklicznie uruchamiany proces:
pobierający dane ze źródeł (ekstrakcja),
przetwarzający te dane do postaci wymaganej
przez model hurtowni danych (transformacja)
Uspójnienie
Czyszczenie danych
Agregacja danych
Ładujący dane do hurtowni (ładowanie)
Ładujący dane do hurtowni (ładowanie)
Infrastruktura informatyczna;
Narzędzie definiowania procesów
przetwarzania danych
Scheduler - oprogramowanie
uruchamiające procesy zgodnie z
kalendarzem oraz zarządzające
kolejnością wykonywania tych
procesów
Aplikacja administracyjna
ELT – Extract Load Transform
marcin.mazurek@wat.edu.pl
24
Repozytorium główne
Inne określenia:
Repozytorium główne
Repozytorium
detaliczne
Hurtownia globalna
Hurtownia podstawowa
Hurtownia centralna
Hurtownia centralna
Repozytorium,
przechowujące wszystkie
dane pobrane z
systemów źródłowych
na zakładanym poziomie
granulacji.
marcin.mazurek@wat.edu.pl
25
Datamart
Niewielka hurtownia,
zawierająca wycinek pełnej
informacji zgromadzonej w
hurtowni globalnej,
przygotowany na potrzeby
grupy użytkowników – np.
jednego działu w firmie.
Inne określenia:
Inne określenia:
Hurtownia tematyczna,
Hurtownia oddziałowa
Charakter danych
Agregaty – mniejsza
granulacja danych
(poziom
szczegółowości)
Kalkulacje – wskaźniki
Wybrane obiekty wraz z
kontekstem analizy
marcin.mazurek@wat.edu.pl
26
Datamarty
marcin.mazurek@wat.edu.pl
27
Ź
ródło: W.H. Inmon Builiding the Data Warehouse
Aplikacje raportowo-analityczne
OLAP – Online
Analytical Processing
Oprogramowanie,
umożliwiające
użytkownikom
analizę danych bez
analizę danych bez
konieczności
formułowania
zapytań w języku
SQL
Raportowanie ad-hoc
Krótki czas
odpowiedzi < 5s
Interaktywność
raportu
marcin.mazurek@wat.edu.pl
28
Metadane
Meta – informacja
powiązana
Metadane – dane o
danych.
Dane umożliwiające
odpowiednie
skatalogowanie, opisanie,
skatalogowanie, opisanie,
interpretację i
sklasyfikowanie
posiadanych zbiorów
danych
Informacja o:
Modelu danych hurtowni
Ź
ródłach danych i
sposobie zasilenia
hurtowni
Opis biznesowy
wszystkich dostępnych
obiektów, kalkulacji
Opis istniejących raportów
marcin.mazurek@wat.edu.pl
29
Hurtownie danych – inne
koncepcje
ODS (Operational Data Store)
Składnica zintegrowanych danych
pochodzących z systemów źródłowych,
pochodzących z systemów źródłowych,
nie przechowująca historii.
Warstwa pośrednia pomiędzy warstwą
danych źródłowych a hurtownią detaliczną
marcin.mazurek@wat.edu.pl
30
Klasyfikacja procesów
biznesowych
Działalność biznesowa (ang. business operations)
Codzienne działania wynikające z przyjętego sposobu
działania i misji organizacji
Analiza biznesu (ang. business intelligence)
Analiza biznesu (ang. business intelligence)
Działania, których celem jest pozyskanie wiedzy na temat
organizacji, produktów, klientów
Zarządzanie (ang. business management)
Działania, zmieniające sposób funkcjonowania organizacji w
oparciu o wiedzę pozyskaną w procesie analizy
marcin.mazurek@wat.edu.pl
31
Business Intelligence
„It is an architecture and a collection of integrated operational as
well as decision-support applications and databases that provide the
business community easy access to business data” (L.T.Moss,
Shaku Artre)
"Business intelligence means using your data assets to make better
"Business intelligence means using your data assets to make better
business decisions. It is about access, analysis, and uncovering
new opportunities.(IBM)
Proces analizy danych historycznych opisujących działanie
organizacji w celu:
zrozumienia w jakim stanie organizacja się znajdowała,
określenia jej bieżącej sytuacji
wyznaczenia prognozy
marcin.mazurek@wat.edu.pl
32
Literatura
M.Jarke, M.Lenzerini, Y.Vassiliou, P. Vassiliou, Hurtownie danych,
Podstawy organizacji i funkcjonowania, WSIP 2003
C. Imhoff, N. Galemmo, J.G.Geiger, Mastering Data Warehouse Design,
Relational and Dimensional Techniques, Wiley 2003
W.H.Inmon, Builiding The Data Warehouse, Wiley 2002
R. Kimball, M. Ross, The Data Warehouse Toolkit A Complete Guide to
R. Kimball, M. Ross, The Data Warehouse Toolkit A Complete Guide to
Dimensional Modelling, Wiley 2002.
L.T, Moss, Shaku Artre, Business Intelligence Roadmap: The Complete
Project Lifecycle for Decision-Support Applications, Addison Wesley 2003
http://www.infogoal.com/dmc/dmchome.htm
http://www.information-management.com/
http://www.kimballgroup.com/html/articles.html
33
marcin.mazurek@wat.edu.pl