Przygotowanie danych do analizy – jak zaplanować proces?

mar 8, 2018

Business Intelligence

ETL

Przygotowanie danych

Opieranie strategicznych decyzji biznesowych na analizie danych będących w posiadaniu organizacji to szansa na poprawę efektywności działania oraz wypracowania trwałej przewagi konkurencyjnej. Warunkiem realizacji takiego scenariusza jest jednak bazowanie na aktualnych i wiarygodnych danych, których pozyskanie, przetworzenie oraz analizowanie rodzi wiele wyzwań. W jaki sposób sobie z nimi poradzić? Jak zorganizować proces przygotowania danych do analizy i zweryfikować jego skuteczność?

Wyzwania związane z przygotowaniem danych do analizy

Jednym z podstawowych kroków poprzedzających każdą analizę i interpretację danych jest ich właściwe przygotowanie. Mowa przede wszystkim o zlokalizowaniu danych istotnych z punktu widzenia planowanych działań analitycznych, ich pozyskaniu w możliwie najbardziej dogodnej formie i transformacji, która może obejmować szereg mniej lub bardziej złożonych czynności. Jest to niezwykle istotne, bowiem dane niewłaściwe, niekompletne, nieaktualne bądź posiadające jakikolwiek inny defekt, nie pozwalają na wyciąganie właściwych wniosków i tym samym przygotowanie wartościowych rekomendacji dla biznesu.  Jak definiuje się proces przygotowania danych (ang. data preparation)? Zdaniem Aberdeen Group poprzez przygotowanie danych rozumieć należy wszelkie aktywności podejmowane w celu poprawy jakości, użyteczność lub dostępność danych, obejmujące, aczkolwiek nieograniczające się do: integracji, profilowania, czyszczenia i zarządzania danymi. Wiele definicji procesowanie danych traktuje nieco szerzej, uznając je jako część kompleksowego cyklu, na który składa się sześć kluczowych kroków:

1)      Gromadzenie (Collection)

Gromadzenie danych to pierwszy i jednocześnie jeden z najważniejszych etapów cyklu procesowania danych, gdyż to właśnie od jakości zebranych danych zależeć będą wyniki prowadzonych na ich bazie analiz. Konieczne jest zatem precyzyjne planowanie i upewnienie się, że gromadzone dane są zarówno właściwie zdefiniowane jak i wartościowe z biznesowego punktu widzenia.

2)      Przygotowanie (Preparation)

Pochodzące z różnych źródeł, surowe dane biznesowe nie nadają się zwykle do analizy bez uprzedniego przygotowania. Mowa chociażby o ich czyszczeniu, uzupełnianiu regułami biznesowymi i innych manipulacjach, które sprowadzają je do formy umożliwiającej rozpoczęcie zasadniczego procesu analitycznego. Przejście do analizy bez uprzedniego przygotowania danych i ich zweryfikowania pod kątem ewentualnych błędów, prowadzi zwykle do uzyskania niewiarygodnych wyników, a w konsekwencji podejmowania niewłaściwych decyzji biznesowych.

3)      Ładowanie (Input) 

Etap, który można scharakteryzować jako proces, w którym zgromadzone w uprzednich etapach dane są przekształcane z postaci czytelnej dla człowieka do postaci czytelnej dla komputera (forma binarna).

4)      Procesowanie (Processing)

Prawidłowo załadowane dane poddawane są następnie procesowaniu, czyli transformacji zaprojektowanej w sposób zgodny z oczekiwaniami i potrzebami zgłaszanymi przez biznes. Mowa chociażby o różnego rodzaju kalkulacjach, porównywaniu wartości, grupowaniu czy sortowaniu. Procesowanie danych odbywa się w zautomatyzowany sposób, aczkolwiek czas niezbędny do jego ukończenia zależny jest od wolumenu danych oraz skali zaplanowanych modyfikacji. Na szczęście z pomocą przychodzi nowoczesne oprogramowanie, doskonale radzące sobie z przetwarzaniem ogromnej ilości danych w bardzo krótkim czasie.

5)      Analizowanie (Output)

Odpowiednio przygotowane i zmodyfikowane dane stanowią efekt kroków podjętych w poprzednich etapach i mogą wreszcie trafić w ręce przedstawicieli biznesu, zwykle w surowej formie, umożliwiającej indywidualną analizę i interpretację bądź kierownictwa organizacji, które jest zwykle odbiorcą gotowych raportów czy sformułowanych na ich podstawie rekomendacji konkretnych działań.

6)      Przechowywanie (Storage)

Z każdym rokiem wolumen danych gromadzonych przez organizację dynamicznie rośnie. Co więcej, w kolejnych latach organizacje czeka prawdziwy zalew danych, stąd coraz większa rola etapu wieńczącego proces przygotowania danych, czyli wszelkie czynności podejmowane w celu prawidłowego przechowywania i zabezpieczenia danych. Dostęp do danych historycznych ma dla biznesu ogromne znaczenie, gdyż na ich bazie buduje się najróżniejsze prognozy, analizuje trendy, odstępstwa czy prawidłowości. Ich utrata może być dla organizacji bardzo bolesna. Odpowiednie zabezpieczenie firmowych baz danych jest jednym z największych wyzwań i obszarem, na który w 2018 roku i kolejnych latach kładziony będzie bardzo duży nacisk. Więcej o trendach w świecie Big Data pisaliśmy w jednym z naszych wcześniejszych artykułów (link).

