Big Data w QlikView

Jest bardzo wiele powodów, dla których organizacje interesują się tematem zwanym powszechnie Big Data. Dla niektórych jest to rzeczywistość operacyjna, oferując niespotykaną dotąd możliwość przechowywania i analizowania dużych ilości różnorodnych danych, kluczowych dla organizacji. Pozwala to identyfikować nowe możliwości i rozwiązania problemów, które przy braku danych szczegółowych mogłyby umknąć. Dla innych zainteresowanie Big Data spowodowane jest ogólnym „zamieszaniem” wokół tematu i chęcią bycia „na czasie”.
Poniższy artykuł przeznaczony jest zarówno dla pracowników działów IT przedsiębiorstw jak i użytkowników biznesowych. Postaram się w nim przedstawić rolę, jaką pełni platforma QlikView Business Discovery jako przyjazny system analityczny w połączeniu z rozwiązaniami opartymi na Big Data, umożliwiając w sposób łatwy i przejrzysty skorzystać z ogromnych wolumenów danych.

DWIE STRONY MEDALU, CZYLI ANALIZA W BIG DATA

Wiele publikacji, opisując Big Data, skupia się na bardzo skomplikowanych algorytmach przetwarzania danych operujących w ogromnych centrach przetwarzania z wykorzystaniem wielu wysokowydajnych serwerów. Ich głównym zadaniem jest rozwiązywanie złożonych problemów obliczeniowych środowisk akademickich, administracji publicznej czy też firm i korporacji. Nie bez powodu ludzie tworzący takie algorytmy nazywani są „badaczami danych”. Posiadają oni z reguły ogromną wiedzę z zakresu matematyki, statystyki, przetwarzania danych czy informatyki. Czy jednak każdy, kto potrzebuje szybko znaleźć odpowiedź na pytanie biznesowe potrzebuje dyplomu profesora matematyki ? Czy istnieje sposób, by z Big Data stworzyć narzędzie dla użytkowników biznesowych ?

To ta druga strona przysłowiowego medalu. Analitycy czy kontrolerzy finansowi coraz częściej wykonują analizy sami. W przeciwieństwie do modelu algorytmicznego, który stara się znaleźć „igłę w stogu siana” przez drążenie wszystkich dostępnych danych, użytkownicy biznesowi są bardziej skłonni do zadawania pytań ad-hoc, które służą podjęciu konkretnych decyzji biznesowych:
• W jaki sposób promocja towaru X wpłynęła na jego sprzedaż?
• Jak efektywny okazał się cross-selling naszego działu sprzedaży?
• W jaki sposób klęska żywiołowa wpłynęła na zakłócenie łańcucha dostaw materiałów do produkcji towaru Y ?
• Jaki poziom satysfakcji naszego klienta odzwierciedla historia jego transakcji?

Tego typu pytania były stawiane przez użytkowników biznesowych na długo przed pojawieniem się pojęcia Big Data. Jednakże brak odpowiednich, szybkich narzędzi uniemożliwiał analizowanie niektórych danych ze względu na ich liczebność. Obecnie dostęp do nich zwiększa możliwość, zadawania bardziej szczegółowych zapytań, otrzymując dzięki temu pewniejsze odpowiedzi. Innymi słowy, użytkownicy biznesowi są w stanie połączyć swoją intuicję z lepszym dostępem do danych a w efekcie podejmować bardziej optymalne decyzje.

