Hurtownie danych. Projektowanie hurtowni: modele wielowymiarowe. Modelowanie punktowe. Operacje OLAP na kostkach. http://zajecia.jakubw.



Podobne dokumenty
HURTOWNIE DANYCH Dzięki uprzejmości Dr. Jakuba Wróblewskiego

Bazy danych. Plan wykładu. Rodzaje baz. Rodzaje baz. Hurtownie danych. Cechy hurtowni danych. Wykład 14: Hurtownie danych

Hurtownie danych wykład 3

Hurtownie danych. Przetwarzanie zapytań. ZAPYTANIA NA ZAPLECZU

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

Hurtownie danych. Hurtownie danych. dr hab. Maciej Zakrzewicz Politechnika Poznańska Instytut Informatyki. Maciej Zakrzewicz (1)

Hurtownie danych. Ładowanie, integracja i aktualizacja danych. INTEGRACJA DANYCH ETL

Modele danych - wykład V. Zagadnienia. 1. Wprowadzenie 2. MOLAP modele danych 3. ROLAP modele danych 4. Podsumowanie 5. Zadanie fajne WPROWADZENIE

Modele danych - wykład V

OLAP i hurtownie danych c.d.

Wielowymiarowy model danych

Hurtownie danych w praktyce

Hurtownie danych. 31 stycznia 2017

Hurtownie danych. Rola hurtowni danych w systemach typu Business Intelligence

HURTOWNIE DANYCH I BUSINESS INTELLIGENCE

Schematy logiczne dla hurtowni danych

Spis treści. Część I Wprowadzenie do pakietu oprogramowania Analysis Services

Hurtownie danych a transakcyjne bazy danych

Wprowadzenie do technologii Business Intelligence i hurtowni danych

Ćwiczenia z Zaawansowanych Systemów Baz Danych

Wstęp do Business Intelligence

Plan. Inteligencja bisnesowa (Bussiness Intelligence) Hurtownia danych OLAP

Spis tre±ci. Przedmowa... Cz ± I

Informatyzacja przedsiębiorstw

Systemy OLAP I. Krzysztof Dembczyński. Instytut Informatyki Zakład Inteligentnych Systemów Wspomagania Decyzji Politechnika Poznańska

Bazy analityczne (hurtownie danych, bazy OLAP)

BD2 BazyDanych2. dr inż. Tomasz Traczyk 14. Systemy przetwarzania analitycznego

Systemy OLAP I. Krzysztof Dembczyński. Instytut Informatyki Zakład Inteligentnych Systemów Wspomagania Decyzji Politechnika Poznańska

Informatyka sem. III studia inżynierskie Transport 2018/19 LAB 2. Lab Backup bazy danych. Tworzenie kopii (backup) bazy danych

Systemy OLAP II. Krzysztof Dembczyński. Instytut Informatyki Zakład Inteligentnych Systemów Wspomagania Decyzji Politechnika Poznańska

Hurtownia danych. Załącznik Nr 1 do SIWZ. Opis przedmiotu zamówienia. Lp. FUNKCJONALNOŚĆ/PARAMETRY WYMAGANE

Hurtownie danych. Metadane i czynniki jakości. BAZA METADANYCH. Centralna hurtownia danych. Metadane

Hurtownie danych - przegląd technologii Robert Wrembel Politechnika Poznańska Instytut Informatyki Robert.Wrembel@cs.put.poznan.pl

Hurtownie danych - przegląd technologii

4. Znaczenie czasu w modelowaniu i strukturalizacji danych

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

Pierwsze wdrożenie SAP BW w firmie

Moduł mapowania danych

Plan wykładu. Hurtownie danych. Problematyka integracji danych. Cechy systemów informatycznych

Hurtownie danych - przegląd technologii

Wprowadzenie do Hurtowni Danych. Mariusz Rafało

Business Intelligence

TP1 - TABELE PRZESTAWNE od A do Z

Rady i porady użytkowe

Zaawansowane systemy baz danych - ZSBD. Hurtownie danych 1. Problematyka hurtowni danych. Wykład przygotował: Robert Wrembel. ZSBD wykład 12 (1)

Część I Istota analizy biznesowej a Analysis Services

Wprowadzenie do hurtowni danych

Microsoft Excel 2013: Budowanie modeli danych przy użyciu PowerPivot

Moduł mapowania danych

Wykład I. Wprowadzenie do baz danych

Projektowanie hurtowni danych i modelowanie wielowymiarowe

Przestrzenne bazy danych Podstawy języka SQL

