Spis treści
- Co to jest Data Warehouse?
- Korzyści dla firmy płynące z posiadania hurtowni danych
- Data Warehouse – jak to działa? Budowa hurtowni danych
- Bazy danych a hurtownia danych – OLTP i OLAP – systemy przechowywania danych
- Jak działa hurtownia danych w chmurze
- Hurtownia danych a jezioro danych – dane z różnych źródeł
- Dla kogo hurtownia, a dla kogo jezioro danych?
- Nagranie z meetupu „Biznes oparty na danych w chmurze”
Czy wiesz, jakie dane posiada Twoje przedsiębiorstwo? Jakie ślady cyfrowe zostawiają klienci serwisu internetowego? Co znajduje się w systemach CRM, firmowych arkuszach kalkulacyjnych, podpiętych do strony narzędziach analitycznych?
Zapewne wiesz. Idę o zakład, że Ty lub Twoi współpracownicy monitorujecie te dane, prowadzicie analizę i kierujecie się liczbami podczas podejmowania decyzji biznesowych. Ale prowadzicie analizę oddzielonych od siebie obszarów czy patrzycie na dane firmowe jako na pełną zależności całość?
Przykład. Firma retailowa jest obecna w kilku krajach europejskich. Posiada oddziały stacjonarnych, serwis e-commerce, klienci mogą robić też zakupy przez aplikację mobilną. Firma planuje wejść na nowy rynek. Chcąc opracować strategię uwzględniającą akcje, które sprawdziły się w innych krajach, dobrze byłoby zestawić dane z wielu baz – między innymi informacje o kosztach, sprzedaży stacjonarnej, sprzedaży online, dane o prowadzonych kampaniach marketingowych czy reakcjach użytkowników na akcje promocyjne. Manualna analiza każdego elementu z osobna zajmie dużo czasu, może też doprowadzić do wyciągnięcia niewłaściwych wniosków.
Te dane, pochodzące z różnych źródeł, można zestawić w jednym systemie – w hurtowni danych, która pozwoli przeprowadzić analizę w ciągu kilku minut i przedstawić wyniki na czytelnym dashboardzie.
Co to jest Data Warehouse?
Data Warehouse (hurtownia danych) to system analityczny, który umożliwia prowadzenie kompleksowej analizy danych pochodzących z różnych źródeł. Wspiera procesy Business Intelligence, które polegają na wydobywaniu spośród danych istotnych informacji potrzebnych do świadomego podejmowania decyzji biznesowych. System pobiera dane z różnych baz, oczyszcza i ujednolica. W hurtowni danych przechowywane są dane bieżące, jak też dane historyczne. Hurtownia nie ma wpływu na funkcjonowanie używanych systemów bazodanowych ani na treść danych – informacje są do warehouse ekstraktowane, a następnie dostępne tylko do wglądu (nie można poddać ich modyfikacji). Dane wykorzystuje się do generowania raportów czy tworzenia predykcji, a wyniki można przedstawić na graficznych wizualizacjach.
Korzyści dla firmy płynące z posiadania hurtowni danych
Wgląd w dane. Spojrzenie na dane z szerszej perspektywy pozwala wyszukać zależności pomiędzy obszarami oraz wytypować trendy dzięki analizie danych historycznych. Hurtownia pozwala też analizować wycinki danych i tworzyć szczegółowe raporty.
Możliwość prognozowania. Hurtownię danych można wykorzystać jako element systemu DSS (decision support system), w którym prowadzone są symulacje scenariuszy biznesowych z wykorzystaniem modeli Machine Learningu.
Centralizacja danych. Hurtownia pozwala zebrać w jednym miejscu wszystkie dane firmowe, dotychczas rozproszone pomiędzy wieloma bazami danych, zewnętrznymi systemami czy arkuszami kalkulacyjnymi.
Archiwizacja. W hurtowni danych przechowuje się dane najnowsze, jak też dane historyczne. Wydajny system analizy danych umożliwia przechowywanie petabajtów informacji.
Wydajność pracy. Pracownicy firmy posiadającej hurtownię danych mają wygodny, niemal natychmiastowy dostęp do aktualnych informacji ze swojego obszaru, jak również z innych działów. Skrócenie ścieżki dotarcia do informacji i możliwość wizualnej prezentacji danych pozwala sprawniej wykonywać codzienne zadania oraz wyszukiwać możliwości optymalizacji procesów.
Data Warehouse – jak to działa? Budowa hurtowni danych
Hurtownia danych składa się z czterech elementów:
- źródła danych,
- oprogramowania ELT,
- właściwej hurtowni,
- aplikacji analitycznych.
W pierwszej kolejności dane są pobierane z zewnętrznych źródeł. To może być relacyjna lub nierelacyjna baza danych, Google Analytics, system CRM czy firmowe arkusze kalkulacyjne.
Następnie są ujednolicane – przetwarzane, czyszczone, duplikaty usuwane, sprowadzane do tego samego formatu. Takie zintegrowane dane są przesyłane do właściwej hurtowni – aplikacji, która przechowuje dane i pozwala prowadzić analitykę. Ten proces pobierania, przetwarzania i przesyłania do hurtowni jest nazywany ETL – od angielskich nazw procesów extract, transform, load.
W hurtowni przechowywane są ujednolicone dane – zarówno bieżące, jak historyczne. To tutaj odbywa się analiza w odpowiedzi na zapytanie przesłane przez użytkownika.
Wyniki analizy mogą zostać następnie przedstawione za pomocą programów wizualizacji danych lub przesłane do aplikacji BI.
Bazy danych a hurtownia danych – OLTP i OLAP – systemy przechowywania danych
Czym różni się hurtownia danych od bazy danych? Te dwa systemy, mimo że pracują z danymi, pełnią zupełnie inne role. W dużym skrócie, bazy danych służą do szybkiego, bieżącego przetwarzania niewielkich wycinków danych, kiedy celem hurtowni jest prowadzenie kompleksowej analityki na podstawie ogromnych zbiorów informacji.
OLTP – on-line transactional processing
W przypadku baz danych mówimy o OLTP (on-line transactional processing) – rodzaju przetwarzania danych, który polega na jednoczesnym wykonywaniu wielu transakcji, na przykład w bankowości internetowej, portalach e-commerce czy serwisach rezerwacji online. Bazy danych posiadają informacje na temat konkretnego wycinka biznesu – na przykład na temat stanu produktów w sklepie internetowym. Na serwisie e-commerce codziennie zakupy robią setki, tysiące klientów – a baza danych otrzymuje setki czy tysiące zapytań i aktualizacji. W bazie danych przechowywane są najnowsze informacje, bo jej wydajność znacznie by spadła, gdyby system miał utrzymywać terabajty historycznych danych (kopię zapasową przechowuje się w innej lokalizacji). Środowiska OLTP dobrze przetwarzają duże ilości prostych zapytań, ale nie są zdolne do prowadzenia głębokiej analityki – są za to dobrym źródłem informacji, które jest w stanie przetworzyć hurtownia danych.
Przykłady zastosowań OLTP:
- serwis e-commerce tworzący zamówienie na sprzedany produkt,
- portal linii lotniczych prowadzący rezerwację online,
- system rejestracji pacjenta w szpitalu,
- bank dodający do rachunku transakcję wypłaty gotówki z bankomatu.
OLAP – on-line analytical processing
Hurtownia danych to system analityczny OLAP (on-line analytical processing). To środowisko, które, w odróżnieniu od OLTP, jest dedykowane obsłudze rzadszych, bardziej rozbudowanych zapytań na dużej ilości danych. Prędkość realizacji nie jest aż tak kluczowa, dlatego analiza danych prowadzona w hurtowni może zająć od kilku sekund do nawet kilku godzin. OLAP gromadzi dane z różnych źródeł i przetwarza je podczas procesu ELT. Przechowuje też dane historyczne w celu prowadzenia kompleksowej analizy i raportowania. Dane, które trafią do hurtowni nie mogą zostać poddane modyfikacji – są dostępne jedynie do wglądu.
Przykłady zastosowań OLAP:
- podział klientów na grupy z uwzględnieniem dotychczasowych interakcji z firmą w celu zapewnienia dopasowanych treści i promocji,
- analiza skuteczności działań marketingowych wśród poszczególnych grup odbiorców,
- przewidywanie prawdopodobieństwa rezygnacji z usług na podstawie danych o sprzedaży w ostatnich latach,
- analiza trendów, prognozowanie popytu i podaży w obszarze działalności firmy.
Jak działa hurtownia danych w chmurze
Hurtownię danych można zaprojektować i wdrożyć na własnej infrastrukturze, ale można też w chmurze publicznej, posługując się zestawem gotowych, skalowalnych i zarządzanych usług.
Hurtownię w chmurze można zbudować jako aplikację niemal bezobsługową, która samodzielnie ekstrahuje dane z różnych źródeł, ujednolica je i przygotowuje do analizy. Ponadto procesy rezerwowania zasobów, skalowania, aktualizacji czy optymalizacji wykonują się automatycznie. Nie ma konieczności ingerencji użytkownika, dzięki czemu czas, który pracownicy poświęciliby na utrzymanie systemu, mogą poświęcić na prowadzenie właściwej analizy. Hurtownię danych w chmurze można rozbudować też o usługi Machine Learning, by umożliwić prowadzenie predykcji czy symulacji scenariuszy biznesowych.
Koszty posiadania hurtowni danych w chmurze są elastyczne, niekiedy też dużo niższe niż w przypadku posiadania lokalnego systemu. Do braku kosztów utrzymania fizycznej infrastruktury czy prowadzenia prac konserwacyjnych można doliczyć też zniżki od firmy partnerskiej dostawcy usług chmurowych. FOTC, partner Google Cloud – jednej z wiodących chmur publicznych w kwestii zaawansowanej analityki – oferuje voucher do wykorzystania na dowolne usługi GCP, zniżki dla swoich klientów oraz możliwość pokrycia części kosztów budowy Proof of Concept hurtowni danych w chmurze.
Hurtownia danych a jezioro danych – dane z różnych źródeł
Hurtownia danych (data warehouse) jest systemem analitycznym, który pozwala interpretować dane z określonych źródeł, przykładowo działów w organizacji (HR, CRM czy ERP). Zanim konkretne pliki trafią do właściwej usługi hurtowni danych są porządkowane, czyszczone i agregowane za pomocą narzędzi ETL (skrót od ang. extract, transform, load). Hurtownia danych przechowuje zarówno bieżące, jak i archiwalne dane.
Jezioro danych (data lake) to repozytorium, do którego trafiają surowe dane z różnych źródeł i nie są poddawane procesowi porządkowania. Nie ma praktycznie żadnych ograniczeń w zakresie rodzajów przechowywanych w nim informacji. W jeziorze danych można zatem przechowywać nieustrukturyzowane dane, które z różnych względów nie trafiły do hurtowni danych (np. pliki tekstowe, logi ze stron WWW czy odczyty czujników IoT).
Przetwarzanie ETL a ELT
W hurtowni danych stosuje się narzędzia typu ETL (Extract, Transform, Load) natomiast w jeziorach danych – narzędzia typu ELT (Extract, Load, Transform). Proces ETL zakłada najpierw pozyskanie danych ze źródła (extract), następnie ich przetworzenie (transform), a na końcu zapisanie we właściwej hurtowni danych (load).
W procesie ELT dane są najpierw pozyskiwane (extract), następnie są zapisywane w jeziorze danych (load), a dopiero na końcu poddaje się je przetwarzaniu (transform). Ostatni etap odbywa się już poza jeziorem danych, w zewnętrznej aplikacji służącej do zaawansowanej analizy danych.
Dla kogo hurtownia, a dla kogo jezioro danych?
Podstawowa różnica między hurtownią danych i jeziorem danych sprowadza się więc do zakresu przechowywanych danych: pierwsza usługa gromadzi je wyłącznie w formie uporządkowanej, ograniczając się do wybranych źródeł. Druga zaś może przechowywać dane ze wszystkich źródeł, niezależnie od tego czy są to informacje posiadające jakąkolwiek strukturę.
Jezioro danych sprawdzi się lepiej, jeśli potrzebujesz prowadzić bardziej zaawansowane analizy na surowych danych (np. analizę statystyczną czy modelowanie predykcyjne). Hurtownia danych przyda się natomiast lepiej do działań operacyjnych, związanych z bieżącą działalnością danej organizacji.
Nagranie z meetupu „Biznes oparty na danych w chmurze”
Zorganizowaliśmy bezpłatne wydarzenie online dla specjalistów, którzy chcą wykorzystać potencjał danych firmowych – poprawić wyniki biznesowe, wyciągać rzetelne wnioski przy pomocy narzędzi chmurowych i podejmować świadome, poparte liczbami decyzje.
Podczas meetupu praktyczną wiedzą podzielili się trzej specjaliści ds. analizy danych:
- Stanisław Magierski, Customer Engineer w Google Cloud, który opowiedział, jak wykorzystać potencjał danych, zarządzać nimi i skalować analitykę biznesową,
- Marcin Kolenda, Chief Analyst w Alterdata.io, podzielił się doświadczeniami z użycia usługi BigQuery ML podczas prelekcji „Budowa hurtowni danych na GCP – okiem praktyka”,
- Tomasz Karsznia, Data Engineer w FOTC, zaprezentował sposób analizy logów przy użyciu BigQuery oraz Data Studio na przykładzie danych z pakietu aplikacji biznesowych Google Workspace.
Nagranie z meetupu można obejrzeć po zapisaniu się poprzez formularz na stronie: “Biznes oparty na danych w chmurze”.
Zobacz też: