Jak wylądować z danymi w chmurze Qlik? 4 metody transferu

Qlik Cloud, inaczej zwany Qlik SaaS (Software-as-a-Service) to dynamicznie rozwijająca się oferta analityki od Qlik. Coraz więcej nowych użytkowników BI decyduje się na przygodę z chmurą. Doceniają elastyczność, łatwość i bezpieczeństwo danych.

Chmura to nic innego jak serwery administrowane dla naszej wygody przez Qlika. Nie znajdują się w naszej sieci, więc zawsze powstaje pytanie – jak przekazać do Qlik Cloud nasze dane, zwykle izolowane w sieci wewnętrznej.

W przypadku przechowywania danych w chmurze (np. Snowflake, BigQuery), łączymy się do nich bezpośrednio z Qlik Cloud, chmura do chmury.

W tym wpisie skupimy się na przedstawieniu aktualnie dostępnych możliwości transferu danych z zasobów wewnętrznych firmy do chmury Qlik.

jak wylądować z danymi w chmurze Qlik

W prostych słowach omówimy cztery opcje:

01

Otwarcie serwera danych na połączenia z chmury

02

Qlik Data Transfer

03

Qlik Data Gateway: Direct Access

04

Qlik Data Integration

Ad 1. Otwarcie serwera danych na połączenia z chmury

Podłączamy się do bazy danych bezpośrednio, sterownikami dostępnymi w standardzie w Qlik. Wymagane jest otwarcie portów w firewallu serwera lokalnego do komunikacji z serwerami zewnętrznymi. Dobrą wiadomością jest, że wystarczy otworzyć komunikację zawężając ją do jednego portu i trzech adresów IP – serwerów, z których połączenia może inicjować Qlik Cloud.

ZALETY WADY
Prostota i szybkość konfiguracji („wystarczy” otworzyć porty). Bezpieczeństwo ściśle zależne od źródłowej bazy danych.
Wygoda selekcji danych – korzystanie z wizardów wyboru danych w aplikacji Qlik Sense „po staremu” tak jak w Qlik Sense Client Managed lub w QlikView. Brak obsługi sterowników ODBC (w Qlik Cloud nie możemy „wgrać” własnych sterowników).
Obsługa całkowicie w Hubie Qlik Cloud.

Ad 2. Qlik Data Transfer

Był to pierwszy stworzony przez Qlika program do przesyłu danych do chmury Qlik, zaraz po uruchomieniu usługi Cloud. Instalowany lokalnie na serwerze firmowym, po uruchomieniu działa jako serwis lokalny. Dane „wypycha” do chmury Qlik z użyciem odwołań przez API do dzierżawy Qlik Cloud, przez HTTPS.

W pierwszym kroku dane generowane są lokalnie (do postaci QVD), następnie wysyłane do chmury. Dotyczy to każdego z trzech sposobów konfiguracji:

  1. Monitorowanie folderu z plikami (w tym pliki „płaskie”!) i wysyłanie nowych oraz zaktualizowanych plików.
  2. Tworzenie połączeń do pojedynczych tabel w lokalnych bazach danych. Każde z takich połączeń może, według harmonogramu, pobierać dane (chwilowo do QVD), a następnie wysyłać do chmury Qlik. Wymagane jest tyle połączeń, ile tabel chcemy pobrać i wysłać.
  3. Uruchamianie wskazanej aplikacji Qlik Sense (Qlik Data Transfer zawiera w sobie silnik przetwarzania danych Qlik), a po wykonaniu skryptu przeładowania danych w aplikacji, zapisuje cały model do QVD i transferuje QVD do chmury. Ciekawe rozwiązanie, gdyż skrypt w aplikacji może już na tym etapie procesować surowe dane i do chmury przesyłać przetworzone tabele.

Każdy z powyższych sposobów transferu może dodatkowo wywołać przeładowania w chmurze wskazanej aplikacji Qlik Sense (na przykład aplikacji wczytującej do siebie przesłane dane).

Zobacz, jak skonfigurować Qlik Data Transfer:

  • Prosta instrukcja instalacji: Sprawdź
  • Prosta instrukcja konfiguracji przesyłu danych: Sprawdź 
ZALETY WADY
Łatwość instalacji i konfiguracji Bywa niestabilne, zwłaszcza przy dużych tabelach.
Może być instalowane na tym samym serwerze, na którym mamy uruchomiony na przykład Qlik Sense Client Managed. Ma ograniczenie wielkości (w GB) przesyłanej tabeli.
Z reguły bezpieczniejsze, niż otwarcie serwera bazodanowego. Do obsługi (zmiany i dodawania źródeł) wymaga logowania się na serwer (RDP), praca nie ogranicza się do Huba Qlik Sense Cloud.
Pozwala na obsługę sterowników ODBC.
Pozwala przesyłać do chmury pliki płaskie (CSV, Excel).

