www.bakk.com mapa strony kontakt

PL | EN

 O FIRMIE   ROZWIĄZANIA DLA BIZNESU   USŁUGI I OPROGRAMOWANIE   REFERENCJE 
Hurtownie danych

Hurtownie danych to systemy informatyczne, które przechowują dane przedstawiane i zapisywane w takiej postaci, w jakiej dane te prezentowane są w raportach.

Wymaga to oderwania od postaci danych zapisywanych w systemach źródłowych, w których najważniejszymi zdarzeniami są jednostkowe zdarzenia w biznesie (np. jedno zamówienie) oraz przejścia do przetworzonej postaci, w której zasadniczym obiektem jest np. sprzedaż produktu. Różnica wydaje sie niewielka, natomiast w stopniu zrozumienia przez użytkowników analizujących dane oraz łatwości dostępu do danych jest to rewolucyjna różnica.

Dzięki zastosowaniu hurtowni danych odwraca się proporcje czasu spędzanego w organizacji nad przygotowywaniem raportów oraz analizowaniem danych z raportów. W tradycyjnych organizacjach proporcja ta wynosi 80/20. Natomiast dzięki hurtowni danych można poświęcać 80% czasu związanego z raportowaniem na analizę danych.

Istotą hurtowni danych jest przewrócenie tego tradycyjnego modelu do góry nogami – zamiast zbierać raporty, zbiera się dane o jak najwyższym stopniu szczegółowości. Na podstawie takich danych można wykonać każdy raport, jaki mogliby dostarczyć pracownicy z terenu, oraz wiele więcej:
  • prosty dostęp do danych dla kierownictwa i analityków firmy (przekłada się to na dokładniejszą analizę)
  • jednolite zasady raportowania (osiąga się przez to porównywalność danych pochodzących z raportów tworzonych przez różne osoby)
  • oddzielone zostają role osoby odpowiedzialnej za wyniki oraz osoby odpowiedzialnej za przygotowanie raportu (utrudnia to upiększanie statystyk)
  • podnosi się jakość danych w raportach (dzięki automatycznemu procesowi powstawania raportów dane w nich zawarte są lepszej jakości)
  • znacząco skraca się czas od zaistnienia rzeczywistych faktów, do ich odzwierciedlenia w danych przedsiębiorstwa (nie trzeba czekać z przeprowadzeniem statystyk do zamknięcia okresów księgowych)
  • znacznie redukuje się czas spędzony przy generowaniu raportów (pracownicy w terenie mogą skoncentrować się na swoich podstawowych pracach, a robota papierkowa jest automatycznie wykonywana w centrali).

Dalsza tematyka hurtowni danych:


Dzięki zastosowaniu hurtowni danych odwraca się proporcje czasu spędzanego w organizacji nad przygotowywaniem raportów oraz analizowaniem danych z raportów. W tradycyjnych organizacjach proporcja ta wynosi 80/20. Natomiast dzięki hurtowni danych można poświęcać 80% czasu związanego z raportowaniem na analizę danych.

Istotą hurtowni danych jest przewrócenie tego tradycyjnego modelu do góry nogami – zamiast zbierać raporty, zbiera się dane o jak najwyższym stopniu szczegółowości. Na podstawie takich danych można wykonać każdy raport, jaki mogliby dostarczyć pracownicy z terenu, oraz wiele więcej:
  • prosty dostęp do danych dla kierownictwa i analityków firmy (przekłada się to na dokładniejszą analizę)
  • jednolite zasady raportowania (osiąga się przez to porównywalność danych pochodzących z raportów tworzonych przez różne osoby)
  • oddzielone zostają role osoby odpowiedzialnej za wyniki oraz osoby odpowiedzialnej za przygotowanie raportu (utrudnia to upiększanie statystyk)
  • podnosi się jakość danych w raportach (dzięki automatycznemu procesowi powstawania raportów dane w nich zawarte są lepszej jakości)
  • znacząco skraca się czas od zaistnienia rzeczywistych faktów, do ich odzwierciedlenia w danych przedsiębiorstwa (nie trzeba czekać z przeprowadzeniem statystyk do zamknięcia okresów księgowych)
  • znacznie redukuje się czas spędzony przy generowaniu raportów (pracownicy w terenie mogą skoncentrować się na swoich podstawowych pracach, a robota papierkowa jest automatycznie wykonywana w centrali).