Projektowanie hurtowni danych

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

Hurtownie danych i business intelligence - wykład II. Zagadnienia do omówienia. Miejsce i rola HD w firmie

Migracja XL Business Intelligence do wersji

Modelowanie hurtowni danych

2017/2018 WGGiOS AGH. LibreOffice Base

Opis spełnienia wymagań (PSBD)

Hurtownia danych praktyczne zastosowania

OdświeŜanie hurtownie danych - wykład IV. Zagadnienia do omówienia. Wprowadzenie

Migracja Business Intelligence do wersji

KARTA PRZEDMIOTU. Hurtownie i eksploracja danych D1_5

QUERY język zapytań do tworzenia raportów w AS/400

Migracja Comarch ERP Altum Business Intelligence do wersji 2019

Rozszerzenia grupowania

Plan. Wyświetlanie n początkowych wartości (TOP n) Użycie funkcji agregujących. Grupowanie danych - klauzula GROUP BY

Wprowadzenie do Hurtowni Danych. Mariusz Rafało

Technologie baz danych

Bazy danych. Zenon Gniazdowski WWSI, ITE Andrzej Ptasznik WWSI

Wprowadzenie do Hurtowni Danych. Mariusz Rafało

Hurtownie danych i business intelligence - wykład II. Zagadnienia do omówienia. Miejsce i rola HD w firmie

SYLABUS DOTYCZY CYKLU KSZTAŁCENIA realizacja w roku akademickim 2016/17

Oracle11g: Wprowadzenie do SQL

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

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

Technologia informacyjna

Projektowanie hurtowni danych i modelowanie wielowymiarowe

Diagramy związków encji. Laboratorium. Akademia Morska w Gdyni

Alicja Marszałek Różne rodzaje baz danych

SQL do zaawansowanych analiz danych część 1.

Projektowanie bazy danych przykład

Ewolucja technik modelowania hurtowni danych

Kasy Fiskalne Lublin Analityk

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

Migracja Business Intelligence do wersji

MsAccess ćwiczenie nr 3 Kwerendy wybierające cd oraz kwerendy funkcjonalne

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

Wprowadzenie do Hurtowni Danych. Mariusz Rafało

Hurtownie danych. Wprowadzenie do systemów typu Business Intelligence

HURTOWNIE DANYCH. Krzysztof Goczyła. Wydział Elektroniki, Telekomunikacji i Informatyki Politechnika Gdańska. kris@eti.pg.gda.pl. K.

Co ciekawego w EURECE pojawiło się w wersji 2.4, a być może nie zdążyliście tego odkryć?

Nowości w wersji 10.2 Comarch CDN XL Business Intelligence

Prezentacja firmy WYDAJNOŚĆ EFEKTYWNOŚĆ SKUTECZNOŚĆ.

Systemy OLAP. Krzysztof Dembczyński. Instytut Informatyki Zakład Inteligentnych Systemów Wspomagania Decyzji Politechnika Poznańska

Bazy danych. wprowadzenie teoretyczne. Piotr Prekurat 1

Migracja Business Intelligence do wersji

Faza Określania Wymagań

Sylabus do programu kształcenia obowiązującego od roku akademickiego 2014/15

WAPRO Analizy. Cały proces analizy składa się dwóch etapów:

Transkrypt:

Hurtownie danych Projektowanie hurtowni: modele wielowymiarowe. Modelowanie punktowe. Operacje OLAP na kostkach. http://zajecia.jakubw.pl/hur UZASADNIENIE BIZNESOWE Po co nam hurtownia danych? Jakie mogą być efekty analiz? - Wzrost sprzedaży, zwiększenie udziału w rynku itp. - Środek: analiza zachowania klientów, lokalizacja słabych punktów, śledzenie trendów. - Narzędzie: analiza gromadzonych danych (rozproszonych, niejednorodnych) - budowa hurtowni danych. Jakimi danymi dysponujemy? Które dane powinniśmy gromadzić w hurtowni? Ze względów technicznych gromadzimy tylko to, co niezbędne. 1