OD WYDOBYCIA DO PRODUKTU KOŃCOWEGO
Rysunek nr 1 przedstawia proces przepływu danych z formy początkowej (źródłowej) do wyrafinowanej formy przygotowanej pod kątem prezentacji i analiz. Stosując analogię do produkcji metalurgicznej, można powiedzieć, że dane są w tym przypadku jak metal, którego ruda musi najpierw zostać wydobyta w kopalni, następnie przetransportowana do huty, gdzie w efekcie zastosowania różnych procesów mechanicznych i chemicznych uzyskamy metal gotowy do produkcji wyrobu końcowego.
Podobnie wygląda droga danych z postaci surowej do formy użytecznej dla biznesu:
Surowe dane. Pochodzenie danych w podejściu Big Data można podzielić na dane techniczne z urządzeń (np.: logi serwerów, logi sieciowe, logi z urządzeń RFID), dane transakcyjne (np. aktywność internetowa, dane z systemów sprzedaży) oraz dane przechowywane w chmurze (notowania cen produktów, dane z portali społecznościowych). Informacje takie często posiadają formę nieustrukturyzowaną (ciągi znaków lub obrazy) lub też częściowo ustrukturyzowaną (logi ze znacznikami czasowymi, adresy IP czy inne bardziej szczegółowe informacje). Z definicji Big Data wynika również, że dane te mają wysoki wolumen (liczony w tera- a czasem petabajtach), wysoki przyrost (rzędu giga- lub terabajtów dziennie) oraz wysoki poziom rozrzutu lokalizacji (dziesiątki różnych baz danych oraz aplikacji generujących dane we własnych formatach).
Pierwszy etap przetwarzania. Jeśli koszt składowania jest głównym problemem, dane są często kopiowane do klastra Hadoop. Hadoop Distributed File System (HDFS) jest przykładem rozproszonego, skalowalnego systemu plików przeznaczonego do wykorzystania na wielu różnych platformach sprzętowych i systemowych. Jednym z elementów tego rozwiązania jest Hadoop MapReduce – framework umożliwiający równoległe przetwarzanie, manipulację i agregację danych, jako pierwszy poziom interpretacji surowych informacji. Apache Hive i Cloudera Impala są częścią ekosystemu Hadoop, przechowując dane i stanowiąc ich źródło dla systemów zewnętrznych takich jak QlikView z możliwością ich wyszukiwania i filtrowania.
Kolejne etapy przetwarzania. Często organizacje wykorzystują hurtownie danych (Enterprise Data Warehouse – EDW), które służą jako centralne repozytorium danych ustrukturalizowanych wykorzystywane późnej w analizach. EDW przeznaczone są nie tylko do przechowywania danych, ale posiadając mechanizmy przetwarzania i transformacji danych ETL uzupełniając klastry Hadoop. EDW są w stanie pobrać dane bezpośrednio z baz systemów źródłowych, systemów SAN (Storage Area Network) lub NAS (Network Attached Storage), a także z klastrów Hadoop. Ponieważ układ danych hurtowni jest zorganizowany, łatwiej je wykorzystać do analizy niż dane surowe.
Etap końcowy – analizy. Współczesne narzędzie do analizy, które najlepiej zaspokaja potrzeby typowego użytkownika biznesowego powinno elastycznie integrować dane z wielu źródeł i nie wymagać od niego wiedzy skąd pochodzą dane i jak są zorganizowane. Modelowanie danych musi być szybkie i łatwo obejmować różne źródła danych. Te cechy nie tylko zmniejszają obciążenie działów IT, ale także umożliwienie użytkownikom biznesowym uwzględnienie dodatkowych danych w ich analizach, których w danej chwili potrzebują.

UKIERUNKOWANIE NA UŻYTECZNOŚĆ I KONTEKST
Użytkownicy biznesowi nieustannie stawiają coraz wyższe wymagania związane z efektywnym dostępem, filtrowaniem i analizą danych bez użycia skomplikowanych narzędzi wymagających specjalistycznych umiejętności. Potrzebują lepszego, łatwiejszego sposobu poruszania się po coraz większych wolumenach danych i znajdowania tego, co pozwala im odpowiedzieć na ich pytania a tym samym podejmowania trafniejszych decyzji.
Możemy wyróżnić dwa sposoby użycia źródeł Biga Data:
• Najważniejsze dane znajdują się w repozytorium Big Data.Często dane szczegółowe, znajdujące się w repozytorium Big Data wykorzystywane są jako uzupełnienie innych źródeł danych takich jak arkusze kalkulacyjne. Źródła te mogą zawierać np. dane z ankiet satysfakcji klientów. Dane z Big Data mogą zwierać wtedy np. historię obsługi klientów. Wiążąc je w jednym raporcie można wówczas uzyskać odpowiedź o przyczynach takich a nie innych ocen.

• Wszystkie dane potrzebne do analizy są w jednym repozytorium.

Istnieje wówczas konieczność zbudowania kompletnego modelu danych uwzględniającego wszystkie możliwe źródła takie jak hurtownie danych, źródła Biga Data, arkusze kalkulacyjne itp. Jednakże w tradycyjnych systemach zbudowanych na bazie rozwiązań OLAP proces ten może być czasochłonny i kosztowny. Czasami jest więc lepiej, aby dane pobierane były wprost z systemów źródłowych, dopóki nie jest jasne, że załadowanie ich do hurtowni danych w sformalizowany sposób jest korzystne dla przedsiębiorstwa ze względów kosztowych i czasowych.
QlikView odgrywa kluczową rolę w implementacji Big Data, zapewniając zarówno szybki, elastyczny system prezentacji danych, jak i zdolność do integracji danych z różnych źródeł (np. repozytoria Hadoop, hurtownie danych, lokalne bazy danych i arkuszy kalkulacyjnych) w jednym zintegrowanym rozwiązaniu.

