Narzędzia ETL: Extract, Transform, Load.

kwi 12, 2022

ETL

banery data science

Budowanie raportu i wizualizacja danych to istotne element raportowania, ale żeby zbudować dobry dashboard, należy się do tego odpowiednio przygotować. ETL, czyli Extract, Transform i Load to etapy, które musimy przejść, zanim dotrzemy do właściwej aplikacji Business Intelligence. Często, gdy decydujemy się na wprowadzenie narzędzia BI do naszej organizacji, zapominamy o bardzo istotnym kroku, jakim jest przygotowanie danych. Zdarza się, że jest on całkowicie pomijany lub przeprowadzony w sposób niepoprawny. W tym artykule dowiesz się czym jest ETL, jak istotną rolę odgrywa on w naszym raportowaniu oraz jakie niesie za sobą korzyści.

Czy potrzebuję narzędzia ETL?

Co się stanie, gdy nieprzygotowane dane wprowadzimy do systemu Business Intelligence? Pod tym względem narzędzia te są bezlitosne, ponieważ bardzo szybko pokażą nam, jak duży bałagan panuje w naszych danych, ale ma to też swoje plusy, ponieważ ta sytuacja pozwala nam zorientować się, w jakich elementach musimy zaprowadzić porządek i doprowadzić nas do wniosku, że w naszej organizacji narzędzie ETL jest niezbędne.

Narzędzia ETL kojarzyły się zawsze z wysokim progiem wejścia, były zarezerwowane dla wąskiego grona ludzi pracujących w IT, osób wysoce technicznych, ale sytuacja ta uległa zmianie. Powstaje coraz więcej oprogramowań, które pozwalają na dużo prostsze, wygodniejsze i wymagające mniej wysokospecjalistycznej wiedzy uporządkowanie danych, są to rozwiązania skierowane do użytkowników biznesowych. Przykłady może stanowić Alteryx i Tableau Prep. Są to wciąż rozwiązania bardzo zaawansowane i w pewien sposób skomplikowane natomiast sam graficzny sposób układania procesów, możliwość śledzenia krok po kroku tego, co tworzymy, począwszy od załadowania danych, przez ich przekształcanie do przeniesienia ich do hurtowni lub innego źródła to ogromny skok jakościowy, jeżeli chodzi o łatwość użycia.

Narzędzia tego typu stanowią dużą oszczędność czasu, a co za tym idzie pieniędzy, szczególnie jeżeli chodzi o pracowników wysoko wyspecjalizowanych. Jeżeli ktoś posiada wysokie kompetencje techniczne, to może wykorzystać je jedynie w obszarach, w których rzeczywiście biznes nie jest w stanie sam zaspokoić swoich potrzeb. Użytkownicy biznesowi również odczują dużą, pozytywną zmianę. Niejednokrotnie w pracy każdego z nas zdarzają się sytuacje „na wczoraj”, gdy jesteśmy uzależnieni od osób trzecich „ticket” z naszym zapytaniem kolejkuje się i nie jesteśmy w stanie ruszyć dalej z naszym zadaniem. Wyobraźmy sobie sytuację, gdy jesteśmy przed jakimś spotkaniem, musimy szybko przygotować informację dotyczącą tego, co dzieje się w naszym obszarze biznesowym. Posiadając odpowiednie narzędzie, możemy bardzo szybko podłączyć się do dowolnego źródła danych, bo to umożliwiają nam gotowe konektory, możemy szybko oczyścić dane na przykład z literówek, za pomocą graficznego interfejsu stworzymy połączenia między danymi, a na końcu przygotujemy wizualizację odpowiadającą na zadane pytania.

Jakie korzyści niesie za sobą ETL?

Dlaczego mamy taką sytuację, że pojawia się coraz więcej możliwości dla użytkowników biznesowych? O ile działy IT świetnie wykonują swoją pracę, o ile biznes świetnie wykonuje swoje obowiązki, to w momencie, kiedy dochodziło do styków tych dwóch światów, często nie dostarczali oni wspólnie dobrego finalnego produktu. Poruszanie się w innych obszarach i swego rodzaju bariera językowa często sprawiały, że nie byli oni w stanie w szybki sposób dostarczyć odpowiedniego rozwiązania.