Dalsza tematyka hurtowni danych:

  • [ID 35]Efektywne kosztowo podejście do realizacji hurtowni danych[/ID] [ID 35]>>[/ID]
  • [ID 40]Definicje pojęć związanych z hurtowniami danych[/ID] [ID 40]>>[/ID]
  • [ID 51]Hurtownie danych od wewnątrz[/ID] [ID 51]>>[/ID]
  • [ID 52]Hurtownie danych dla windykacji[/ID] [ID 52]>>[/ID]

Opłacalność wdrożenia

Przy podejmowaniu decyzji o dowolnej inwestycji - również o wdrożeniu hurtowni danych - każdy decydent rozważa wartość dodaną, zysk jaki przyniesie inwestycja firmie. Wartość z posiadania systemu informatycznego to wypadkowa wszystkich kosztów i korzyści przedsięwzięcia przy założeniu realizacji kluczowych jego funkcjonalności.

Praktycy wdrażania hurtowni danych dobierają realizowane obszary analityczne tak, aby okres zwrotu z inwestycji był jak najkrótszy. Hurtownia przestała być źródłem wiedzy do podejmowania decyzji strategicznych w horyzoncie dwu – trzy letnim, sponsorzy chcą widzieć efekty natychmiast.

W nowych implementacjach hurtowni danych kładzie się nacisk na tworzenie analiz wspierających działalność operacyjną, przynoszącą bezpośredni dochód. Wśród nich najpopularniejsze są: analiza rentowności klientów, analiza zakupów klientów, analiza zaopatrzenia i stanów magazynowych czy analiza rozrachunków.

Sprawny handlowiec wsparty raportem o dynamice zakupów w grupach produktowych podzieli obecnych klientów firmy na tych, o których należy bardziej zadbać celem zwiększenia obrotów, a w konsekwencji własnej prowizji. Area sales manager zainteresuje się analizą rentowności obecnie obsługiwanych klientów. Dział logistyki oraz dział finansowy będzie dążył do zminimalizowania zaangażowania środków finansowych w proces sprzedaży czy produkcji, wreszcie dział windykacji lubi wybrać potencjalne cele.

Drugim obszarem tematycznym chętnie wdrażanym przez przedsiębiorstwa są analizy mające na celu wzmożenie dyscypliny finansowej i organizacyjnej firmy. Działy kontrolingu oraz księgowy mają mnóstwo potrzeb analitycznych, które hurtownia może wesprzeć. Cała gama raportów z dziedziny rachunkowości zarządczej: analiza wskaźnikowa, czy sprawozdawczość dla jednostek nadrzędnych, generowana ze wspólnego źródła mają znacznie lepszą jakość, oraz oszczędzają czas pracowników.

Nieco w niełasce, jako te, które przynoszą korzyści w dalszym horyzoncie znalazły się analizy wpierające działy marketingu i kadrowy. Niegdyś popularne analizy koszykowe zakupów, segmentacja klientów czy analizy kadrowe są zazwyczaj odkładane „na dalsze przyrosty hurtowni danych”.

Czynniki wpływające na cenę hurtowni

Jak w każdym projekcie informatycznym są trzy czynniki wpływające na cenę: koszty osobowe, koszty sprzętu i oprogramowania.

Optymalizacja kosztów sprzętu oraz kosztów zespołu wdrożeniowego to temat na oddzielny artykuł, tu pragnę skoncentrować się na aspektach minimalizacji nakładów na oprogramowanie.

Minimalny zestaw oprogramowania koniecznego do zbudowania hurtowni danych to:
  • Narzędzia ekstrakcji, transformacji i ładowania danych (ETL),
  • Baza danych,
  • Narzędzie prezentacji i analizy danych.
Koszt licencji narzędzia ETL uzależniony jest od bardzo wielu czynników, polityki licencyjnej producenta, ilości i rodzaju źródeł danych, liczby stanowisk deweloperskich etc. stąd trudno jest pisać o cenach. Można jednak przyjąć z pewnym marginesem błędu, że zakres cenowy samych licencji na pakiety ETL u wiodących dostawców waha się od 10.000 PLN do 400.000 PLN.

Podobnie ma się sytuacja z narzędziami raportującymi, gdzie najczęściej spotykane czynniki wpływające na cenę to liczba licencji stanowiskowych lub na użytkowników korzystających równocześnie (tzw. „current user”) oraz zakres funkcjonalny narzędzia. Zakres cenowy licencji u wiodących dostawców to od około 10.000 PLN wzwyż, przy czym bardzo często sięga on setek tysięcy złotych.

Stąd bierze się wzrastający popyt na rozwiązanie Microsoft, w którym, jeżeli kupimy bazę danych, za ETL nie płaci się nic, a za narzędzie raportowe już się zapłaciło przy okazji zakupu pakietu Microsoft Office.

Microsoft do bazy danych Microsoft SQL Server 2000 dołączył dwa komponenty pozwalające na zbudowanie hurtowni danych bez konieczności zakupu dodatkowych licencji. Są to narzędzie ETL: DTS (Data Transformation Services) oraz Analisys Services, wspierające, po stronie serwera oraz klienta, budowę wielowymiarowych analiz.

Oba te komponenty były już obecne w Microsoft SQL Server 7.0 (Analysis Services pod nazwą OLAP Services), jednak w wersji Microsoft SQL Server 2000 ich funkcjonalność została znacznie poszerzona.

Dosyć długi czas obecność na rynku nie ma przełożenia na ilość dotychczasowych wdrożeń. Obecnie wobec znacznej presji cenowej triada DTS – Microsoft SQL Server – Analysis Services odkrywana jest przez coraz większą liczbę klientów. W dalszej części artykułu postaram się dowieść wysokiej jakości oraz bogactwa funkcji narzędzi hurtownianych Microsoft. Dostarczenie ich niejako „przy okazji” zakupu bazy danych obniża barierę cenową w postaci kosztów licencji na ETL i narzędzie raportujące, o którą rozbiło się wiele firm rozważających budową hurtowni danych.

Prosta hurtownia danych „dla oszczędnych”

Proponuję rozważenie wdrożenia hurtowni danych w oparciu o DTS jako narzędzie ekstrakcji danych, Microsoft SQL Server jako bazę, w której dane są magazynowane, Analysis Services jako narzędzia do tworzenia analiz wielowymiarowych oraz stary dobrze znany Microsoft Excel jako narzedzie raportujące.

a. Data Transformation Services

Zadania, które ma wykonywać DTS zdefinowane są w pakietach. W pakiecie zdefinowane są źródła danych, zadania definiujące transformacje, jakim dane mają podlegać, obiekty docelowe oraz wskazania, co do kolejności wykonywania poszczególnych zadań. Narzędzie umożliwia nawiązanie połączenia, czy to celem pobrania, czy wprowadzania danych z wieloma typami źródeł danych.

Możliwa jest współpraca nie tylko z bazą danych Microsoft SQL Server ale i z Microsoft Access, dBase, Paradox, a poprzez ODBC z każdą bazą, do której te sterowniki powstały. Wspierana jest również komunikacja w obie strony z plikami Microsoft Excel oraz plikami tekstowymi. Jest to bardzo przydatne w sytuacji, gdy tworzona hurtownia ma komunikować się z popularnymi programami finansowo księgowymi krajowych producentów, które nie zawsze działają w oparciu o bazę danych, do której dostępne jest ODBC.

Zadanie („Task”) to podstawowa jednostka pracy wykonywana w pakiecie DTS. Gamę dostępnych w DTS zadań podzielić można na pięć grup:
  • Przeznaczone do transportu i transformacji danych jak np.: Transform Data Task,Data Driven Query Task i Bulk Insert Task.
  • Programistyczne, umożliwiające dokonywanie dodatkowych operacji na danych, uruchomienie procesów w systemie czy innych pakietów DTS. Do tych zadań należą min: execute SQL Task, Execute Process Task, Execute Package Task.
  • Przeznaczone do transportu plików, wysyłania emaili czy obsługi kolejek MSMQ: File Transfer Protocol Task, Send Mail Task i Message Queue Task.
  • Zadania wspierające przenoszenie obiektów między bazami: Microsoft SQL Server np. Copy SQL Server Object Task, Transfer Database Task, Transfer Login Task itp.
  • Wspierające Analisys Services: Analisys Services Processing Task i Data Mining Task.
O ostatniej grupie nieco więcej w dalszej części artykułu. Kolejność wykonywania zadań można zorganizować przy pomocy przepływów czynności (ang. workflow). W zależności od jednego z trzech stanów, którym może zakończyć się wykonywanie zadania poprzedzającego (sukces, błąd, lub niezależny od rezultatu) sterowanie zostanie przekazane do wskazanego zadania następującego.

b. Baza danych Microsoft SQL Server

Relacyjna baza przechowuje dane wydobyte przy użyciu narzędzia DTS. W klasycznej architekturze hurtowni stosuje się podział obiektów na obiekty buforowe (stagging area), obiekty warstwy danych detalicznych oraz obiekty warstwy danych zagregowanych.

Warstwa buforowa służy do przygotowania danych do wprowadzenia do obiektów warstwy detalicznej. Obiekty warstwy buforowej są wykorzystywane przez procesy ładowania w celach doraźnych np.: do czyszczenia danych. Rekordy tabel tej warstwy mogą podlegać modyfikacjom.

