Dokumentacja Pakietu ETL

1. Zadanie

  • utworzenie zbiorczego arkusza Excel, który będzie zawierał dane z dwóch tabel i tworzył raport sprzedaży,
  • agregacja klientów, którzy ponownie się zarejestrowali do jednej pozycji (to samo imię nazwisko, miasto, ale różne id_klienta),
  • zadbanie o jakość i poprawność danych.

2. Dane źródłowe

Dane klientów pobrane zostały z tabeli Tb_Klienci, natomiast dane o sprzedaży z tabeli Tb_Sprzedaz. Dane pochodzą ze sklepu internetowego zajmującego się sprzedażą dywanów. Poniżej screeny.

3. Control Flow

Control Flow składa się z czterech etapów. W pierwszym następuje tzw. „przygotowanie danych”. Na ten etap składa się sprawdzenie integralności tabel źródłowych znajdujących się w bazie danych „hd” (Check Database Integrity Task), następnie zostaje wyczyszczona tabela docelowa „sprzedaz” (Execute T-SQL Statement Task), a na końcu przebudowane są dodatkowo indeksy tabel źródłowych (Rebuild Index Task).

W kolejnym etapie następuje Data Flow, w którym tworzymy tabelę wynikową, tzw. „raport sprzedaży” będący celem naszego zadania. Tabela ta zapisywana jest w bazie „raporty_sprzedazy”.

Trzecim etapem jest stworzenie back-upu bazy „raporty sprzedaży”. A na ostatnim etapie dane z tabeli są eksportowane do Excela za pomocą drugiego Data Flow.

4. Data Flow

W pierwszym Data Flow generujemy nową tabelę „sprzedaz” w bazie danych „raporty_sprzedazy” na podstawie tabel źródłowych „Tb_Klienci” i „Tb_Sprzedaz”. Na początku pobieramy potrzebne dane z dwóch w/w tabel źródłowych (OLE DB Source) i sortujemy je po „id_klienta” (Sort). Następnie dodajemy jeszcze jedną kolumnę „name”, która łączy ze sobą imię i nazwisko klienta (Derived Column).

Po tej operacji następuje połączenie dwóch tabel (Merge Join). Dodatkowo pole name jest konwertowane do duży liter (Character Map).

Następnie zaokrąglamy wartość sprzedaży do dwóch miejsc po przecinku, w tabeli źródłowej możliwe były cztery miejsca po przecinku (Derived Column).

Mając zaokrąglone wartości możemy zmienić typ pola, tak aby były tylko dwa miejsca po przecinku (Data Conversion).

Ostatnim krokiem przed umieszczeniem danych w nowej tabeli jest agregacja tych samych rekordów (Aggregate).

Następnie dane zapisywane są w tabeli docelowej (OLE DB Destination), a wszelkie błędy zapisywane do pliku (Flat File Destination).

Drugi Data Flow po odczytaniu danych z nowej tabeli zapisuje wyniki do pliku Excel.

5. Wyniki

Zapisana na dysku tabela formatu MS Excel.

Leave a Comment

3 × two =