Użyteczność: Właściwa informacja dla właściwej osoby we właściwym czasie
QlikView od samego początku projektowany był tak, by „rozumieć” to, czego użytkownik w danym momencie potrzebuje do analiz zamiast oferować informację, która w danej chwili nie jest wymagana. Dostęp do właściwych danych we właściwym czasie wart jest więcej niż dostęp do wszystkich przez cały czas. Np. lokalni menadżerowie oddziału banku mogą analizować sprzedaż, zachowania klientów i dynamikę rynku na obszarze działania ich oddziału zamiast widzieć sprzedaż na obszarze całego kraju.
KONTEKST: DANE Z BIG DATA W KONTEKŚCIE POZOSTAŁYCH DANYCH
Asocjacyjna architektura QlikView została zaprojektowana w sposób kontekstowy, zarówno na poziomie danych jak i interfejsu użytkownika. Oznacza to, że każdy element danych w pamięci jest dynamicznie powiązany z każdym innym elementem. Użytkownik widząc wykres sprzedaży według regionów może mieć dostęp do interaktywnych list zawierających informacje kontekstowe takie np. data, miasto, produkt, klient itp. Jeśli w dowolnym momencie użytkownik dokona wyboru w jednej z list, wszystkie inne listy i wszystkie inne wykresy są natychmiast aktualizowane wg wyboru dokonanego przez użytkownika. W QlikView wybrane wartości są zielone, powiązane z nimi wartości są białe, natomiast wartości niepowiązane są szare.
Na przykład, jeśli użytkownik wybierze określony produkt z listy produktów, lista zawierająca miasta pokaże związane z nim miejscowości (w których produkt został sprzedany) w kolorze białym zaś na szaro zostaną zaznaczone te miasta, w których produkt nie był sprzedawany. Owa unikalna zdolność filtrowania w QlikView pozwala niezwykle łatwo użytkownikowi biznesowemu skupić się np. na konkretnym produkcie sprzedanym np. w konkretnym mieście bądź regionie do konkretnego klienta i wyświetlić tylko te dane, które są istotne.
Przydatność zielono-biało-szarych wizualizacji jest jeszcze bardziej widoczna w pracy z rzeczywistymi danymi handlowymi, w których mogą być setki lub tysiące produktów, klientów, lokalizacji itp. Skrajnie duże zbiory danych mogą być szybko ograniczone za pomocą kilku kliknięć, bez konieczności przewijanie tysięcy elementów. Ponadto reprezentujący nieprzypisane wartości kolor szary jest bardzo przydatny. Gdy użytkownik zauważy, że coś nie jest związane z aktualnym wyborem a powinien być, to może to wskazywać na potencjalny problem biznesowy, którym powinien się zająć.

Dzięki QlikView, kontekst i użyteczność mogą iść w parze i oferując bardzo szybko to, co w przypadku Big Data jest dużym problemem – szybki i sprawny dostęp do danych. Bez konieczności programowania czy też zaawansowanych umiejętności wizualizacji.

QLIKVIEW OFERUJE DWA RÓŻNE PODEJŚCIA DO ANALIZ BIG DATA
Pojęcie Big Data jest pojęciem względnym i mocno uzależnionym od konkretnego przypadku wykorzystania analiz, infrastruktury, możliwości klienta itp. W związku z tym QlikView oferuje dwa podejścia do obsługi dużej ilości danych, dzięki którym klient może uzyskać najlepszy współczynnik kosztów w stosunku do wolumenów danych i prędkości ich przetwarzania.

Wariant 1: 100% danych w pamięci w celu osiągnięcia najwyższej wydajności
Mimo ogromnych postępów w technologii budowy dysków twardych, przepustowość i czas dostępu pamięci RAM są nadal o rzędy wielkości lepsze niż w przypadku dysków. Dlatego w przypadku konieczności posiadania analiz „na żądanie” idealną konfiguracją wydaje się być wariant, w którym wszystkie potrzebne dane wiążemy i ładujemy do pamięci.
Aplikacje analityczne QlikView mogą operować na takim wolumenie danych i z taką granulacją informacji, która niezbędna jest do zapewnienia odpowiedniego poziomu szczegółowości analiz. Możliwe jest to dzięki:

Rozwiązaniom sprzętowym. Wprowadzone w ciągu ostatnich lat rozwiązania sprzętowe umożliwiające użycie dużej ilości pamięci na standardowej platformie Intel x86 (x64) otworzyły szerszą drogę rozwoju systemom In-memory takim jak QlikView. Obecnie nie ma problemu z przetwarzaniem setek milionów czy wręcz miliardów rekordów w pamięci serwera. Dodatkowo rozpowszechnienie się procesorów wielordzeniowych a także serwerów wielordzeniowych umożliwiło zwielokrotnienie mocy obliczeniowej. QlikView bez najmniejszych problemów radzi sobie w środowiskach zawierających nawet dziesiątki fizycznych rdzeni procesora oferując wydajność obliczeniową niespotykaną jeszcze do niedawna przy stosunkowo niewielkich nakładach finansowych.
Kompresji danych. Dane ładowane do pamięci przez QlikView poddawane są kompresji dochodzącej do 90%. Dzięki temu wolumen danych systemu źródłowego zajmujący na dyskach twardych powierzchnie rzędu 2TB możemy śmiało załadować do pamięci pojedynczego serwera posiadającego 256 GB RAM-u. Co ważne, dzięki zaawansowanym algorytmom łączenia i wyszukiwania danych, ich przetwarzanie odbywa się z ogromną wydajnością.
Obsłudze farm serwerów. W przypadku bardzo dużych rozwiązań istnieje możliwość wykorzystania klastra serwerów do przetwarzania danych. Przy czym nie muszą to być maszyny w identycznej konfiguracji. Dzięki temu mniejsze aplikacje analityczne, potrzebujące mniej pamięci możemy umieścić na słabszym serwerze. Natomiast kluczowe dla firmy analizy, potrzebujące dużej ilości pamięci, na mocniejszej maszynie. Użytkownik nie musi przy tym wiedzieć, z którego serwera ma otworzyć aplikację – wystarczy, że otworzyć stronę z repozytorium aplikacji (Access Point) i wybierze odpowiedni dokument, a system sam przekieruje go do odpowiedniego miejsca.
• Architekturze wielowarstwowej. Serwery w rozwiązaniu QlikView mogą być rozdzielane również zadaniowo (warstwowo). I tak serwer najniższej warstwy odpowiada za wydobywanie danych z systemów źródłowych. Serwer odpowiadający za przetwarzanie danych pobiera już wydobyte dane, ładuje je do aplikacji i przetwarza. Wszystkie procesy pobierania i ładowania danych mogą być uruchamiane np. o określonych porach, na podstawie określonego zdarzenia czy też łańcuchowo (zakończenie jednego zadania uruchamia inne). Dzięki temu możemy dane z systemu żródłowego pobrać raz, a załadować je do kilku aplikacji. Oczywiście jak przystało na rozwiązanie rosnące wraz z klientem, nic nie stoi na przeszkodzie, aby system wielowarstwowy zbudować początkowo w oparciu o jeden serwer fizyczny a w miarę rozwoju firmy rozdzielić go na kilka…
• Przyrostowemu ładowaniu danych. Administratorzy mogą tak skonfigurować QlikView, by pobierał on tylko te dane, który się zmieniły (lub pojawiły) od ostatniego pobrania danych, zmniejszając w ten sposób obciążenie systemów źródłowych i infrastruktury sieciowej. Elastyczny mechanizm ETL daje wręcz nieograniczone możliwości ustalania algorytmów przyrostu i wyboru delty.
Wariant ten jest najpowszechniej stosowany przez klientów, ponieważ spełnia ich wymagania dotyczące dostępu do dużych ilości danych przy jednoczesnym zachowaniu wysokiej wydajności.

Wariant 2: QlikView Direct Discovery dla ogromnych wolumenów danych

QlikView Direct Discovery jest rozwiązaniem hybrydowym, łączącym przetwarzanie danych w pamięci z danymi ładowanymi w locie. Mniejsze tabele danych ładowane są do pamięci. Jednak bardzo duże tabele faktów już nie. W momencie, kiedy użytkownik dokonuje selekcji danych w aplikacji, QlikView generuje zapytanie do bazy źródłowej. Zagregowany wynik takiej kwerendy jest przekazywany z powrotem do QlikView. Następnie dane te są wiązane z danymi w pamięci i prezentowane użytkownikowi. Zestaw takich danych staje się częścią asocjacyjnej bazy danych przechowywanej w pamięci.
Poprzez bezpośrednie odpytywanie źródła Big Data bez skomplikowanego procesu ETL i powiązaniu go z danymi załadowanymi do pamięci (np. arkuszami kalkulacyjnymi czy tabelami danych), działy IT są w stanie zaoferować użytkownikom biznesowym nowe możliwości analizy danych. Pełniejszy obraz sytuacji daje możliwość dostrzeżenia tego, co wcześniej nie było możliwe a tym samym tworzenia bardziej świadomych strategii i podejmowania lepszych decyzji.
Ponadto, ponieważ dane odczytywane są na bieżąco, użytkownicy otrzymują informacje niemal w czasie rzeczywistym. Aby zwiększyć wydajność i zmniejszyć obciążenie repozytorium Big Data, odczytywane dane mogą być buforowane. Administrator QlikView jest w stanie dostosować czas przechowywania danych buforowanych w pamięci podręcznej, aby osiągnąć równowagę między wydajnością pracy systemu a obciążeniem repozytorium.
Hybrydowe podejście QlikView Direct Discovery ułatwia korzystanie z ogromnych wolumenów danych, dając użytkownikom dostęp do informacji, których potrzebują, kiedy ich potrzebują, bez straty czasu i produktywności. Dzięki QlikView Data Discovery, użytkownicy uzyskują dostęp do Big Data z wykorzystaniem asocjacyjnego wiązania danych. Mogą oni nadal przeglądać informacje swobodnie i ogólnie nie zauważyć różnicy między danymi w pamięci oraz w repozytorium Big Data. Ważne jest, aby pamiętać, że wydajność Direct Discovery jest ściśle uzależniona od wydajności samego repozytorium.
Użytkownicy często zadają pytanie – co jest lepsze: 100% danych w pamięci czy też wykorzystanie Direct Discovery.

SPOSOBY PODŁĄCZENIA DO ŹRÓDEŁ BIG DATA
QlikView został zaprojektowany jako otwarta platforma, posiadająca wiele możliwości podłączenia do zewnętrznych danych, zarówno standardowymi mechanizmami, jak i przy pomocy rozwiązań oferowanych przez firmy trzecie:
• Połączenia przez interfejs ODBC. Obsługa ODBC w QlikView umożliwia podłączenie do większości baz danych, ze względu szeroko rozpowszechniony standard wśród producentów baz danych. Na przykład Teradata zapewnia sterownik ODBC do Teradata Enterprise Data Warehouse, Cloudera udostępnia sterownik ODBC do swojej dystrybucji Apache Hadoop, a Impala silnik zapytań czasu rzeczywistego dla Hadoop.
• QVX dla niestandardowych źródeł danych. QlikView posiada wbudowany otwarty protokół dostępu do danych (QVX – QlikView Exchange), umożliwiający tworzenie przez firmy trzecie dedykowanych konektorów do nietypowych źródeł danych na dwa sposoby:
o Poprzez ekstrakty danych do plików QVX (metoda push)
o Stworzenie dedykowane konektora QVX pobierającego dane bezpośrednio do QlikView (metoda pull)
QVX SDK jest dostępny dla wszystkich firm chcących tworzyć własne, dedykowane konektory danych wykorzystanie otwartego API.
• QlikView Expressor. W lipcu 2012 QlikTech kupił firmę Expressor Software. Efektem tego był nowy produkt w ofercie sprzedawany pod nazwą QlikView Expressor Server, umożliwiający zaawansowane zarządzanie metadanymi i integrację danych.
• Rozwiązania Partnerskie. QlikTech współpracuje z zewnętrznymi dostawcami rozwiązań Big Data, takimi jak Attivio, DataRoket i Informatic. Nawiązał także współpracę z Google, w celu budowy konektora umożliwiającego wizualizację danych przechowywanych w chmurze z wykorzystaniem Google BigQuery.

Autor: Borys Pastuszek, Konsultant QlikView

Business Partners eXcellence

SAP ERP
SAP All-in-One

QlikView
Qlik Sense

Infor SyteLine ERP