Warstwa danych detalicznych składa się ze struktur przechowujących dane na potrzeby hurtowni danych i stanowi jej podstawę funkcjonowania. Gromadzone w niej informacje odzwierciedlają stan danych systemu źródłowego na przestrzeni czasu. Tabele znajdujące się w tej warstwie są wersjonowane czasem, umożliwiając tym przedstawienie stanu danych detalicznych na wskazany dzień. Rekordy tabel tej warstwy nie podlegają modyfikacjom.

Warstwa danych zagregowanych zawiera struktury danych zdenormalizowanych i/lub zagregowanych w celu poprawienia wydajności raportowania i analiz. Tabele znajdujące się w tej warstwie są wersjonowane czasem, umożliwiając tym odtworzenie stanu wiedzy aktualnej na wskazany dzień wykonywanej analizy. W zależności od potrzeb funkcjonalnych lub wydajnościowych dane tej warstwy można modyfikować.

c. Analysis Services

Analysis Services jest to zespół komponentów umożliwiających raportowanie w technologii wielowymiarowej - OLAP. Produkt ten pozostaje samodzielnym produktem i nie jest uzależniony od relacyjnej bazy danych Microsoft SQL Server, pomimo wspólnej dystrybucji.

Dane pobierane są ze struktur relacyjnych a następnie przekształcone do modelu wielowymiarowego i zagregowane trafiają do wielowymiarowych kostek. Na żądanie z zainstalowanego na stacji klienckiej PivotTable Service są one pobierane i przekazywane do narzędzi raportowych np.: Cube Browsera czy Microsoft Excel.

U podstaw wielowymiarowego raportowania leży kostka wielowymiarowa (ang. cube). Kostki tworzone są na etapie budowy struktur. W cyklu życia hurtowni, co pewien określony czas dodaje się do nich dane na poziomie podstawowym, a następnie przetwarza się całą kostkę celem uzyskania odświeżonych danych zagregowanych. Właśnie do tego celu służy jeden z dwóch wspomnianych wyżej tasków DTS: Analisys Services Processing Task.

Narzędziem umożliwiającym edycję kostek jest Analysis Manager. Umożliwia on stworzenie połączenia do źródeł danych zawierających wartości i hierarchie miar i wymiarów. Analysis Services umożliwia połączenie się do każdego źródła danych, do którego istnieją sterowniki ODBC i zbudowanie kostek w oparciu o dane stamtąd pobierane. W szczególności mogą być to źródła danych na innych platformach niż platforma Windows.

W ramach kostek możliwe jest utworzenie miar wyliczanych oraz kostek wirtualnych. Możliwe jest też ograniczanie użytkownikom dostępu do danych. Mechanizmy bezpieczeństwa są zintegrowane z mechanizmami bezpieczeństwa domeny Windows.

Przy pomocy Analysis Managera można również utworzyć modele datamining zarówno z danych relacyjnych jak i z danych wielowymiarowych. Dostępne są dwa algorytmy: klastrujący i drzew decyzyjnych.

Chyba w każdej firmie, gdy po żmudnym i stresującym tworzeniu aplikacji przychodzi moment jej wdrożenia, na potencjalnych użytkowników pada blady strach przed koniecznością nauki „jeszcze jednego programu”. Korzystając z Analysis Services stres ten można zmniejszyć gdyż użytkownikom mającym mniej czasu na naukę nowych gadżetów można wystawiać raporty w formie połączonych z kostką tabel przestawnych w Microsoft Excel. Użytkownik uzyskuje w ten sposób świeże dane w znanym już sobie narzędziu, dzięki czemu łatwiej mu z nich skorzystać. Z obserwacji autora wynika, że zaniedbanie preferencji użytkownika pod kątem dostępu do danych, potrafi skutecznie odstraszyć wszystkich adresatów raportów od skorzystania z nich. A po co w firmie nawet najlepiej skonstruowana hurtownia z której nikt nie korzysta?

Zakończenie

Proponowane rozwiązanie pokrywa część funkcjonalności, jaką powinien zapewnić nowoczesny system Business Intelligence. Jest korzystne cenowo i stosunkowo proste od strony technologicznej do wdrożenia. Powyższe nie oznacza że uważam budowę przynoszącej zyski hurtowni danych za rzecz trywialną, stosując opisaną architekturę unika się wielu kłopotów z niekompatybilnością narzędzi i można skoncentrować się na sensie przedsięwzięcia: wyciskaniu pieniędzy z danych.

