Hurtownie danych — czym są i co je różni od baz danych?
Ludzi ciekawych i dociekliwych nigdy nie brakuje, a w nauce i biznesie szczególnie. Gdy w dziale handlowym ktoś zapyta „O ile zmniejszyła się różnica w wartości sprzedaży kostiumów plażowych pomiędzy województwem pomorskim a podkarpackim w II kwartale poprzedniego roku i jak się zmieniała ta różnica na przestrzeni ostatnich pięciu lat?” – to konia z rzędem temu, kto szybko udzieli takiej odpowiedzi na podstawie danych z systemu ERP. Z tego właśnie powodu dla ludzi zainteresowanych analizami biznesowymi stworzono cały stos technologiczny narzędzi i rozwiązań począwszy od systemów przygotowujących i ładujących dane do hurtowni, składnic i magazynów danych operacyjnych, poprzez systemy Big Data i Business Intelligence (BI) aż do autonomicznych hurtowni danych opierających się na sztucznej inteligencji i głębokim uczeniu maszynowym.
Czym jest hurtownia danych?
William Harvey Inmon, twórca koncepcji hurtowni danych[i], dość ogólnie stwierdził, że jest to zbiór zintegrowanych, nieulotnych, ukierunkowanych baz danych, wykorzystywanych w systemach wspomagania decyzji. Mimo upływu trzydziestu lat i rozwoju technologii informatycznych taka definicja hurtowni danych jest nadal trafna i adekwatna. Trzeba jednak pamiętać, że hurtownie danych to także skomplikowane przedsięwzięcia organizacyjne, wymagające czasu i sporych inwestycji w sprzęt i oprogramowanie. Przyglądając się im bliżej widać, że są one miejscem, gdzie się centralizuje i konsoliduje bardzo dużo danych historycznych pochodzących z wielu źródeł takich, jak aplikacje transakcyjne, dziedzinowe bazy danych, pliki dzienników aplikacji, arkusze kalkulacyjne, czy choćby archiwalnych baz danych systemów działających kiedyś w firmie. Hurtownie danych tworzy się po to, aby dużą ilość danych zamienić w użyteczne informacje służące podejmowaniu szybkich i trafnych decyzji biznesowych. Co ważne, działająca w organizacji hurtownia danych nie wpływa na funkcjonowanie aktualnie używanych systemów korzystających z baz danych ani na zapisy w tych bazach. Dane załadowane do hurtowni są tylko do odczytu, nie można ich modyfikować. Od strony konstrukcyjnej, hurtownia danych składa się z następujących elementów:
- Relacyjnej bazy danych zaprojektowanej do analitycznego przetwarzania danych OLAP (On-Line Analytical Processing). Pozwala ono na wykonywanie zapytań obejmujących bardzo dużo albo wszystkie rekordy z takiej bazy danych. Nie jest wymagany jakiś szczególnie krótki czas przetwarzania danych, ważniejsze wydaje się zapewnienie odpowiedniego miejsca w pamięciach masowych, bo taka baza często zawiera olbrzymie ilości danych historycznych. Przeciętna baza danych w hurtowni przechowuje ok. 10 TB danych[ii].
- Narzędzi do wyodrębniania, ładowania i transformacji danych ETL (Extract-Transform-Load), które pozwalają na pobieranie danych historycznych ze wskazanych źródeł, ich przekształcanie do zadanego formatu i zapisywanie w bazie danych hurtowni. Wbrew pozorom jest to jeden z kluczowych składników hurtowni, bo to od wydajnego i elastycznego działania mechanizmów ETL zależy przydatność i efektywności działania całego rozwiązania. Zbyt wolny, źle wyskalowany ETL tworzy czasami tak wąskie gardło w przepływie danych, że stawia to pod znakiem zapytania sensowność całego przedsięwzięcia.
- Narzędzi i funkcji do analizy statystycznej, raportowania, eksploracji danych i ich wizualizacji dla użytkowników z kadry zarządczej i komórek analitycznych oraz controllingowych. W nowszych rozwiązaniach wykorzystuje się cały zestaw algorytmów AI (Artifical Intelligence), ML (Machine Learning), analizy grafów, funkcji przestrzennych, co w sumie daje szybki wgląd w korelacje w zbiorach danych o dowolnej wielkości. Dzięki nim nawet bardzo skomplikowane zapytania ad-hoc są wykonywane bardzo szybko, a walory wizualne prezentacji danych pozwalają na dogłębne zrozumienie problemów i ułatwiają podejmowanie decyzji.
Czym się różni hurtownia danych od bazy danych?
Mimo, że hurtownie danych także korzystają z baz danych, różnice pomiędzy nimi są fundamentalne.
- Z reguły zwykła relacyjna baza danych w systemie wspomagającym procesy operacyjne w firmie przechowuje głównie aktualne dane o jej stanie bieżącym. W ogólności wszystkim zależy, aby w takich bazach mieć dane najbardziej aktualne. Natomiast w hurtowni danych znajdą się dane sprzed wielu lat, czasami miesięcy albo dni. Doładowywanie nowych danych odbywa się co pewien czas i w ustalonym zakresie.
- Systemy do zarządzania bazami danych zostały zoptymalizowane tak, aby szybko dodawać, wyszukiwać, modyfikować bądź usuwać jednorazowo niewielkie porcje danych lub pojedyncze rekordy, ale za to w maksymalnie krótkim czasie, z reguły poniżej 10 ms. W hurtowni dane są w zasadzie tylko dodawane, a usuwa się je tylko w szczególnych przypadkach nieprawidłowego pobrania ze źródeł lub po ich znacznej dezaktualizacji. Czas odpowiedzi na skonstruowane pytania bywa liczony w minutach, godzinach, a czasami bywa, że i w dniach.
- Relacyjne bazy danych zapewniają obsługę transakcji, czyli potrafią zintegrować kilka operacji na danych w jednej niepodzielnej całości i zapewnić spójność danych. W takiej bazie nie wykonuje się złożonych obliczeń, za to zyskuje się na niezawodności i odporności na awarie. Hurtownia danych to zupełnie inna liga – złożoność wieloetapowych analiz i modeli statystycznych wymaga zdolności do wykonywania skomplikowanych obliczeń i przetwarzania dużych ilości rekordów. Bezawaryjność nie jest najważniejsza – usterki, czy awarie wydłużą czas przygotowania raportów, ale nie sparaliżują działalności operacyjnej firmy.
- Co prawda ocena wielkości bazy danych zależy od tego, do czego ją porównać, ale powszechnie przyjmuje się, że hurtownie danych są wielokrotnie większe do zwykłych baz danych, co często pociąga za sobą zwiększone zapotrzebowanie na pamięć masową.
- Istotnym czynnikiem różnicującym bazy danych i hurtownie danych jest również ich zawartość, a to wymaga nieco szerszego omówienia. W znormalizowanych tabelach relacyjnych baz danych można przechowywać praktycznie dowolną zawartość – od prostych danych binarnych, liczbowych, tekstów aż po dowolne pliki. W przypadku hurtowni danych większość informacji przechowuje się w wielowymiarowych kostkach zawierających fakty, czyli te wielkości, które będą analizowana przez użytkowników, np. sprzedaż, koszty, stany magazynowe itp. Fakty opisywane są wymiarami i miarami. Wymiar to z reguły cecha opisująca dany fakt, która wiąże się z innymi obiektami w operacyjnym modelu firmy np. klientami, datami, miejscami, produktami, czy grupami produktów. Z kolei wymiary mają swoje atrybuty, czyli takie cechy, które zawierają dodatkowe informacje na temat faktu. Na przykład do wymiaru daty można przydzielić atrybuty miesiąca, kwartału, czy roku. Wymiar klienta można opisać atrybutami takimi, jak nazwisko, region zamieszkania, miejscowość, czy wielkość miejscowości zamieszkania. Wszystko zależy od tego, co firma planuje analizować. Ostatni element to miara, czyli wartość liczbowa przypisana do danego faktu, np. wartość sprzedaży, liczba sprzedanych przedmiotów itp.
- W hurtowni danych znajdują się dodatkowo metadane opisujące definicje, znaczenie i pochodzenie danych oraz identyfikują zależności pomiędzy nimi w obrębie hurtowni danych i z systemami źródłowymi. Do tego dochodzą wstępne podsumowania faktów w zaprojektowanym zakresie.
Jakie są zalety hurtowni danych i jakie mają zastosowanie?
Organizacja danych w kostkach wielowymiarowych, gdzie dane są już zagregowane i podliczone zapewnia hurtowniom danych olbrzymią przewagę nad tradycyjnymi bazami danych. Zamiast przeglądać wszystkie tabele i rekordy, co czasami oznacza przetwarzanie terabajtowych baz danych, system sięga do wstępnie przetworzonego i relatywnie niewielkiego zbioru danych i dużo szybciej uzyskuje odpowiedź na zadane analityczne zapytanie.
Na zwiększenie efektywności działania całej hurtowni danych wpływa także jej podział na Data Marts, czyli hurtownie tematyczne. Tworzą je wydzielone i wstępnie przetworzone podzbiory danych, które są przeznaczone do konkretnych typów analiz. Mając w ręku wyniki analiz, można już inaczej spojrzeć na biznes – szybciej i łatwiej podejmuje się wiele decyzji. Z reguły przyczyny problemów są głęboko ukryte w liczbach i korelacjach pomiędzy nimi – to właśnie hurtownie danych w rękach sprawnych menedżerów ds. controllingu są w stanie wyłuskać istotne dane i informacje i wykryć np. przyczyny przechodzenia klientów do konkurencji. W bankowości hurtownie danych pomagają wykrywać nadużycia i oszustwa np. w transakcjach kartami kredytowymi. W sektorze telekomunikacyjnym hurtownie danych są jednocześnie archiwum przechowującym przez ustawowy czas dane bilingowe i jednocześnie źródłem informacji historycznych poszczególnych klientów.
Posiadanie hurtowni danych znacząco odciąża systemy transakcyjne obsługujące bieżącą działalność firmy. Zbędne okazuje się wykonywanie w nich skomplikowanych raportów, które zużywa zasoby i znacząco obniża szybkość działania aplikacji. Przeniesienie takich operacji do hurtowni danych usuwa takie wąskie gardło i poprawia efektywność całej firmy.
Możliwości i korzyści biznesowe wynikające z hurtowni danych
Hurtownie danych są jednym ze składników większego rozwiązania klasy DSS (Decision Support System), które bazując na danych historycznych są w stanie tworzyć prognozy i symulacje biznesowe z wykorzystaniem algorytmów ML. W hurtowni danych gromadzi się w jednym miejscu dane rozproszone po wielu źródłach, co zwiększa trafność przewidywań. Na dodatek taka centralizacja zwiększa wydajność analityków – dzięki Data Marts mają oni natychmiastowy dostęp do wybranych obszarów biznesowych, co w połączeniu z krótką ścieżką docierania do wszystkich danych źródłowych i rozbudowanymi narzędziami do wizualizacji danych, pozwala na sprawne wyszukiwanie sposobów na optymalizację procesów biznesowych w całej organizacji.
Hurtownie danych – zastosowanie w analityce danych
Współczesny model hurtowni danych stawia na autonomiczność, wykorzystanie technologii chmurowych, ML i AI. Dzięki temu komórki analityczne i controllingowe mogą się skupić na meritum problemów, bez oglądania się na zarządzanie danymi, instalację, konfigurację, czy tworzenie zapytań. Po połączeniu z wydajnymi i zaawansowanymi rozwiązaniami do wizualizacji danych takimi, jak choćby Tableau[iii], pozwala analizować praktycznie wszystko. W ciągu kilku godzin można wprowadzić informacje o sprzedaży biletów kolejowych, po kolejnych kilkunastu minutach mieć zwizualizowaną rentowność poszczególnych połączeń, regionów, obciążenia linii na przestrzeni roku, a to już pozwala wyciągać daleko idące wnioski organizacyjne i inwestycyjne, czy planować akcje promocyjne.
[i] https://pl.wikipedia.org/wiki/Bill_Inmon
[ii] https://edu.pjwstk.edu.pl/wyklady/hur/scb/wyklad1/w1.htm
[iii] https://newdatalabs.com/5-hitow-tableau-2020-3/
Porozmawiajmy!
a my pomożemy Ci wdrożyć najnowsze rozwiązania!