DECYZJE PROJEKTOWE: perspektywa pojęciowa Hurtownia Ekstrakcja, czyszczenie, integracja Źródła danych Model pojęciowy: związki między pojęciami związanymi z działalnością przedsiębiorstwa, np.: - Kto to jest klient i co o nim wiemy? - Jak opisywana jest sprzedaż w różnych oddziałach firmy? - Co pod pojęciem fakt sprzedaży chciałby rozumieć analityk? - Czy model wielowymiarowy danych może nam pomóc w tworzeniu raportów biznesowych? MODEL WIELOWYMIAROWY Baza zawiera fakty opisane przez wymiary i określające wartość miar. Fakt - pojedyncze zdarzenie będące podstawą analiz (np. sprzedaż). Fakty opisane są przez wymiary i miary. Wymiar - cecha opisująca dany fakt, pozwalająca powiązać go z innymi pojęciami modelu przedsiębiorstwa (np. klient, data, miejsce, produkt). Wymiary są opisane atrybutami. Atrybut - cecha wymiaru, przechowująca dodatkowe informacje na temat faktu (np. wymiar data może mieć atrybuty: miesiąc, kwartał, rok; wymiar klient może mieć atrybuty: nazwisko, region). Miara - wartość liczbowa przyporządkowana do danego faktu (np. wartość sprzedaży, liczba sztuk). 2

MODEL GWIAZDY Fakty i wymiary są często w systemach relacyjnych modelowane w postaci gwiazdy. Tablice wymiarów Data id_daty miesiąc kwartał rok Klient id_klienta nazwisko adres grupa_kl Tablica faktów Sprzedaż id_klienta id_daty id_produktu id_sklepu ilość kwota Sklep id_sklepu miasto region kierownik telefon Produkt id_produktu grupa_prod opis data_wprowadzenia marka producent Atrybuty Miary Uwaga: nie wszystkie informacje będą potrzebne - część można pominąć MODEL PŁATKA ŚNIEGU Normalizacja schematu gwiazdy poprzez modelowanie atrybutów za pomocą kolejnych tablic prowadzi do modelu płatka śniegu. Tablica faktów Sprzedaż id_klienta id_daty id_produktu id_sklepu ilość kwota Produkt id_produktu id_grupy_prod id_marki data_wprowadzenia Tablice wymiarów Sklep id_sklepu id_miasta Miasto id_miasta id_regionu nazwa Grupa_prod id_grupy_prod nazwa_grupy_prod Marka id_marki id_producenta nazwa_marki Region id_regionu nazwa Uwaga: model płatka śniegu odtwarza hierarchię wymiarów. Producent id_producenta nazwa_producenta kraj_producenta 3

AGREGACJE Agregacje to operacje zamieniające zbiór wartości (przeważnie liczbowych) miar opisujących fakty, na pojedynczą wartość. Podstawowa operacja tworząca kostki danych. Przykłady: Suma Liczba rekordów Średnia Minimum, maksimum, mediana Dodatkowy warunek (np. HAVING) Specjalne (stored procedures) SELECT miesiąc, SUM(kwota) FROM tablica_faktów GROUP BY miesiąc HAVING SUM(kwota)>500 KOSTKI DANYCH Dane (np. schemat gwiazdy) Kostka wielowymiarowa danych produkt czas Kostka danych: tabela, w której krawędziami są wymiary, a zawartością komórek miary. klient 230$ Zawartość komórki: zagregowana miara 4

KOSTKI DANYCH miasto sklep Nagłówki wierszy i kolumn kostki zawierają wartości wymiarów (atrybutów) sprzedaż wartość czas produkt Komórki zawierają zagregowane (po wymiarach) wartości miar miasto_1 miasto_2 miasto_1 miasto_2 skl_1 skl_2 skl_3 suma skl_1 skl_1 skl_2 skl_2 skl_3 skl_3 suma suma skl_1 skl_1 skl_2 skl_2 skl_3 skl_3 suma suma prod_1 27 12 50 89 prod_1 prod_1 27 27 12 12 50 50 89 89 prod_1 prod_1 27 27 12 12 50 50 89 89 prod_2 0 0 0 0 23 23 23 23 prod_2 prod_2 0 0 23 23 prod_2 prod_2 0 0 0 0 23 23 23 23 prod_3 prod_3 146 146 237 237 12 12 395 395 prod_3 146 237 12 395 prod_3 prod_3 146 146 237 237 12 12 395 395 prod_4 prod_4 76 76 45 45 1 1 122 122 prod_4 76 45 1 122 122 prod_4 prod_4 76 76 45 45 1 1 122 prod_5 prod_5 0 0 8 8 5 5 13 13 prod_5 prod_5 0 0 8 8 5 5 13 13 prod_5 0 8 5 13 suma suma 249 249 302 302 91 91 642 642 suma suma 249 249 302 302 91 91 642 642 suma 249 302 91 642 czas W kostkach bywają też przechowywane pomocnicze podsumowania MODEL PUNKTOWY Przed stworzeniem logicznego modelu danych (gwiazda, płatek śniegu) należy uzgodnić model pojęciowy. Przykładowa technika modelowania: model punktowy. Region Towar Grupa towarów Magazyn Sprzedaż Dostawa do magazynu Czas Kwartał Transport - Fakty reprezentowane są punktami - Wymiary reprezentowane są przez nazwy - Podobnie reprezentujemy kolejne poziomy hierarchii - Model może obejmować wiele (konstelację) faktów, korzystających częściowo ze wspólnej hierarchii wymiarów 5

