Deser pod lupą

Prosto z hurtowni

Od strony technicznej system analityczny w Bakoma SA został stworzony przy użyciu narzędzi analitycznych firmy Microstrategy, narzędzi typu ETL (Extraction, Transformation, Loading) DataStage firmy Ascential Software oraz bazy danych DB2/400 działającej na serwerze IBM iSeries, który pozostał w Bakomie po wdrożeniu systemu ERP firmy J.D. Edwards. Wstępnym przygotowaniem danych zajęli się informatycy Bakomy. Model fizyczny hurtowni danych i sposób realizacji procesu przenoszenia danych z systemów źródłowych do hurtowni opracowała firma Pro-Holding sp. z o.o. z Krakowa. Konsultanci tej firmy byli odpowiedzialni za projekt i realizację zasilania hurtowni oraz nadzór nad całością wdrożenia. Za model logiczny i konfigurację narzędzi analitycznych odpowiadała inna krakowska firma - Analytics, będąca podwykonawcą Pro-Holdingu.

Działanie systemu analitycznego w Bakoma SA wygląda następująco. Dane z systemu ERP J.D. Edwards oraz innych aplikacji, m.in. z systemu sprzedaży rozproszonej, spływają do hurtowni każdej nocy. Ponieważ w tym samym czasie na serwerze obsługującym system ERP odbywa się planowe przetwarzanie, jednym z wstępnych wymogów wobec rozwiązania analitycznego była zdolność do jak najmniejszego obciążania systemu transakcyjnego podczas pobierania z niego danych źródłowych oraz jak najkrótszy czas ich pobierania. To m.in. z tego powodu zastosowano narzędzia DataStage firmy Ascential Software.

Deser pod lupą

Piotr Kustra, starszy konsultant w firmie Analytics, Kraków

Z punktu widzenia wymagań wydajnościowych narzuconych przez Bakomę, DataStage okazał się najlepszym z testowanych rozwiązań. Ponadto jego zastosowanie pozwala na wykorzystanie wielu różnorodnych danych wejściowych i docelowych. Pakiet DataStage potrafił pobierać dane równolegle z wielu źródeł oraz symultanicznie ładować je do hurtowni. Pozwalał też na elastyczne definiowanie parametrów ekstrakcji danych.

Specjalistom z Pro-Holdingu udało się ominąć ograniczenia wydajnościowe systemu ERP. "Zamiast całości danych, pobieramy z bazy ERP tylko te rekordy, które się zmieniły. Dane nie są pobierane za pomocą jednego skomplikowanego zapytania, lecz kilku prostych, obejmujących mniejsze zakresy danych. Wyniki prostych zapytań lądują w repozytorium pośrednim, niejako w przedsionku hurtowni, i dopiero tam są przetwarzane do postaci pozwalającej umieścić je w modelu hurtowni" - wyjaśnia Mirosław Maduzia, specjalista w Pro-Holding sp. z o.o. z Krakowa. Hurtownia została uodporniona na niespodziewane awarie przez zastosowanie algorytmów pozwalających na ponowne załadowanie danych źródłowych z określonej daty.

DataStage wspomaga wydajność ładowania danych w jeszcze jeden sposób. System umożliwia łatwe skonfigurowanie go jako swego rodzaju bufora, w którym mogą być przechowywane tabele z danymi referencyjnymi (np. dane słownikowe: współczynniki rabatowe, opisy itd.). Można nawet zażądać, aby dane te w czasie przetwarzania były przechowywane w pamięci RAM. Inną wygodną cechą DataStage jest możliwość pobierania i przesyłania danych nie rekord po rekordzie, lecz większymi zestawami, co w praktyce okazuje się znacznie wydajniejsze.

Dane w hurtowni są przechowywane w modelu gwiazdy. "W warstwie fizycznej model gwiazdy sprawdził się bardzo dobrze, w porównaniu ze znormalizowanym modelem płatka śniegu. Odczytanie kilku czy nawet kilkudziesięciu tysięcy dodatkowych rekordów z tabeli wymiarów jest dla wydajności mało istotne. Gdyby natomiast wszystkie rozgałęzienia modelu logicznego chcieć przenieść na model fizyczny, a więc odwzorować go w relacjach między tabelami, powstałaby skomplikowana struktura, wymagająca budowy mniej efektywnych złożonych zapytań SQL" - tłumaczy Mirosław Maduzia.

Raporty z konsumpcji

Hurtownia danych w Bakomie operuje danymi o najniższym możliwym stopniu szczegółowości, tj. na poziomie linii dokumentu, np. pozycji na fakturze, co jest rejestrowane w odpowiedniej tabeli w modelu sprzedaży. Równocześnie system sprzedaży rozproszonej rejestruje automatycznie w komputerze naręcznym handlowca każdą wizytę, bez względu na to, czy doprowadziła ona do wystawienia faktury czy nie. Dane te trafiają tabeli modelu sprzedażowego. W typowej sytuacji analiza wykonania trasy i analiza sprzedaży byłyby wykonywane oddzielnie, a ich ewentualne porównania wymagałaby dodatkowych zabiegów, zapewne nie obyłoby się bez eksportu danych do arkusza kalkulacyjnego. Bakoma stworzyła tymczasem gotowe raporty pozwalające odnieść do siebie te dane. "Taki raport pokazuje wprost, jak liczba wizyt i czas spędzony u konkretnego klienta przekładają się na wielkość jego zakupów. Czarno na białym widać, komu opłaca się poświęcać więcej czasu" - twierdzi Jacek Wiśniewski.


TOP 200