Czy hurtownia to
lek na dezintegrację danych?

Artykuły eksperckie | 07.03.2018 | Czas czytania: 5 minut

Dzisiejsze firmy korzystają z wielu wyspecjalizowanych narzędzi informatycznych, realizujących potrzeby biznesowe w konkretnych obszarach działalności. W większości przypadków narzędzia tego typu posiadają pewne możliwości raportowe, zaspokajające podstawowe potrzeby użytkowników końcowych. Problem pojawia się jednak, kiedy konieczne jest zestawienie danych pochodzących z różnych źródeł i zaprezentowanie ich w wygodnej i czytelnej formie. Dodatkowo, przeglądanie danych historycznych w systemie transakcyjnym najczęściej wiążę się z długim czasem oczekiwania na wygenerowanie raportu. Jak zatem radzić sobie w takiej sytuacji? Jak przeciwdziałać chaosowi informacyjnemu w organizacji? Jak przezwyciężać problemy wydajnościowe w systemach transakcyjnych?

Współczesny chaos informacyjny

Każda firma charakteryzuje się specyficznymi, unikalnymi procesami, które wymuszają kompleksowe dopasowanie dostępnych narzędzi informatycznych (tzw. kastomizacja) lub opracowanie własnych narzędzi wspierających ich realizację. Liczba kluczowych narzędzi wykorzystywanych przez przedsiębiorstwa (zwłaszcza te duże) może sięgać nawet kilkunastu czy kilkudziesięciu. W przypadku przedsiębiorstw funkcjonujących na arenie międzynarodowej, ujednolicenie wykorzystywanych systemów stanowi dodatkowy problem, a często jest niemożliwe z uwagi na różne przepisy prawa, wysokie koszty wdrożenia innego systemu czy obawy przed ryzykiem uzależnienia od jednego dostawcy oprogramowania.

Różnorodność systemów źródłowych (tzw. heterogeniczność) powoduje dezintegrację danych biznesowych, wywołujących szum informacyjny, który może ograniczać zdolności decyzyjne organizacji. W dłuższej perspektywie mogą w związku z tym pojawiać się realne straty, wynikające ze złych lub zbyt późnych decyzji. Rozwiązaniem tego typu problemów może być opracowanie hurtowni danych, która będzie stanowić element centralny systemu klasy Business Intelligence.

Wydajnościowa zmora

Systemy transakcyjne, które wspierają zachodzące w danym przedsiębiorstwie procesy, mają za zadanie rejestrację zdarzeń biznesowych. Przykładowo, w przedsiębiorstwie zajmującym się dystrybucją detaliczną, w przypadku każdej transakcji sprzedaży, rejestrowane powinny być informacje dotyczące nowego klienta, płatności, wysyłki, zmiany stanu magazynowego, itd.

Niektóre z systemów transakcyjnych (określanych jako systemy OLTP) posiadają moduły raportowe, dostarczające podstawowe informacje. Niestety równoczesne rejestrowanie zdarzeń biznesowych i raportowanie powoduje problemy wydajnościowe. Wykonywanie złożonych zapytań analitycznych obciąża system bazodanowy i powoduje blokowanie operacji zapisu czy modyfikacji rekordów dla przebiegających procesów. Podstawową techniką optymalizacyjną spotykaną we współczesnych rozwiązaniach IT jest więc separacja środowisk transakcyjnego i raportowego.

Czym jest hurtownia danych?

Hurtownia danych to relacyjna baza danych, przechowująca zintegrowane dane pochodzące z różnych źródeł, w tym z systemów transakcyjnych przedsiębiorstwa. Najczęściej hurtownia danych poświęcona jest konkretnemu procesowi biznesowemu czy obszarowi działania przedsiębiorstwa.