Ad 3. Qlik Data Gateway: Direct Access

Działa w pełni bezpiecznie za firmowym firewallem. Używa szyfrowania danych, przesyła je wzajemnie uwierzytelnionym połączeniem – „tunelem”. Pozwala korzystać ze źródeł lokalnych w tak wygodny sposób, jak gdyby oba serwery (chmura i lokalny ze źródłem danych) znajdowały się w tej samej sieci. Qlik z chmury wysyła zapytanie do Qlik Data Gateway, serwis ten, lokalnie, przesyła zapytanie do odpowiedniej bazy, następnie odpowiedź (pobierane dane) jest przesyłana bezpośrednio do dysków chmurowych Qlik Cloud przez WS-Security (nie przez HTTPS).

ZALETY WADY
Wygodna selekcja danych natywnym interfejsem Qlika prosto do aplikacji. Wymagana nieco bardziej złożona instalacja na serwerze lokalnym.
Bezpośredni transfer danych do chmury, bez przechowywania ich w etapach pośrednich. Wskazana instalacja na serwerze innym niż źródło danych i innym niż Qlik Sense Client Managed – ze względu na obciążenie serwera w czasie pracy. Może wymagać dodatkowej inwestycji w infrastrukturę.
Niezawodne i wydajne. W tej chwili (luty 2023) brak obsługi sterowników ODBC, ale gdy czytasz ten tekst, zapowiedź dodania tej opcji może już być zrealizowana.
Po instalacji – obsługa całkowicie w Hubie Qlik Sense Cloud.

Ad 4. QDI – Qlik Data Integration

Qlik Data Integration to zestaw narzędzi innej klasy, niż wymienione wyżej przykłady. Jest to chmurowa implementacja przejętego przez Qlik produktu Attunity Compose i Replicate. W osobnym zestawie narzędzi (choć nadal w tym samym Hubie Qlik Sense Cloud) projektujemy strumieniowe przesyłanie danych ze źródeł lokalnych do dysków chmury. Na serwerze lokalnym również (jak w punkcie poprzednim) wymagany jest Qlik Data Gateway – ale w wersji „Data Movement” (nie „Direct Access”).

Rozwiązanie wymaga nieco większej inwestycji w implementację i infrastrukturę (potrzebny lokalny serwer Linux oraz przesiadkowe zasoby dyskowe np. AWS), dlatego zalecany jest przy większych zbiorach danych. Charakteryzuje się za to stabilnością, możliwością projektowania przetwarzania danych w momencie transferu oraz samodzielną obsługą przyrostowego ładowania danych (tak zwane CDC – Change Data Capture). Jest to narzędzie klasy ETL.

Co najciekawsze, narzędzie może służyć do migracji danych między środowiskami, z których żadne nie jest Qlikiem! Przykładowo: dane lokalne do Snowflake, dane SAP do BigQuery itd.

ZALETY WADY
Stabilne rozwiązanie obsługujące duże wolumeny danych. Wymaga dodatkowej inwestycji w lokalny serwer Linux oraz przesiadkowy zasób dyskowy (np. AWS).
Samodzielnie obsługuje przyrostowe ładowanie danych (tak zwane CDC – Change Data Capture). Wymaga wiedzy specjalistycznej do obsługi projektowania przesyłu, uruchomienia serwera Linux i uruchomienia zasoby AWS.
Po instalacji obsługa całkowicie w Hubie Qlik Sense Cloud.
Pozwala na projektowanie przetwarzania danych na etapie transferu – narzędzie klasy ETL.
Ma szerokie zastosowania – może transferować dane między systemami, z których żaden nie jest Qlikiem!

Pliki płaskie, konfiguracyjne (Excel, CSV)

W rozwiązaniach 1, 3 (tu nastąpi niedługo zmiana) i 4, by przesyłać do chmury często występujące konfiguracyjne pliki płaskie z danymi, musimy zastosować dodatkowe rozwiązanie.

Może to być:

  • przechowywanie plików w OneDrive / SharePoint. Pliki są łatwo dostępne dla użytkowników – mogą „podpiąć” folder z plikami do swoich komputerów i edytować je w miejscu przechowywania,
  • ręczne wgrywanie plików do Qlik Cloud. Dobre rozwiązanie w przypadku plików konfiguracyjnych, które zmieniają się tylko raz na jakiś czas. Nie do plików danych źródłowych, które muszą być odświeżane codziennie.