Dobre dane to dobre decyzje

Zapewnienie jak najlepszej jakości danych może zagwarantować poprawne przeprowadzenie procesu ETL.

Zapewnienie jak najlepszej jakości danych może zagwarantować poprawne przeprowadzenie procesu ETL.

Sukces prowadzonego biznesu zależy od jakości podejmowanych decyzji. Te zaś bezpośrednio zależą od jakości danych, którymi podjęcie decyzji jest wspomagane. Zapewnienie jak najlepszej jakości danych może zagwarantować m.in. proces ETL (Extract, Transform & Load). ETL pozwala operować tylko na jednej wersji prawdziwych danych.

Dobre dane to dobre decyzje

Problem z danymi

Wszystkie firmy wiedzą, że w ich sieci znajduje się mnóstwo wartościowych danych, które muszą być przenoszone z jednego miejsca do drugiego. Jedynym problemem jest fakt, że dane te leżą w wielu heterogenicznych systemach, a przez to - funkcjonują w wielu formatach. "Systemy, które pozwalają na ręczne wprowadzanie informacji, zawsze będą umożliwiały wprowadzenie błędnych danych" - mówi Konrad Mokrzański, odpowiedzialny za wspomaganie sprzedaży systemów BI w Oracle Polska. "Zdarzają się też błędy programistyczne lub awarie systemu, np. wyłączenie systemu w trakcie wprowadzania danych do rekordu. Mechanizmy dzisiejszych baz danych są na tyle funkcjonalne, że potrafią wykryć takie przypadki, nie tylko na etapie wprowadzania danych, lecz także w warstwie bazy danych. Zawsze jednak trzeba mieć pod ręką narzędzie, które będzie w stanie przeanalizować już zgromadzone przez nas dane" - tłumaczy. Aby rozwiązać ten problem, firmy korzystają właśnie z narzędzi ETL, które umożliwiają odczyt danych z wielu źródeł, oczyszczenie ich i odpowiednie sformatowanie, a następnie wprowadzenie do docelowego repozytorium. Dane przetwarzane w procesie ETL mogą pochodzić z wielu miejsc - aplikacji mainframe, aplikacji ERP, narzędzi CRM, plików, arkuszy kalkulacyjnych czy nawet wiadomości e-mail.

Pobieranie danych

Pierwszą częścią procesu ETL jest pobranie danych z systemów źródłowych. Najpopularniejsze formaty danych źródłowych, to relacyjne bazy danych i pliki, ale często zdarzają się także struktury nierelacyjnych baz danych, takie jak treści rozmów z komunikatorów. Pobranie danych przygotowuje je do procesu przetworzenia i oczyszczenia. Na tym etapie są także wstępnie kontrolowane pod względem spełnienia wymogów określonej struktury. Jeśli tej kontroli nie przejdą pomyślnie, system odmawia pobrania danych.

Zdaniem Konrada Mokrzańskiego, często zdarza się, że - gdy dane pochodzą z jednego źródła - rozkład błędnych danych jest powtarzalny i nie trzeba analizować całego repozytorium, aby dowiedzieć się, jak bardzo są one niestrukturalne. Czasami wystarczy przeanalizować pewien wycinek i na nim zamodelować reguły czyszczenia, formatowania i przekształcania danych.

"Sam proces ETL odbywa się automatycznie, ale musi być cały czas kontrolowany przez ludzi" - stwierdza Andrzej Frydecki, architekt rozwiązań biznesowych w SAP. Jego zdaniem, odpowiednie służby powinny utrzymywać w ryzach formalne podejście do organizacji pracy. "Powinny istnieć też zespoły, które rozumieją dane i zależności między nimi na poziomie operacyjnym, a także są w stanie dokonać odpowiedniej weryfikacji merytorycznej. Zatem główna odpowiedzialność leży w obszarach biznesowych" - ocenia Andrzej Frydecki.

Proces ETL

Po wydobyciu ze źródłowych systemów, dane są przetwarzane lub modyfikowane, aby w poprawnej postaci mogły być wysłane do docelowego repozytorium. Istnieje wiele metod transformacji danych. Mogą one wymagać tylko przeformatowania, ale większość operacji ETL uwzględnia także eliminację duplikatów i zapewnienie spójności danych. Jednym z zadań tego oprogramowania jest sprawdzenie poszczególnych pól z danymi i zastosowanie ról konwertujących treść, zgodnie z wymaganiami docelowej aplikacji lub repozytorium.

Najprostszym przykładem czyszczenia danych może być pole "płeć", gdzie pozycja "kobieta" może być opisana na trzy sposoby - K, kobieta lub binarnie (0 lub 1). Oprogramowanie powinno rozpoznać każdy z tych zapisów i przekształcić, tam gdzie trzeba, na zapis zgodny z wymaganiami docelowej bazy danych. W procesie ETL powinna następować też standaryzacja zapisu imion, nazwisk, adresów, weryfikacja poprawności wpisania numerów PESEL oraz numerów telefonów. Wiele rekordów w procesie czyszczenia danych może okazać się niezgodnych z wymaganiami, ale jednocześnie na tyle niespójnych, że system nie poradzi sobie z nimi. Wówczas - zależnie od konstrukcji systemu i wymogów biznesowych - możemy być poproszeni o ich ręczną korektę. W procesie czyszczenia takie dane z reguły są przenoszone do oddzielnej struktury, gdzie podlegają obróbce przez osoby rozumiejące treść przetwarzanych informacji.

Przy projektowaniu procesu czyszczenia danych trzeba bardzo uważać. Raz przypisany numer klientowi, fakturze, transakcji czy innemu zdarzeniu, występuje w postaci odniesień w wielu innych miejscach. Nierozważna zmiana może spowodować naruszenie spójności całej bazy danych. Jeżeli zmiana jest konieczna, to należy dopilnować, aby były zmienione także we wszystkich miejscach, gdzie występują odniesienia do danego rekordu.

W procesie ładowania dane są przenoszone do punktu docelowego, zwykle hurtowni danych. W zależności od wymagań organizacji, proces ten odbywa się różnie. Niektóre hurtownie danych uzupełniają swoje dane raz w tygodniu (nadpisując stare wersje), podczas gdy inne potrzebują zabezpieczać dane co godzinę, zachowując jednocześnie ich stare wersje. Ponieważ proces ładowania wpływa bezpośrednio na treść informacji przechowywanych w bazie danych, należy dopilnować, aby został zrealizowany z przyjętymi wcześniej zasadami, co będzie przypieczętowaniem próby dopilnowania utrzymania jak najwyższej jakości danych w całym procesie ETL.

Wyzwania

Proces ETL może być dość skomplikowany, a w trakcie jego trwania może pojawić się wiele problemów operacyjnych, z reguły wynikających z nieprawidłowo zaprojektowanego systemu ETL. Zakres wartości danych lub ich jakości w systemach operacyjnych może być poza wyobrażeniami projektantów systemu w momencie przygotowywania zasad określania poprawności i transformacji danych. Podczas dokonywania analiz eksperci radzą już wcześniej zapoznać się z jakością danych wejściowych i precyzyjnie dopasować do niej wszystkie reguły. Ułatwi to późniejsze usuwanie problemów.

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200