Transformacja danych to element, który wydaje się być najważniejszym z całego procesu ETL i tak rzeczywiście ze strony biznesowej jest. Produkcja danych w każdej organizacji jest ogromna. Każdego dnia każdy z nas jako pracownik tworzy ogromne liczby informacji, które nasze przedsiębiorstwo może codziennie wykorzystywać, by się rozwijać. Jak zapanować nad tym chaosem? Narzędzia takie jak Alteryx czy Tableau Prep umożliwiają budowanie modelu danych w formie procesu, gdzie różnego rodzaju dane z różnego rodzaju źródeł można najpierw odpowiednio przygotować, żeby później w zestandaryzowanej formie je ze sobą połączyć. Są to czynności, które bez problemu po odpowiednim szkoleniu może wykonywać użytkownik biznesowy. Oczywiście, ten sam efekt można osiągnąć na przykład w R czy Pythonie, ale pojawia się tu znów próg wejścia, czyli ilu pracowników jesteśmy w stanie nauczyć napisania takiego procesu, a także ile czasu zajmie przygotowanie takich danych. Kolejnym niewspominanym jeszcze elementem jest kwestia zmian. Co, jeśli będziemy chcieli dany proces przekształcić? Co, jeżeli zmieni się pracownik? Gdy dany proces ułożony jest w formie wizualnej, to dużo łatwiej jest się w nim odnaleźć nowej osobie, łatwiej jest też dokonać zmian czy wyłuskać pewne błędy. Szybkość adaptacji jest o wiele bardziej możliwa.

Kolejnym plusem jest to, że jeżeli pojawi nam się kolejne zadane, to jeżeli mamy już oczyszczone i przygotować w pełni źródło danych, to proces ten możemy przenosić i przyspieszać w ten sposób swoją pracę. Jeżeli zaszłaby taka potrzeba, to takie dane ponownie możemy modyfikować i dostosowywać. Do tego dochodzą kolejne udogodnienia. Kiedy operujemy na danych, które są przyrostowe albo cykliczne, to należałoby taki proces odświeżać. Gdy jest od jeden lub nawet pięć, to nie jest to takie trudne, można to bez problemu zrobić manualnie, ale wiemy, że rzeczywistość nie jest często dla nas aż tak łaskawa. Na podstawie doświadczeń pochodzących od naszych Klientów możemy powiedzieć, że takich procesów jest zazwyczaj nie mniej niż pięćdziesiąt, a każdy z nich powinien odświeżać się w innym okresie. Dzięki narzędziom ETL może się to wydarzać bez naszej ingerencji, raz ustawione odświeżanie zawsze będzie działać, a my nie musimy się tym zajmować i pilnować terminów. Dane zaciągają się ze źródła, a na naszych wizualizacjach pojawiają się nowe informacje.

Załadowanie przetworzonych danych zbliża nas do upragnionej wizualizacji. Narzędzia ETL umożliwiają nam otrzymanie w zasadzie wszystkich możliwych formatów czy ekstraktów, które potem możemy załadować do narzędzia umożliwiającego nam analizę wizualną. Tableau, w którym budujemy nasz raport, dostarcza nam również informacji, które konkretne kolumny z naszego źródła danych zostały wykorzystane w naszej wizualizacji. Możemy usunąć ze źródła nieużywane przez nas informacje, co sprawi, że raport będzie działał szybciej. Można powiedzieć, że jest to połączenie Transform i Load. Tak jak pisaliśmy wcześniej, źródło danych może być we wszelakich formatach. Jednym z przykładów ekstraktów, które oferuje Tableau Prep jest plik tekstowy. Może być to dla niektórych ciekawym rozwiązaniem, jeżeli chcą analizować dane w innej aplikacji.

Jeżeli zaciekawił Cię temat ETL, zapraszamy do przesłuchania odcinka naszego podcastu Pogromcy Pie Chartów. To na podstawie tej rozmowy powstał ten artykuł. Dowiesz się jeszcze więcej o ETL-u, poznasz możliwości, które oferuje tego typu rozwiązania i przykłady biznesowe, w których został on wykorzystany.