Hurtownie danych to specjalnie przygotowane bazy danych na potrzeby raportowania. Jest kilka zasadniczych powodów stosowania ich:
- Optymalizacja dostarczania raportów
- Połączenie danych z różnych źródeł (różne bazy, pliki, API)
- Integracja danych – zapewnia spójność danych z różnych źródeł
Głównymi korzyścią zastosowania hurtowni danych w Twoim biznesie jest możliwość analizowania dużych (często zagregowanych) ilości danych. Analizy te wspomagają podejmowanie decyzji biznesowych.
William Inmon uważany za twórcę hurtowni danych wyróżnia cztery unikatowe cechy/właściwości hurtowni danych, należą do nich:
- Przedmiotowość – zastosowanie hurtowni danych umożliwia analizowanie funkcjonalnych obszarów biznesu np. sprzedaż, produkcja, realizacja procesów magazynowych
- Integracja – zastosowanie hurtowni danych umożliwia zachowanie spójności danych pochodzących z różnych źródeł
- Trwałość – dane zgromadzone w hurtowni danych są stabilne i niezmienne w czasie
- Zmienność w czasie – dane zawarte w hurtowni uwzględniają ich zmiany zachodzące w czasie
Dobrze zaprojektowana hurtownia danych umożliwia bardzo szybką i wysoko przepustowe przetwarzanie zapytań raportowych. Za pomocą odpowiednich zapytań jest możliwość redukowania czasu odpowiedzi na zapytania zarówno szczegółowe, jak i zagregowane. Hurtownia danych w rozproszonych, wieloźródłowych systemach danych jest doskonałą podstawą systemów raportowych, business intelligence. Dzięki niej możliwe jest dostarczanie użytkownikom raportów, pulpitów nawigacyjnych, dashboardów i innych interfejsów.
Jakie technologie/umiejętności są wymagane do pracy z hurtowniami danych?
Podstawowe umiejętności wymagane do budowy hurtowni danych to:
- identyfikacja zależności pomiędzy danymi zwłaszcza w przypadku danych wieloźródłowych
- średnio zaawansowana umiejętności tworzenia zapytań SQL, głównie SELECTów
- podstawowa wiedza z zakresu administracji bazami danych (tworzenie indesków, backupów, vacum’ów itp.)
- przy tworzeniu bardziej zaawansowanych hurtowni pobierających dane z API, wymagana wiedza dotycząca komunikacji API REST oraz SOAP
Zastosowanie hurtowni danych może być dość szerokie. W firmach handlowych może to być np. połączenie danych w raportach:
- CRM + ERP + system magazynowy WMS
- systemów handlowych oraz systemów analityki web Google Analytics
- z platform ecommerce oraz systemu sprzedażowego
- z plików od dostawców usług np. DPD i powiązanie ich z dokumentami sprzedażowymi, dzięki temu możliwe jest dokładne badanie rentowności
Architektura hurtowni
Do najbardziej typowych architektur tworzenia hurtowni danych należą:
- prosta – struktura wszystkich hurtowni danych jest dość podobna. Przechowuje ona metadane, dane podsumowujące i dane nieprzetworzone. Repozytorium zasilane jest z baz danych systemów działających w przedsiębiorstwie na jednym końcu i dają dostęp dla użytkowników końcowych na drugim końcu. Pomiędzy realizowane są analizy i transformacje niezbędna do prawidłowego przygotowania raportów.
- prosta z obszarem pomostowym – ta architektura dodaje dodatkowy krok przed zasileniem hurtowni dane są wstępnie przetwarzane i “oczyszczane” ze zbędnych informacji
- piasta-szprychy – polega na dodaniu dodatkowych danych pomiędzy centralnym repozytorium, a użytkownikami końcowymi. Daje to możliwość obsługi różnych pionów biznesowych. Po uzupełnieniu danych przez użytkowników dane trafiają do odpowiedniej składnicy danych
- obszary izolowane – obszary izolowane tzw. piaskownice, sanbox’y to prywatne, bezpieczne obszary przeznaczone do “prywatnych” / indywidualnych analiz dla wybranego użytkownika lub grup użytkowników. Takie obszary są najczęściej indywidualnie przygotowywane dla na potrzeby konkretnych użytkowników.
Projektowanie hurtowni danych
- Ustalenie interesariuszy – to odpowiedź na pytanie, kto i w jakim zakresie będzie korzystał z hurtowni. Ustalenie zakresu przyszłych raportów i sposobu korzystania z danych.
- Serwer i baza danych – to podstawowa operacja, od której trzeba zacząć. Wybór bazy danych może być zdeterminowany bazami używanymi już w firmie lub wymaganiami systemu raportowego
- Wybór narzędzia – narzędzie do budowy hurtowni danych to jeden z najważniejszych kroków i bardzo trudny do zmiany kilka słów o narzędziach napisałem Tu – Narzędzia ETL
- Źródła danych – przygotowanie odpowiednich źródeł danych pochodzących z systemów działających operacyjnie w przedsiębiorstwie
- Mechanizmy zasilające – przygotowanie mechanizmów zasilających hurtownie na bazie źródeł z p. 1
- Harmonogramy – zaplanowanie harmonogramów zasilających hurtownię danych. Dość ważne, aby odpowiednio wybrać zasilenia dla poszczególnych źródeł. Należy je dostosować przede wszystkim do częstości zmian danych, ilości / rozmiaru danych
- Transformacje – to najczęściej procesy obliczeniowe, agregujące lub łączące dane
- Widoki/tabele – w zależności od przyjętego rozwiązania jednym z ostatnich kroków planowania hurtowni może być przygotowanie widoków/ tabel przeznaczonych do generowania raportów
- Mechanizmy sprawdzające – nie można zapomnieć o przygotowaniu mechanizmów / logów umożliwiających w szybki sposób sprawdzenie poprawności zasileń oraz transformacji danych. Dobre zaplanowanie tego podczas projektowania hurtowni oszczędzi z czas podczas eksploatacji. Najlepiej jest przygotować automatyczne emaile w przypadku pojawiających się w procesie błędów.
- Polityka backupowa – to bardzo ważny element, o którym w ferworze tworzenia często zapominamy. Jednak to konieczność. Zabezpieczenie danych to gwarancja stałego dostępu do raportów dla biznesu.
Praca z hurtownią danych
Codzienna praca osoby projektującej hurtownię to przede wszystkim weryfikacja poprawności jej działania. W praktyce oznacza to sprawdzenie, czy zasilenie, transformacje oraz backupy wykonały się prawidłowo. Wsparciem w tym mogą być odpowiednio przygotowane raporty oraz emaile automatyczne wysyłane w przypadku wystąpienia błędu. Trzeba się trochę przy tym napracować jednak w eksploatacji hurtowni danych bardzo to pomaga.
Wyzwania projektowe
Najtrudniejszym elementem projektowania hurtowni jest zaplanowanie danych koniecznych do przeniesienia do hurtowni. Dlatego najważniejszym elementem planowania wdrożenia są w miarę możliwości precyzyjne “prototypy” raportów wykonane np. w excelu, dzięki którym możliwe będzie określenie minimalnych danych jakie mają być przeniesione i przetransformowane.
Masz pytania pisz na [email protected].
Dodaj komentarz