MODEL PUNKTOWY W modelu punktowym zapisujemy ponadto informacje na temat: - Nazw atrybutów - Typów danych - Więzów integralności - Retrospekcji (zmienności wartości atrybutów w czasie) - Częstości odświeżania - Pochodzenia danych (źródło, transformacje) - Metadanych biznesowych Retrospekcja może być: - prawdziwa zapisujemy wszelkie zmiany wartości wraz z dokładnym czasem - fałszywa nowe wartości zastępują stare - trwała nie przewidujemy zmiany wartości. POZIOMY AGREGACJI DANYCH Nie zawsze potrzebujemy danych opisanych z pełną dostępną dokładnością. Agregacja wartości może dotyczyć pomijania pewnych wymiarów lub atrybutów w hierarchii. Hurtownia danych (lub hurtownie tematyczne) mogą przechowywać zmaterializowane podkostki danych i korzystać z nich podczas analiz. 6

PRZYKŁAD: POZIOMY AGREGACJI Dane: fakty sprzedaży (50 mln. rekordów, miara: wartość), klienci identyfikowani kodem pocztowym (3000 różnych kodów), towary (60 grup, 800 nazw indywidualnych), czas: 3 lata (1000 dni), sklepy (18 sztuk). - Model gwiazdy: tablice z (łącznie) trochę ponad 50 mln. rekordów. - Kostka danych: 3000*800*1000*18 = 43 200 000 000 komórek. Wersja zagregowana: ignorujemy wymiar klientów, towary rozpatrujemy tylko w grupach, czas rozpatrujemy w skali miesięcy. - Kostka danych: 60*36*18 = 38 880 komórek (sumy wartości). Powyższa agregacja nie pozwala na wygenerowanie wszystkich tych raportów, które mogły by tworzone oryginalnie, ale za to dla pozostałych raportów może działać o 3 rzędy wielkości szybciej. OPTYMALIZACJA AGREGACJI Problem: Które wymiary możemy pominąć? Jak agregować dane (sum, min, max, avg, count)? Które atrybuty hierarchii agregujemy, a które pozostawiamy? Ile powinno powstać zmaterializowanych kostek pomocniczych? Jak optymalnie obliczać konkretne zapytanie? Cel: np. minimalizacja średniego czasu przetwarzania zadawanych w praktyce zapytań OLAP. gwiazda czas, klient, towar, sklep kostka czas, klient, towar czas, klient, sklep czas, towar, sklep klient, towar, sklep czas, klient czas, sklep klient, sklep towar, sklep czas, towar klient, towar czas sklep towar klient Zwykle nie możemy zmaterializować wszystkich podkostek, musimy wybrać takie, z których później najłatwiej będzie generować raporty. 7

NAWIGATOR PO AGREGACJACH Skąd wiadomo, które zapytania są często wykonywane? Nawigator po agregacjach Informacje o zadawanych zapytaniach OLAP są gromadzone jako metadane w specjalnej bazie (repozytorium). Mogą być wykorzystane do optymalizacji zapytań (np. materializacji niektórych agregacji). Metadane hurtowni zawierają też wiele innych informacji, np. opis pojęciowy i logiczny danych, informacje o źródłach i ich integracji, dziennik aktualizacji itd. NAWIGATOR PO AGREGACJACH Nawigator po agregacjach wspomaga też przeglądanie danych i przygotowywanie raportów. Programy z tej rodziny zapewniają wygodny wgląd w wielowymiarowy model danych. Nawigator po agregacjach Raport skl_1 skl_2 skl_3 suma prod_1 27 12 50 89 prod_2 0 0 23 23 prod_3 146 237 12 395 prod_4 76 45 1 122 prod_5 0 8 5 13 suma 249 302 91 642 8

NAWIGACJA PO AGREGACJACH Najczęściej wykonywane operacje OLAP - terminologia: Agregacja, konsolidacja, zwijanie (aggregation, consolidation, roll-up) - przejście na bardziej ogólny poziom wymiaru, - wybór operacji agregującej (np. suma, średnia, zestawienie procentowe). dni miesiące Rozwijanie (roll-down, drill-down, drill through) - operacja odwrotna do agregacji: przeglądanie szczegółowych danych dotyczących danego podsumowania sprzedaż w regionach poszczególne sklepy NAWIGACJA PO AGREGACJACH Najczęściej wykonywane operacje OLAP - terminologia: Selekcja (slicing) - wycinanie fragmentu danych poprzez określenie warunków na wartościach wymiarów, - wynikiem jest podkostka, np. dwuwymiarowy plaster (slice), odpowiadająca danym spełniającym warunki. miasto_1 miasto_1miasto_2 miasto_2 miasto_1 miasto_1 skl_1 skl_1miasto_2 miasto_2 skl_2 skl_2skl_3 skl_3suma suma skl_1 skl_2 skl_3 suma skl_1 skl_2 skl_3 suma prod_1 prod_1 skl_1 skl_1skl_2 skl_2 27 27 skl_3 skl_3 12 12 50 suma 50 suma warunek: 89 89 prod_1 27 12 50 89 prod_1 3 12 70... prod_1 prod_2 27 0 0 12 prod_2 0 0 50 23 23 89 data =... prod_1 27 12 50 89 23 23 prod_2 0 0 23 23 prod_2 0 9 23... prod_2 prod_2 prod_3 prod_3 0 0 146 146 0 0 237 237 23 12 23 12 23 395 395 prod_3 prod_3 146 237 12 395 prod_4 prod_4 146 76 76 237 45 45 12 1 1 395 prod_3 7 2 12... prod_3 146 237 12 395 122 122 prod_4 prod_4 76 45 1 122 prod_5 prod_5 76 0 0 45 8 8 1 5 122 5 122 prod_4 0 15 1... prod_4 76 45 1 13 13 prod_5 prod_5 0 8 5 13 prod_5 suma suma 0 0 249 249 8 8 302 302 5 5 91 13 91 13 prod_5 0 8 5... 642 642 suma suma 249 249 302 302 91 91 642 642 suma 249 302 91 642 suma............ 9

NAWIGACJA PO AGREGACJACH Najczęściej wykonywane operacje OLAP - terminologia: Filtrowanie (screening, selection, filtering) - filtrowanie danych wchodzących w skład agregacji, np. poprzez ograniczenie wartości miar lub atrybutów wymiarów skl_1 skl_2 skl_3 suma prod_1 27 12 50 89 prod_2 0 0 23 23 prod_3 146 237 12 395 prod_4 76 45 1 122 prod_5 0 8 5 13 suma 249 302 91 642 warunek: tylko sklepy mające obrót powyżej 4 mln. oraz sumujemy tylko fakty sprzedaży o wartości powyżej 20. skl_1 - skl_3 suma prod_1 3-70... prod_2 0-23... prod_3 7-12... prod_4 0-1... prod_5 0-5... suma... -...... NAWIGACJA PO AGREGACJACH Najczęściej wykonywane operacje OLAP - terminologia: Zawężanie (scoping) - ograniczenie danych branych pod uwagę w dalszej analizie, - podobne do filtrowania, jednak realizowane na wcześniejszym poziomie operacyjnym, - działa jak automatyczne dodanie warunków do wszystkich dalszych operacji na kostkach danych. warunek: tylko sklepy mające obrót powyżej 4 mln. oraz tylko pierwsze dwa kwartały 2000 roku 10

NAWIGACJA PO AGREGACJACH Najczęściej wykonywane operacje OLAP - terminologia: Obracanie (pivot, rotate) - zamiana miejscami kolumn i wierszy tabeli, - przeniesienie pewnego wymiaru z kolumn do wierszy (lub odwrotnie), - zamiana pewnego wymiaru (lub atrybutu) na inny, nieużywany. prod_1 prod_2 prod_3 prod_4 prod_5 suma 2002 2003 skl_1 skl_2 skl_1 27 12 92 0 0 23 146 237 12 76 45 7 0 8 5......... skl_1 50 21 12 1 0... prod_1 prod_2 2002 prod_3 prod_4 prod_5 prod_1 prod_2 2003 prod_3 prod_4 prod_5 suma skl_1 skl_2 27 12 0 0 146 237 76 45 0 8 92 50 23 21 12 12 7 1 5 0...... 11