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