Narzędzia ETL – czym są i jak zacząć z nich korzystać?

Michał Maliszewski

sty 25, 2022

Business Intelligence

ETL

banery data science

W pracy z danymi często napotykamy na wiele problemów. Najważniejsze to rozproszenie danych w różnych systemach oraz ich jakość. Rozproszone dane nie pozwalają nam spojrzeć na wszystkie aspekty biznesu jednocześnie. Dane z systemów księgowych, CRM, sprzedaży, dane trzymane w plikach lokalnych użytkowników – analiza tych danych i wyciąganie z nich właściwych wniosków staje się w takim środowisku bardzo trudne. W takiej sytuacji pojawia się pytanie: jak to wszystko połączyć?

Czym jest GIGO?

Optymalnym efektem byłaby jedna baza danych, zawierająca wszystkie dane, tak abyśmy mogli w prosty sposób przetwarzać je, wizualizować i analizować.

Drugim aspektem problemów związanych z danymi jest ich jakość. Ten problem doskonale przedstawia zdanie: Garbage in = Garbage out (śmietnik na wejściu = śmietnik na wyjściu). Ten przemawiający do wyobraźni termin oznacza, że jeśli nie zadbamy o jakość danych na wejściu do narzędzia analitycznego, na końcu otrzymamy równie mało jakościowy efekt.

Specyfika ETL

ETL jest skrótem, na który składają się trzy etapy procesowania danych, aby finalnie mieć dane dostępne w jednym dobrym jakościowo źródle. Akronim ten oznacza:

  • E(kstrakcję), czyli wyciągnięcie danych z rozproszonych źródeł;
  • T(ransformację), czyli ich przekształcenie, oczyszczenie oraz implementację reguł biznesowych;
  • L(Ładowanie) danych do jednego źródła, np. do hurtowni danych.

Webinarium na żądanie

Jak zacząć korzystać z narzędzi ETL?

Zobacz Webinar

Etap 1. Ekstrakcja

Proces ekstrakcji to wyciągnięcie danych ze wszystkich dostępnych źródeł. Najczęściej spotykane źródła to bazy danych, pliki płaskie, serwisy webowe oraz innego typu jak np. RSS.

Jeśli zamierzasz stworzyć jakościowy model swoich danych, musisz najpierw je poznać.

To często pomijany etap, który jest jednocześnie szalenie ważny, jeśli zależy nam na dobrej jakości danych, na których dokonywać będziemy późniejszej analizy. Poznanie danych to rozpoznanie źródeł, problemów związanych z odświeżaniem danych, błędów, jakie mogą być w nich zawarte. Szczególnie należy zwrócić uwagę na dane wprowadzane przez człowieka, w aplikacjach, które nie mają ich walidacji. Takie programy jak Excel czy też inne aplikacje z danymi wprowadzanymi ręcznie, będą potencjalnym ryzykiem, jeśli chodzi o jakość i aktualność danych. Dobrą praktyką poznania danych będzie ich audyt.

Audyt danych powinien obejmować trzy najważniejsze aspekty:

  1. Poznanie właścicieli danych. Dane rozproszone w organizacji mają różnych właścicieli. Tylko oni dadzą pełną informację dotyczącą zbierania, przechowywania, odświeżania oraz użycia danych. Rozpoznanie właścicieli danych jest kluczowe, tylko tak zbierzemy wymienione wyżej informacje.
  2. Zmapowanie lokalizacji danych, czyli opisanie lokalizacji danych, ich architektury, użytkowników i sposobów korzystania z nich.
  3. Ocena jakości, zakresu oraz logiki danych. Kluczowe będą tu kwestie formatu daty, zarządzanie nullami, przyrosty danych, potrzeba tworzenia nowych wymiarów, miar czy nowych funkcjonalności.

Etap 2. Transformacja

W kolejnym etapie zajmiemy się przede wszystkim czyszczeniem danych, ponieważ przy wielu źródłach danych oraz możliwym czynniku ludzkim istnieje potrzeba automatyzacji procesu poprawiania ich jakości. Biorąc pod uwagę, że taki proces będzie raczej ciągły, dobrze, aby wybrane przez nas narzędzie przeprowadzało go w sposób przejrzysty, zautomatyzowany, ale również tak, abyśmy mogli go łatwo modyfikować w miarę potrzeb.

Jednocześnie, przy rosnącym wolumenie danych, narzędzie to musi dokonywać czyszczenia w sposób optymalny, usuwając niepotrzebne duplikaty i poprawiając błędy przy jednoczesnej oszczędności miejsca i utrzymaniu pożądanej prędkości działania.

Po oczyszczeniu danych kolejnym etapem jest ich przekształcenie, do czego potrzebować będziemy właściwego mapowania danych oraz odpowiedniej standaryzacji formatów. Ważna jest też deduplikacja wierszy, dodanie kalkulacji (nowych kolumn), rozdzielanie zawartości pól (split), grupowanie i sumaryzacja.

Etap 3. Ładowanie