Odpowiednie zaprojektowanie procesu przetwarzana danych ma kluczowe znaczenie dla organizacji chcącej opierać swój proces decyzyjny na ich analizie. Stale zwiększające się wolumeny danych oraz konieczność ich przetwarzania w czasie rzeczywistym rodzi naturalnie wiele wyzwań, jednak sprostać im pozwalają nowoczesne systemy BI i narzędzia zaprojektowane z myślą o efektywnej analizie i wizualizacji danych (np. Tableau). Skuteczne rozwiązanie przez organizację problemu przygotowania danych niesie za sobą ogromną korzyść w postaci oszczędności czasu. Udostępnienie osobom decyzyjnym w organizacji gotowych do analizy danych, niewymagających czyszczenia i czasochłonnego przygotowania, pozwala na koncentrację na tym, co najistotniejsze – na analizie i interpretacji, które w efekcie prowadzą do podejmowania decyzji skutkujących uzyskaniem wymiernych korzyści biznesowych.

Jak skutecznie zaplanować proces?

Choć pozornie projektowanie w organizacji procesu przygotowania danych do analizy wydaje się być prostym zadaniem, rzeczywistość udowadnia, że bywa inaczej. Wiele zależy od struktury konkretnego podmiotu, wolumenu danych, z jakim się zmaga, rozproszeniu danych, sposobów ich pozyskiwania itd. Punkt wyjścia każdorazowo stanowić powinna gruntowana analiza wymagań biznesowych. Wiedząc, czego oczekuje użytkownik końcowy, znacznie łatwiej będzie zorganizować proces oraz zidentyfikować, a następnie zlokalizować źródła wszystkich niezbędnych danych. By ułatwić sobie projektowanie procesu ich przygotowania i jednocześnie uczynić go możliwie najbardziej efektywnym, należy odpowiedzieć sobie na kilka podstawowych pytań.

Jednym z kluczowych jest niewątpliwie pytanie o źródła pochodzenia danych. W przypadku niewielkich organizacji z ustaleniem miejsca będącego repozytorium danych nie ma zwykle większych problemów. Nieco inaczej jest w dużych firmach, które ze względu na wolumen nie  mogą polegać na prostych arkuszach kalkulacyjnych, ale zmuszone są dane gromadzić w kilku różnych bazach danych, hurtowniach danych, tzw. „jeziorach danych” (ang. data lakes) obsługiwanych przez Hadoop czy też w coraz bardziej powszechnej chmurze. Bywa również, że kluczowe dane pochodzą ze źródeł zewnętrznych, co dodatkowo utrudnia cały proces. Im więcej źródeł danych, tym proporcjonalnie więcej wyzwań i trudności, z którymi trzeba się zmierzyć. Konieczne jest bowiem zweryfikowanie szeregu kwestii technicznych, w tym m. in.: rozmiaru danych dostępnych w poszczególnych lokalizacjach, ich struktury i formatu, dostępności (uprawnienia dostępowe), częstotliwości aktualizowania itd. Bez gruntownej analizy niemożliwe jest przejście do kolejnego etapu i skuteczne zaplanowanie całego procesu.

Na etapie planowania należy odpowiedzieć sobie również na pytanie dotyczące koniecznych modyfikacji danych. Bardzo często surowe dane pochodzące z systemów czy firmowych baz danych wymagają mniej lub bardziej kompleksowego przetworzenia. Mowa o kalkulacjach, mapowaniu czy ewentualnie uzupełnieniu obowiązującymi w organizacji regułami biznesowymi. Ogromne wyzwanie stanowią ponadto czynność związane z czyszczeniem danych, a więc wyeliminowaniem wszystkich błędów, zduplikowanych rekordów i innych przypadków, które mogą zniekształcać wyniki późniejszych analiz. Bardzo często konieczne zmiany są wręcz kosmetyczne, a błędy jednostkowe, jednak zdarzają się i takie sytuacje, kiedy błędów jest tak dużo, że konieczne jest systemowe rozwiązanie procesu czyszczenia.

Ogromnym wyzwaniem jest z ponadto łączenie danych pochodzących z różnych źródeł, co niestety nie jest czymś rzadkim. Kilka zupełnie różnych lokalizacji, w których znajdują się niezbędne dane to spory problem w zakresie pozyskiwania i niestety jeszcze większy w kontekście łączenia. Bez znajomości struktury danych pochodzących z poszczególnych źródeł niezwykle trudno jest zidentyfikować elementy wspólne i zorganizować dane w taki sposób, by stanowiły spójną całość i były gotowe do przeprowadzania na ich bazie mniej lub bardziej zaawansowanych działań analitycznych. Konieczne stają się tym samym: dokładne ustalenie relacji, ich maksymalne uproszczenie w celu zapewnienia jak najwyższej wydajności procesu, a także zaprojektowanie takiego modelu danych, który będzie łatwo skalowalny.

Finalny etap prac stanowić powinny testy. Są one niezwykle istotne, gdyż stanowią zwykle oficjalne potwierdzenie prawidłowości działania procesu. To właśnie w ramach tego etapu weryfikowane są zarówno kwestie techniczne jak i wszelkie błędy merytoryczne. Biorąc pod uwagę złożoność procesu, ogrom wyzwań i trudności będących zwykle pochodną dużej liczby źródeł danych i samego ich wolumenu, niezależne sprawdzenie powinno być obowiązkowym elementem wieńczącym podjęte starania. Jego pominięcie może prowadzić do zafałszowania wyników prowadzonych analiz, a w konsekwencji do osłabienia skuteczności procesu decyzyjnego w organizacji.

Z przygotowaniem danych do analizy związany jest temat procesów ETL, o organizacji których pisaliśmy wcześniej (link).