Charakterystyczne dla hurtowni danych jest wydzielenie dwóch typów obiektów. Są to tzw. tabele faktów (miary) oraz wymiary. Tabela faktów zawiera zaistniałe w rzeczywistości biznesowej zdarzenia, a wymiary charakteryzują tę rzeczywistość. Przykładem faktu (miary) może być sprzedaż, wtedy wymiarem będzie m.in.: Czas (np. data sprzedaży), Produkt (dany towar, który został sprzedany), Geografia (np. konkretne miasto, w którym zaszła sprzedaż). Takie wielowymiarowe modelowanie danych pozwala na przeglądanie wartości miar w różnym ujęciu (w różnych wymiarach).

Każda hurtownia danych utworzona jest według określonego schematu, czyli modelu logicznego odzwierciedlającego relacje (połączenia) pomiędzy faktami i wymiarami. Wyróżnić można trzy schematy hurtowni danych: gwiazda, płatek śniegu i konstelacja faktów. Schemat gwiazdy charakteryzuje się tym, że centralną tabelę stanowi tabela faktów, która otoczona jest pojedynczymi wymiarami. Schemat płatka śniegu wygląda podobnie do schematu gwiazdy. Jedyna różnica to taka, że wymiary połączone z tabelą faktów dodatkowo połączone są jeszcze z innymi wymiarami. Ostatnim typem schematu jest schemat konstelacji faktów, który umożliwia przechowywanie różnych rodzajów faktów. Wymiary w tym przypadku są współdzielone przez tabele faktów.

jpro jcommerce Hurtownia-danych 7.03.18 ilustracja1

Hurtownia danych może zostać zastosowana w przedsiębiorstwach działających w różnych branżach, a podstawowym uzasadnieniem jej zastosowania są problemy związane z wydajnością, rozproszeniem i „nadmiarem” danych.

Jak wygląda proces zasilenia hurtowni danymi?

Najprostsza definicja hurtowni danych przedstawia ją jako tematyczną bazę danych, która trwale przechowuje zintegrowane dane opisane wymiarem czasu. „Zintegrowane dane” to słowa kluczowe występujące w tej krótkiej definicji.

jpro jcommerce Hurtownia-danych 7.03.18 ilustracja2

Integracja danych polega na pobraniu konkretnych danych z wielu miejsc, odpowiednim ich przetworzeniu (dopasowanie typów danych, wyczyszczenie) i załadowanie do hurtowni. Sekwencja wymienionych kroków nosi nazwę procesu ETL, będącego akronimem od słów:

  • Extract – ekstrakcja danych, czyli pobranie danych z różnorodnych źródeł, w tym m.in.:

jpro jcommerce Hurtownia-danych 7.03.18 ilustracja3

  • Transform – transformacja danych, czyli przekształcenie pobranych danych w pożądany sposób (dopasowanie do typów danych występujących w hurtowni danych; weryfikacja poprawności i walidacja danych, czyszczenie danych; usuwanie duplikatów; uzupełnianie danych; dodanie kluczy surogatowych);

  • Load – załadowanie danych do docelowej bazy danych, stanowiącej tzw. hurtownię danych;

Hurtownia danych krok po kroku

W procesie wdrożenia hurtowni danych w organizacji można wyróżnić kilka kluczowych kroków:

Krok 1. Analiza

Proces tworzenia hurtowni danych powinien rozpocząć się od gruntownej analizy biznesowej potrzeb organizacji. Zbieranie wymagań jest kluczowym elementem efektywnego wdrożenia hurtowni. Należy zidentyfikować grono odbiorców raportów końcowych i przeprowadzić rozmowy umożliwiające jednoznaczne określenie jakich danych hurtownia powinna dostarczyć i jak często hurtownia powinna być odświeżana.

Krok 2. Utworzenie hurtowni danych

Na podstawie przeprowadzanej analizy można przejść do etapu fizycznej implementacji hurtowni danych, czyli utworzenia niezbędnych tabel wraz z relacjami. Budowa wymiarów i tabel faktów powinna bezpośrednio odpowiadać potrzebom biznesowym.