Kiedy mamy już oczyszczone i przekształcone dane, możemy rozpocząć proces ładowania. Dane możemy ładować w postaci całkowitej (full load) lub przyrostowej (incremental load).

Ładowanie w postaci całkowitej może powodować po pewnym czasie wykładniczy wzrost wolumenu danych i znacznie spowalniać cały proces. Ładowanie przyrostowe z kolei pozwala na szybkie procesowanie.

Dane ładować możemy do Data Warehouse, Data Hub czy Data Lake – jest to jedno źródło, z dużymi możliwościami przeliczeniowymi, dostarczające zintegrowane dane dla użytkownika biznesowego.

ETL i Business Intelligence

Proces przygotowania, transformacji i załadowania danych jest szczególnie istotny, jeśli chodzi o Business Intelligence. Używając właściwego narzędzia ETL, w przygotowanym wcześniej procesie, jesteśmy w stanie dostarczyć wysokiej jakości dane w szybki sposób, umożliwiając pełną analitykę.

W przypadku optymalnego ułożenia procesu oszczędzamy czas. Czas, potrzebny na przygotowanie danych w sposób ręczny, możemy poświęcić wtedy na właściwą analizę danych i wyciąganie wniosków biznesowych – a na tym zależy nam przede wszystkim.

Dobrze przygotowany proces ETL pozwoli na szybką analizę wszystkich danych, dostarczy kontekst historyczny, a także pozwoli na uzyskanie czasu na inne, ważne procesy w organizacji, jak choćby innowacje.

Narzędzia ETL

W czasach rozproszonych danych w dużych wolumenach narzędzia ETL stają się kluczowe w procesie Business Intelligence.

Wcześniej proces ETL najczęściej prowadzony był wewnątrz IT, polegał bardzo często na kodowaniu, jak również wymagał znajomości schematu docelowego. Tradycyjny proces ETL jest również trudny w skalowaniu i finalnie często konieczne jest zrezygnowanie z niskiej granulacji danych na rzecz szybkości w działaniu. Dlatego też tradycyjne hurtownie danych wymagają potem kolejnych przetwarzań lub użycia innych narzędzi w celu szczegółowej analizy.

Dodatkowym problemem może być też mała elastyczność procesu, co powoduje, że zmiany wymagane przez dynamicznie zmieniające się środowisko są bardzo trudne w implementacji.

Nowoczesne narzędzia ETL są projektowane tak, aby w łatwy i przejrzysty sposób budować proces, skalować go i działać w czasie rzeczywistym. Dodatkowo radzą sobie również z danymi semiustrukturyzowanymi z wielu różnych źródeł.

Dużą przewagą jest również korzystanie z własnej infrastruktury (tradycyjne narzędzia mają własne, przez co koszty wdrożenia są również o wiele wyższe). Skalowanie może więc być również dostosowane do wielkości organizacji.

Trendem w BI, a więc również w ETL, jest projektowanie narzędzi tak, aby można było w sposób graficzny ułożyć proces i dynamicznie modyfikować.

ELT – proces zmodyfikowany

Przy dużych wolumenach danych oraz potrzebie opcjonalnego dostępu do danych surowych, stosuje się proces ELT. Jest to proces, który transformację danych zostawia na koniec, właśnie po to, aby mieć możliwość analizy danych nieprzetworzonych. Dodatkowo transformacja odbywa się już w narzędziu końcowym, dzięki czemu nie ma konieczności przechowywania danych przetworzonych gdzie indziej.

ETL dla biznesu?

Coraz częściej również aplikacje ETL adresowane są do użytkowników biznesowych. Wynika to z potrzeby szybkiego przygotowania danych, również na mniejszą skalę. Jednym z takich narzędzi jest Alteryx. Jest to aplikacja służąca nie tylko do ETL, ale również do tworzenia modeli predykcyjnych, analizy przestrzennej oraz raportowania

Specyfiką Alteryxa jest budowa procesu z klocków (tools), których ogromna biblioteka pozwala na stworzenie dowolnego procesu, od bardzo prostych do kompleksowych rozwiązań dla dużych organizacji.

Innym przykładem narzędzia ETL dla biznesu jest Tableau Prep, współdziałające z Tableau Desktop i Server. W narzędziu tym nie tylko oczyścimy i przetworzymy dane z różnych źródeł, ale finalnie możemy uzyskać ekstrakt Tableau lub plik tekstowy.

Podsumowanie

W dynamicznie zmieniającym się środowisku biznesowym i danych, konieczna staje się analiza wszystkich dostępnych danych w sposób szybki, prosty i elastyczny. W takich warunkach wybór narzędzia ETL staje się kluczowy. Ważniejsze od wyboru świetnego narzędzia ETL staje się jednak pełne zrozumienie własnego środowiska danych, współudział wszystkich zainteresowanych oraz świadoma decyzja dotycząca architektury naszych danych, tak aby w pełni korzystać z przewagi dobrego Business Intelligence w organizacji.

Chcesz dowiedzieć się więcej? Porozmawiajmy o współpracy

Skontaktuj się