Dalsza tematyka hurtowni danych:

  • [ID 4]Wstęp do tematyki hurtowni danych[/ID] [ID 4]>>[/ID]
  • [ID 40]Definicje pojęć związanych z hurtowniami danych[/ID] [ID 40]>>[/ID]
  • [ID 51]Hurtownie danych od wewnątrz[/ID] [ID 51]>>[/ID]
  • [ID 52]Hurtownie danych dla windykacji[/ID] [ID 52]>>[/ID]

hurtownia danych

– odrębna baza danych, zintegrowane, scentralizowane repozytorium danych przekrojowych dotyczących wielu aspektów działalności organizacji lub przedsiębiorstwa; organizuje dane według biznesowych kategorii danych - np. względem czasu, klienta, produktu; dane często pochodzą z wielu źródeł, również zewnętrznych, przeważnie z operacyjnych lun transakcyjnych baz danych.

Business Intelligence (BI)

– systemy pozwalające wykrywać zależności pomiędzy danymi, wykraczające poza bierne przedstawianie danych do analiz, bazują na repozytoriach danych takich jak hurtownie danych.

Decision Support System (DSS) Systemy Wspierania Decyzji

– systemy pozwalające na dynamiczne zadawanie zapytań do repozytorium danych, bez znajomości języka zapytań SQL.

Executive Information System (EIS) Systemy Informacji Zarządczej

– systemy pozwalające na dynamiczne zadawanie zapytań do repozytorium danych, bez znajomości języka zapytań SQL - w zakresie sztywno zdefiniowanych ram i warunków, które zostały zdefiniowane w interfejsie zapytań.

On Line Analytical Processing (OLAP)

– technologia przetwarzania, przechowywania i udostępniania danych w sposób zoptymalizowany dla zastosowań analitycznych.

On Line Transaction Processing (OLTP)

– technologia przetwarzania, przechowywania i udostępniania danych w sposób zoptymalizowany dla zastosowań transakcyjnych - najczęśćiej rejestracji zdarzeń gospodarczych w firmie.

wielowymiarowe strktury danych

– struktury danych pozwalające zapisać/odzwierciedlić pod względem logicznym wielowymiarową przestrzeń - czyli przypisać atrybuty lokalizacyjne dla zdarzeń w każdym z n wymiarów. Należy odróżnić od wielowymiarowych baz danych.

relacyjne strktury danych

– struktury danych pozwalające zapisać/odzwierciedlić pod względem logicznym relacje powiązań pomiedzy obiektami. Podzbiorem relacyjnych struktur danych - są struktury wielowymiarowe, które zostały skonstruowaniu w oparciu o odpowiednio zbudoane relacje.

wielowymiarowe bazy danych

– bazy danych operujące pojęciami 'miara', 'wymiar' i 'hierarchia' w oderwaniu od ich technicznego sposobu zapisu.

relacyjne bazy danych

– bazy danych operujące pojęciami tabel i relacji pomiędzy tabelami.

miara (measure)

– obiekt w hurtowni danych, którego zadaniem jest rejestracja i przechowywanie wartości prezentowanych (najczęściej numerycznych), np. ilość sprzedanych produktów, stan magazynowy, ale również tekstowe - np. komentarz (dyskusyjne jest, czy jest to miara, czy nie, ponieważ do miar nienumerycznych nie można stosować wielu operacji tradycyjnie wykonywanych na miarach - np. agregowania).

wymiar (dimension)

– obiekt w hurtowni danych, którego zadaniem jest organizacja danych zapisanych w miarach w sposób umożliwiający analizowanie - według jednego aspektu - np. wymiar czas, geografia, produkt.

Dalsza tematyka hurtowni danych:

  • [ID 4]Wstęp do tematyki hurtowni danych[/ID] [ID 4]>>[/ID]
  • [ID 35]Efektywne kosztowo podejście do realizacji hurtowni danych[/ID] [ID 35]>>[/ID]
  • [ID 51]Hurtownie danych od wewnątrz[/ID] [ID 51]>>[/ID]
  • [ID 52]Hurtownie danych dla windykacji[/ID] [ID 52]>>[/ID]

O firmie | Rozwiązania dla biznesu | Usługi i oprogramowanie | Technologie | Referencje | Aktualności | Kariera | Wsparcie techniczne dla klientów
Wersja polska | English version | BAKK Sp. z o.o. ul. E. Ciołka 10 01-402 Warszawa | telefon (22) 212 89 30-32, fax (22) 212 89 33 | Mapa strony | (C)2007 BAKK