4_cz.2
Transkrypt
4_cz.2
Procesy ETL - wykład V Paweł Skrobanek, C-3 pok. 321 [email protected] oprac. Wrocław 2012 Struktura 1. 2. 3. 4. 5. Wprowadzenie Ekstrakcja Transformacja Ładowanie Studium przypadków Wprowadzenie Procesy ETL 1 Wprowadzenie EKSTRAKCJA - mechanizmy umożliwiające połączenie i pobranie danych ze źródeł TRANSFORMACJA - przykłady operacji (MS Visual Studio) lookup fuzzy lookup new column merge split - wykonywanie skryptów, - konwersja typów, - obsługa błędów. ŁADOWANIE - mechanizmy umożliwiające połączenie i zapisanie danych do struktur docelowych Wprowadzenie Przykłady narzędzi: • Oracle Warehouse Builder • Microsoft SQL Server Integration Services (SSIS) • Informatica PowerCenter • Cognos Decisionstream • BusinessObjects Data Integrator (BODI) • Pentaho Data Integration (Kettle) - open source • SAS ETL studio Wprowadzenie CZYSZCZENIE I OBRÓBKA DANYCH PO STRONIE ŹRÓDŁA • łatwe definiowani e prostych operacji (krótki czas np. w arkuszu), • możliwość skorzystania z widoków ALE • permanentnoś ć zmian, • trudniejsze wyłapywanie błędów (przeglądani e), • dla każdego źródła w innym „miejscu” W PROCESACH ETL • powtarzalność procesu, • możliwa obsługa błędów, • łatwe dołączani e kolejnych placówek ALE • czasochłonne, często trudne konstruowani e procesu, POŚREDNIE 2 Wprowadzenie CZYSZCZENIE I OBRÓBKA DANYCH INNE MOŻLIWOŚCI • po załadow aniu (np. uzupełni enie wartości, zapisanie danych o procesie), • pośrednie (np. eksport z baz źródłowych do formatu arkusza kalkulacyjneg o, obróbka wstępna, potem ładowanie do HD), • wieloetapow e (np. proces ETL zasila tabelę, która stanowi źródło dla kolejnego procesu ETL) DYSKUSJA: Proszę wskazać przykłady zastosowań wskazanych rozwiązań. Ekstrakcja Istotne aspekty: • z uwzględnieniem możliwości źródeł (współpracujące lub nie – patrz. Poprzedni wykład) – opracowanie odpowiednich mechanizmów, • z uwzględnieniem możliwości i wydajności systemów i łączy (np. równoległa realizacja procesów, dostęp w określonym czasie, dostosowanie łądowania do przepustowość łączy), • z uwzględnieniem możliwości wybranych narzędzi (np. sposoby realizacji, sterowniki, mechanizmy dostępu). Ekstrakcja Przykład: źródła danych (Visual Studio 2008): 3 Ekstrakcja Przykład: definiowanie struktury dla źródła typu „flat File” (dla pliku *.csv). Ekstrakcja Przykład: brak menedżera dla bazy „Access 2007” (spróbujemy pod koniec wykładu poradzić sobie korzystając z: http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=237 34 ). Ekstrakcja Przykład struktury sterowników natywnych dla aplikacji z laboratorium (źródło: http://msdn.microsoft.com/enus/library/cc811599%28v=office.12%29.aspx #Ac20 07D evel opi ngSo lutio ns_ Cod eExamp les ) 4 Transformacja Typowe problemy błędne dane analogie konflikty strukturalne homonimy synonimy brak danych atrybuty odbiegające od normy Transformacja Krótkie objaśnienie: • błędne dane (np. „czeski błąd” – przestawione cyfry przy wpisywaniu, pomyłki), • homonimy - te same nazwy, ale opisujące różne pojęcia, np. bal – zabawa, bal – kłoda, typ – jako model, typ – jako rodzaj samochodu ), • synonimy - różne nazwy, ale opisujące to samo pojęcie (np. typ – jako model samochodu i model – jako model samochodu; miejsce urodzenia i miasto), • analogie – atrybuty/cechy opisujące to samo, ale w różnym zakresie (np. rejon = pomorze odpowiadający trzem wojewodztwom, NIP postaci PL1111111111) Transformacja • konflikty strukturalne – reprezentowanie tych samych pojęć, ale przez różne konstrukcje (np. województwo reprezentowane poprzez „DS” oraz jako element struktury łącznie z kodem kraju „PLDS”), • atrybuty odbiegające od normy, np. zamiast miasta Wrocław, możemy spotkać Wroclaw, Wrocław Pn., • brak danych. 5 Transformacja Mechanizmy porządkowania i standaryzacji danych: – lookup – umożliwia zamianę lub uzupełnienie wartości na podstawie tabeli referencyjnej (np. słownika), – fuzzy lookup – j.w., ale na zasadzie „podobieństwa” danych do wzorca; operacja pozwala np. na ujednolicenie pisowni miejscowości „Wroclaw”, „Wrocław”, ”wroclaw”, Transformacja Mechanizmy porządkowania i standaryzacji danych: – new column – pozwala między innymi na dodanie nowej kolumny i uzupełnienie jej określonymi wartościami (np. automatycznie nadanymi numerami, czy wartościami wyliczonymi na podstawie innych danych), – merge – mechanizmy pozwalające na złączenie danych pozyskanych różnymi ścieżkami przetwarzania (np. z różnych źródeł), – split – mechanizm służący do podziału danych oraz zdefiniowanie reguł tego podziału. Transformacja Mechanizmy porządkowania i standaryzacji danych: – inne – jak na przykład konwersja typów, autonumerowanie (zastosowanie skryptów), wykonywanie operacji języka SQL, wykonanie operacji typu „data mining”. PRZYKŁAD: Analiza – złącznik ksero. 6 Ładowanie Istotne aspekty: • z uwzględnieniem możliwości i wydajności systemów i łączy (np. równoległa realizacja procesów z różnych oddziałów lub sekwencyjna, dostęp w określonym czasie, dostosowanie do przepustowości łączy), • z uwzględnieniem możliwości wybranych narzędzi (np. sposoby realizacji, sterowniki, mechanizmy dostępu), • z uwzględnieniem dodatkowych operacji, np. notacji informacji o procesie (np. stempel czasu, informacja o sukcesie), uruchomienia procesów agregacji, walidacja danych. STUDIUM PRZYPADKÓW PRZYKŁAD 1: Założenia: • integrujemy dane osobowe z dwóch różnych systemów (np. dane o właścicielach lokali dla potrzeb łączących się firm dostarczających paliwo do ogrzewania lokali), • dla uproszczenie: zintegrowano dane dotyczące adresów zameldowania – ten sam ID oznacza ten sam adres zameldowania STUDIUM PRZYPADKÓW PRZYKŁAD 1: Zadanie: zintegrować osoby (źródła poniżej oraz ksero 2) 7 STUDIUM PRZYPADKÓW PRZYKŁAD 2: Założenia: • źródło zawiera identyfikator deklaracji RZA (analizowanej przez nas wcześniej - dla przypomnienia postaci: „rrrr mm nr”) zapisany w jednym atrybucie (jako kolumna w arkuszu kalkulacyjnym excel), Zadanie: zapisać w bazie docelowej jako trzy osobne atrybuty a) dokonując rozbicia po stronie źródła, b) dokonując rozbicia w trakcie procesu ETL. 8