Krok 3. Budowa procesu ETL (zasilania hurtowni danych)

Na podstawie zidentyfikowanych źródeł danych dla hurtowni należy zaimplementować sposób zasilenia hurtowni danych uwzględniając wszystkie potrzebne przekształcenia.

Krok 4. Zasilenie hurtowni danych

Kiedy proces ETL jest już gotowy, można go uruchomić i zasilić hurtownię danych. Jeżeli wszystko działa poprawnie, to można ustawić automatyczne odświeżanie hurtowni zgodnie z ustalonym w toku analizy harmonogramem zasileń (np. raz dziennie).

Krok 5. Testowanie, kontrola

Bardzo ważnym i końcowym etapem jest sprawdzenie poprawności danych, które są dostępne w hurtowni danych. W testy zaangażowani powinni być użytkownicy końcowi, którzy są w stanie ocenić czy dane odzwierciedlają rzeczywistość.

Pamiętać należy, że wstępnie przeprowadzona analiza może nie być na dalszych etapach wystarczająca. „Apetyt rośnie w miarę jedzenia”, czujny konsultant BI musi być więc w stałym kontakcie z użytkownikami końcowymi, żeby identyfikować i realizować kolejne potrzeby biznesowe. Potrzeby te zwykle w naturalny sposób pojawią się po prezentacji możliwości raportowych na podstawie danych hurtownianych. Dlatego dobrym rozwiązaniem jest przyjęcie zwinnej strategii realizacji projektu, polegającej na iteracyjnym dostarczaniu kolejnej wersji rozwiązania.

Co dalej?

Utworzenie hurtowni danych stanowi doskonały punkt wyjścia, pozwalający na dostarczenie użytkownikom końcowym warstwy analitycznej oraz warstwy raportowania i wizualizacji danych. Niejednokrotnie na podstawie hurtowni danych powstaje konkretny model danych (np. kostka OLAP czy model tabelaryczny), pozwalający na swobodny dostęp do danych za pośrednictwem wygodnego interfejsu, jakim jest tabela przestawna.

Na podstawie danych przechowywanych w hurtowni można także tworzyć alerty, które będą informować pracowników na temat niepożądanych (lub pożądanych) zjawisk, zdefiniowanych na podstawie odchyleń od normy kluczowych wskaźników wydajności przedsiębiorstwa.

Efektywnie wdrożona hurtownia danych to odpowiedź na bolączki średnich i dużych przedsiębiorstw, dotyczących zarządzania dużymi zbiorami danych, które pochodzą z wielu rozproszonych źródeł.

Więcej ciekawych informacji na temat hurtowni danych można odnaleźć w artykułach naukowych:

Libera T., Ziuziański P.: Charakterystyka budowy hurtowni danych i możliwości implementacji wymiarów różnego typu, Zeszyt Naukowy 43 (Informatyka), Wyższa Szkoła Zarządzania i Bankowości w Krakowie, Kraków 2017, s. 11-32.

Furmankiewicz M., Ziuziański P.: Wdrażanie kokpitu menedżerskiego w ramach BI w organizacji, [w:] A. Donigiewicz (red.), Przegląd teleinformatyczny, nr 4 (37), Instytut Teleinformatyki i Automatyki Wojskowej Akademii Technicznej im. Jarosława Dąbrowskiego, Warszawa 2014, s. 3-16.

Autorem wpisu jest

Piotr Ziuziański, JCommerce

Specjalista Business Intelligence

Zajmuje się technologiami Business Intelligence firmy Microsoft – począwszy od etapu modelowania hurtowni danych, projektowania i wdrażania procesów ETL, po implementację modelu danych i wdrożenie wizualnej warstwy raportowej. Autor bloga poświęconego tematyce rozwiązań klasy Business Intelligence www.msbifun.pl.

Komentarze

  • Aktualnie brak komentarzy.

Skontaktuj się z nami