Pentaho DI część 1. Paweł Boiński Politechnika Poznańska, Instytut Informatyki



Podobne dokumenty
Technologie Zasilania i Odświeżania Hurtowni Danych na przykładzie Pentaho DI część 6

Wprowadzenie do technologii Business Intelligence i hurtowni danych

Proces ETL. Katedra Inżynierii Oprogramowania Wydział Elektroniki, Telekomunikacji i Informatyki Politechnika Gdańska {kris,

Hurtownie danych - przegląd technologii

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

Technologie Zasilania i Odświeżania Hurtowni Danych

Maciej Kiewra Quality Business Intelligence Consulting

Technologie Zasilania i Odświeżania Hurtowni Danych

Wykład I. Wprowadzenie do baz danych

Procesy ETL - wykład V. Struktura. Wprowadzenie. 1. Wprowadzenie. 2. Ekstrakcja 3. Transformacja 4. Ładowanie 5. Studium przypadków.

Dokument Detaliczny Projektu

Paweł Gołębiewski. Softmaks.pl Sp. z o.o. ul. Kraszewskiego Bydgoszcz kontakt@softmaks.pl

Dokument Detaliczny Projektu

ETL darmowe narzędzia

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

Proces ETL MS SQL Server Integration Services (SSIS)

Hurtownie danych - przegląd technologii

Analityka danych w środowisku Hadoop. Piotr Czarnas, 27 czerwca 2017

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

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

Hurtownie danych. Rola hurtowni danych w systemach typu Business Intelligence

Opis spełnienia wymagań (PSBD)

Technologie Zasilania i Odświeżania Hurtowni Danych na przykładzie Pentaho DI część 5

Wykorzystanie standardów serii ISO oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych

Szkolenie autoryzowane. MS Wdrażanie hurtowni danych w Microsoft SQL Server 2012

Warstwa integracji. wg. D.Alur, J.Crupi, D. Malks, Core J2EE. Wzorce projektowe.

Nowoczesne aplikacje mobilne i ich rola w podnoszeniu jakości danych

Program wykładu. zastosowanie w aplikacjach i PL/SQL;

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

Migracja XL Business Intelligence do wersji

VI Kongres BOUG Praktyczne aspekty wykorzystania Business Intelligence w przemyśle wydobywczym węgla kamiennego

Hurtownie danych w praktyce

Analityka danych w środowisku Hadoop. Piotr Czarnas, 5 czerwca 2017

OpenOfficePL. Zestaw szablonów magazynowych. Instrukcja obsługi

Migracja Business Intelligence do wersji

Dane wejściowe. Oracle Designer Generowanie bazy danych. Wynik. Przebieg procesu

COMARCH DATA WAREHOUSE MANAGER 6.2

Integracja przykładowej hurtowni z serwisem aukcyjnym Allegro.

Bazy danych 2. Wykład 1

IBM DATASTAGE COMPETENCE CENTER

CENTRUM PROJEKTÓW INFORMATYCZNYCH MINISTERSTWA SPRAW WEWNĘTRZNYCH I ADMINISTRACJI

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

Wprowadzenie do hurtowni danych

ZAŁOŻENIA TECHNICZNO-TECHNOLOGICZNE SYSTEMU BUDOWANEGO W RAMACH PROJEKTU

Pierwsze wdrożenie SAP BW w firmie

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

Multi-wyszukiwarki. Mediacyjne Systemy Zapytań wprowadzenie. Architektury i technologie integracji danych Systemy Mediacyjne

Serwery LDAP w środowisku produktów w Oracle

Tom 6 Opis oprogramowania

Sky-Shop.pl. Poradnik. Pierwsze kroki: Importowanie własnego pliku XML Integracje z hurtowniami

emszmal 3: Automatyczne księgowanie przelewów w sklepie internetowym Magento (plugin dostępny w wersji ecommerce)

Procesowanie i partycjonowanie Analysis Services od podszewki (300) Adrian Chodkowski Adrian.Chodkowski@outlook.com

Budowa systemu wspomagającego podejmowanie decyzji. Metodyka projektowo wdrożeniowa

Technologie Zasilania i Odświeżania Hurtowni Danych

SAS OLAP Cube Studio Wprowadzenie

A posteriori wsparcie w podejmowaniu decyzji biznesowych.

1. Wymagania prawne. Europejskie uwarunkowania prawne:

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

Wykaz zmian w programie SysLoger

Standaryzacja danych w projekcie MICORE

emszmal 3: Automatyczne księgowanie przelewów w menadżerze sprzedaży BaseLinker (plugin dostępny w wersji ecommerce)

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

Modelowanie procesów (1) Oracle Designer: Modelowanie procesów. Modelowania procesów (2) Modelowanie procesów (3)

Narzędzia i aplikacje Java EE. Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl

emszmal 3: Automatyczne księgowanie przelewów w sklepie internetowym Magento 2 (plugin dostępny w wersji ecommerce)

Technologie Zasilania i Odświeżania Hurtowni Danych na przykładzie Pentaho DI część 6

Na chwilę obecną biblioteka ElzabObsluga.dll współpracuje tylko ze sprawdzarkami RSowymi.

INTERNETOWE BAZY DANYCH materiały pomocnicze - wykład X

Integracja Symfonia ERP ze sklepem internetowym

System Obsługi Wniosków

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

Hurtownie danych. Projektowanie hurtowni: modele wielowymiarowe. Modelowanie punktowe. Operacje OLAP na kostkach.

Instrukcja do programu DoUPS 1.0

Wdrożenie modułu płatności eservice. dla systemu Magento

Tomasz Grześ. Systemy zarządzania treścią

Migracja Business Intelligence do wersji 11.0

Podstawy programowania III WYKŁAD 4

Migracja XL Business Intelligence do wersji

Kurs walut. Specyfikacja projektu. Marek Zając

Technologie Zasilania i Odświeżania Hurtowni Danych na przykładzie Pentaho DI część 6

Wprowadzenie do Hurtowni Danych. Mariusz Rafało

Comarch BI Point Standalone ulotka. Wersja: 6.2

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

Ewolucja technik modelowania hurtowni danych

Hurtownie danych i przetwarzanie analityczne - projekt

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

emszmal 3: Automatyczne księgowanie przelewów w sklepie internetowym PrestaShop (plugin dostępny w wersji ecommerce)

Wykład 4. Tablice. Pliki

Dokumentacja wstępna TIN. Rozproszone repozytorium oparte o WebDAV

Sieci komputerowe. Wykład 5: Warstwa transportowa: TCP i UDP. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski

bo od menedżera wymaga się perfekcji ANKIETY ONLINE W SYSTEMIE BUSINESS NAVIGATOR

Implementacja standardu GML w oprogramowaniu ESRI i GISPartner na przykładzie Geoportalu2

Migracja Comarch ERP Altum Business Intelligence do wersji

Migracja Business Intelligence do wersji

Baza danych. Modele danych

Migracja Business Intelligence do wersji

Informatyka I. Standard JDBC Programowanie aplikacji bazodanowych w języku Java

emszmal 3: Automatyczne księgowanie przelewów w sklepie internetowym Magento 2 (plugin dostępny w wersji ecommerce)

SAS Access to Hadoop, SAS Data Loader for Hadoop Integracja środowisk SAS i Hadoop. Piotr Borowik

Transkrypt:

Pentaho DI część 1 Paweł Boiński Politechnika Poznańska, Instytut Informatyki

Literatura Pentaho Kettle Solutions: Building Open Source ETL Solutions with Pentaho Data Integration Matt Casters, Roland Bouman, Jos van Dongen 2010, ISBN-10: 0470635177 Pentaho Data Integration 4 Cookbook Pulvirenti Adrián Sergio, Roldán María Carina 2011, ISBN-10: 1849515247

Studium przypadku Rozwijająca się sieć wypożyczalni filmów Dwa sklepy Wdrożony system informatyczny Dwie bazy danych (różne systemy zarządzania bazami danych) Cel: przeprowadzenie analizy danych o wypożyczeniach w celu opracowania nowej strategii marketingowej Źródło danych: Sakila DB http://dev.mysql.com/doc/sakila/en/

Źródła danych (1) Sklep nr 1 SZBD MySQL, sklep nr 2 SZBD PostgreSQL

Źródła danych (2) Plik CSV - dane adresowe i geograficzne z serwisu geonames.org Plik XML - dane na temat filmów Usługa sieciowa - dane na temat aktorów występujących we filmach

Założenia Dane pracowników i klientów są replikowane Dane pracowników są uaktualniane tylko w sklepie, w którym jest zatrudniona dana osoba Dane klientów mogą być uaktualniane w dowolnym sklepie Filmy identyfikowane są przez nazwę i rok wydania (produkcji) Plik CSV MySQL Usługa sieciowa PostgreSQL Hurtownia danych Plik XML

ETL/ELT ETL (Extract, Transform, Load) Ogólna definicja: proces lub zbiór procesów zasilania hurtowni danych danymi ze źródeł Ekstrakcja przyłączenie się i pobranie danych ze źródeł, w taki sposób, że możliwe jest ich dalsze przetwarzanie Transformacja Zbiór operacji wykonywanych na pobranych ze źródeł danych np. sprawdzanie poprawności, konwersja, obliczanie agregatów Ładowanie Wstawianie danych do hurtowni danych. Obejmuje takie elementy jak zarządzanie kluczami, utrzymywanie historii dla wymiarów etc. Inne podejście: ELT

Agile Business Intelligence Rozwijanie i utrzymywanie procesów ETL można porównać do rozwijania i utrzymywania oprogramowania Zyskują na popularności tzw. zwinne metodyki Przykładem jest metodyka Agile BI, której celem jest szybka adaptacja organizacji do zmieniających się warunków biznesowych Wybrane cechy Agile BI: Realizacja przyrostowa Szybkie tworzenie podstawowych elementów oprogramowania (procesów ETL) Możliwość łatwego i szybkiego wprowadzania zmian Środowisko do budowy procesów ETL powinno wspierać metodykę Agile BI

Hurtownia danych ogólny schemat Klienci Czas Sklepy Aktorzy Fakty - wypożyczenia Pracownicy Aktorzy w filmach Filmy Realizacja w pierwszej wersji Częściowa realizacja w pierwszej wersji Realizacja w kolejnych wersjach

Hurtownia danych pierwsza wersja

Modelowanie danych Power Architect Profilowanie danych

Pentaho DI część 2 Podstawowe pojęcia Prosta transformacja Transformacja podrzędna Paweł Boiński Politechnika Poznańska, Instytut Informatyki

Pentaho Data Integration Kettle wersja community edition K E (Extraction) T (Transformation) T (Transportation) L (Loading) E Implementacja w języku Java Windows, Unix/Linux Podstawowe składniki Kettle: Spoon graficzny interfejs użytkownika Puk puk. - Kto tam? (mijają 3s) - Java. Puk puk. - Kto tam? - C++. Puk puk. - Assembler. Kitchen program odpowiedzialny za wykonywanie zaprojektowanych procesów ETL (zadań) Pan program odpowiedzialny za wykonywanie zaprojektowanych transformacji

Pojęcia podstawowe Transformacja (transformation) Szeroko rozumiane wykonywanie działań na wierszach danych Może składać się z wielu kroków (steps) np. odczyt, filtrowanie Kroki transformacji są wykonywane równolegle* Zadanie(job) Składa się z wielu transformacji oraz innych elementów Wykonanie sekwencyjne* Połączenie (hop) Reprezentuje skierowany przepływ danych pomiędzy krokami transformacji lub elementami zadania Ma ograniczony rozmiar bufora dla danych (FIFO) * w większości przypadków

Pojęcia podstawowe Krok (step) Nazwany, elementarny składnik transformacji Może być połączony z innymi krokami poprzez przepływy wchodzące i wychodzące Nie ma kroku początkowego, wszystkie kroki wykonywane są równolegle Krotki ze wszystkich przepływów wchodzących muszą mieć taką samą strukturę Przykład zadania Przykład transformacji

Repozytorium Zawiera wszystkie elementy związane z procesem transformacji: zadania, transformacje, połączenia etc. Rodzaje repozytorium W bazie danych łatwe współdzielenie, bezpieczeństwo zapewniane przez SZBD Plikowe wykorzystuje Virtual File System - repozytorium można umieścić zarówno w katalogu jak i w pliku zip czy też na zdalnym serwerze (np. FTP). Zadania i transformacje można również zapisać poza repozytorium w postaci plików XML (*.kjb dla zadań i *.ktr dla transformacji)

Agile BI w Pentaho DI Narzędzie Pentaho DI wspomaga metodykę Agile BI: Łatwość instalacji Minimalna liczba wymaganych parametrów dla definiowanych zadań (np. dla połączeń nie trzeba specyfikować nazwy klasy sterownika JDBC) Predefiniowane najpopularniejsze, parametryzowane kroki transformacji Prawie cała funkcjonalność dostępna z poziomu interfejsu graficznego Minimalizacja liczby wyświetlanych informacji (np. brak mapowań dla każdego pola) Całkowicie dowolne nazewnictwo dla komponentów wykorzystywanych w transformacjach (poprawia czytelność) Możliwość podglądu przetwarzanych danych

Transformacja pracowników z jednego źródła danych Odczytuje tylko dane, które uległy zmianie od ostatniego uruchomienia Odczytuje dane tylko z jednego sklepu Dla każdego pracownika określa adres jego zamieszkania wykorzystując transformację podrzędną Wprowadza zmiany w wymiarze PRACOWNICY w hurtowni danych

Transformacja podrzędna Wywoływana z innej transformacji Może pobierać wartości parametrów (identyfikatory pracowników) Może zwracać wynik w postaci strumienia krotek (dane adresowe pracowników) Odczytuje dane adresowe z bazy danych Zamienia dwukolumnowe adresy na jeden atrybut

Pentaho DI część 3 Dodanie drugiego źródła danych Transformacja klientów Paweł Boiński Politechnika Poznańska, Instytut Informatyki

Drugie źródło danych Pierwsza wersja transformacji pracowników zakłada odczyt tylko z jednego źródła danych Odczyt drugiego źródła (sklepu nr 2) wygląda analogicznie, konieczne jest jednak zduplikowanie znacznika czasowego wskazującego, którzy pracownicy mają być transformowani

Modyfikacja transformacji podrzędnej Pierwotnie wyszukiwany adres tylko ze sklepu nr 1 Dodanie parametru numeru sklepu do transformacji podrzędnej Na podstawie wartości tego parametru decyzja, z którego sklepu odczytać dane adresowe Krotki z dwóch źródeł są łączone w jeden strumień a następnie przetwarzane w taki sam sposób jak poprzednio

Transformacja klientów - założenia Klienci są replikowani pomiędzy bazami danych Ten sam klient może mieć różne dane w różnych sklepach ale ma zawsze ten sam identyfikator Podczas modyfikacji/wstawiania klientów uaktualniany/wstawiany jest znacznik czasowy Jeżeli dane klienta są tylko w jednym źródle (replikacja odbywa się w określonych odstępach czasu) to są one wstawiane do hurtowni danych Jeżeli dane klienta są w dwóch źródłach danych to wybierane są te dane klienta, które oznaczone są późniejszym znacznikiem czasowym

Łączenie klientów Komponent Merge Join działa jak operacja sort merge w bazie danych Dane wejściowe muszą być posortowane (w źródle lub poza nim) zgodnie z warunkiem połączeniowym Ponieważ nie wszystkie dane klientów muszą być zreplikowane konieczne jest wykorzystanie połączenia zewnętrznego (FULL JOIN) aby zachować krotki z obu źródeł W krotkach, dla których zabrakło połączenia parametry z drugiego źródła pozostają puste

Wybór źródła danych Określenie, w którym źródle dane są bardziej aktualne na podstawie znaczników czasowych Dla danych z połączenia zewnętrznego trzeba zamienić puste daty na daty, które muszą być starsze niż te w aktualnym źródle. Wynik porównania znaczników czasowych wyznacza ścieżkę, w której nastąpi wybór danych z właściwego źródła

Pełna transformacja klientów Ostatnim elementem jest pobranie adresu klienta (transformacja podrzędna) i aktualizacja danych klienta w hurtowni danych

Pentaho DI część 4 Generowanie danych Zasilanie relacji faktów Paweł Boiński Politechnika Poznańska, Instytut Informatyki

Transformacja filmów Dane o filmach mogą być zduplikowane Komponent Unique rows eliminuje duplikaty ale wymaga posortowanego zbioru krotek Nowe filmy (lub zmiany) są zapisywane w wymiarze FILMY.

Generowanie danych Wymiar przechowujący informacje o datach może być wstępnie wypełniony danymi Komponent Generate rows generuje określoną liczbę wierszy natomiast komponent Add sequence może zostać wykorzystany do ich ponumerowania Na podstawie numeru wiersza, komponenty Calculate i Modified Java Script Value wyznaczają konkretne dane (datę, nazwę dnia, miesiąca etc.) dla przetwarzanej krotki

Zasilanie relacji faktów Przed zapisaniem nowej krotki w relacji faktów konieczne jest wyznaczenie identyfikatora filmu wyliczenie czasu wypożyczenia dla oddanych filmów wyznaczenie identyfikatorów dat (wypożyczenia i opcjonalnie zwrotu)