Połączenia analityczne

Połączenia analityczne umożliwiają skonfigurowanie analiz zewnętrznych z posiadanym rozwiązaniem Business Discovery. Połączenia analityczne rozszerzają wyrażenia, które mogą być używane w skryptach ładowania i wykresach, ponieważ wywołuje zewnętrzny silnik obliczeń (w takim przypadku silnik obliczeń działa jak rozszerzenie po stronie serwera (SSE)). Można na przykład utworzyć połączenie analityczne do języka R i używać wyrażeń statystycznych podczas ładowania danych.

Tworzenie połączenia analitycznego

Zarówno w przypadku programu QlikView Desktop, jak i programu QlikView Server (QVS), połączenia analityczne są tworzone poprzez edycję pliku Settings.ini

Uwaga: Przed rozpoczęciem edycji pliku Settings.ini program QlikView Desktop musi zostać zamknięty.
Przed rozpoczęciem edycji pliku Settings.ini program QlikView Server musi zostać zatrzymany.
Po dodaniu nowych połączeń lub zmianie istniejących połączeń wymagany jest restart w celu zastosowania zmian.
Uwaga: Serwer wtyczki SSE musi działać przed uruchomieniem programu QlikView, ponieważ w przeciwnym wypadku połączenie nie zostanie nawiązane.

Wykonaj następujące czynności:

  1. Otwórz plik Settings.ini.
    W przypadku programu QlikView Desktop plik ten znajduje się w katalogu C:\Users\nazwa_użytkownika\AppData\Roaming\QlikTech\QlikView.
    W przypadku programu QlikView Server plik ten znajduje się w katalogu C:\ProgramData\QlikTech\QlikViewServer.
  2. Dodaj następującą konfigurację:

    [Settings 7]
    SSEPlugin=<PluginConfig>[;<PluginConfig>...]

    Gdzie <PluginConfig> jest rozdzielaną przecinkami listą elementów konfiguracji, która zawiera następujące elementy:

    <EngineName>,<Address>[,<PathToCertFile>,<RequestTimeout>,<ReconnectTimeout>]

    Właściwość Opis
    <EngineName> Nazwa połączenia analitycznego. Musi być unikalna. Jest to mapowanie/alias do wtyczki, który będzie używany z wyrażeń w aplikacji. Właściwość <EngineName> jest wymagana w celu korzystania z funkcji wtyczki. Na przykład SSEPython dla wtyczki Python lub R dla wtyczki R.
    <Address>

    Rozdzielana dwukropkami lista z dwoma elementami:

    <Host>: nazwa DNS (lub adres IP) wtyczki.

    <Port>: Port, na którym nasłuchuje wtyczka.

    <PathToCertFile> Ścieżka w systemie plików do folderu zawierającego certyfikaty klienta wymagane do zapewnienia bezpiecznej komunikacji z wtyczką. Ta ścieżka wskazuje tylko na folder, w którym znajdują się certyfikaty. Należy sprawdzić, czy certyfikaty są rzeczywiście kopiowane do tego folderu. Trzy pliki certyfikatów muszą mieć następujące nazwy: root_cert.pem, sse_client_cert.pem, sse_client_key.pem. Dozwolone jest tylko uwierzytelnianie wzajemne (uwierzytelnianie serwera i klienta).
    Uwaga: Ustawienie ścieżki do pliku certyfikatu jest opcjonalne, ale w przypadku pominięcia zostanie wywołana komunikacja niezabezpieczona.
    <RequestTimeout> Wartość całkowita (liczba sekund). Opcjonalne. Wartość domyślna to 0 (czas nieskończony). Limit czasu trwania komunikatu.
    <ReconnectTimeout> Wartość całkowita (liczba sekund). Opcjonalne. Wartość domyślna to 20 (w sekundach). Czas, zanim klient podejmie próbę ponownego połączenia z wtyczką po utracie połączenia z wtyczką.
  1. Otwórz plik QlikView Batch Settings.ini i dodaj taką samą konfigurację, jak w kroku 2, co pozwoli na przeładowanie dokumentu.

    Domyślną lokalizacją tego pliku jest katalog C:\Windows\system32\config\systemprofile\AppData\Roaming\QlikTech\QlikViewBatch.

  2. Po zapisaniu zmian w pliku Settings.ini ponownie uruchom program QlikView. Po wykonaniu tych czynności możesz użyć połączenia analitycznego, dodając je za pomocą okna dialogowego Edytuj wyrażenie albo okna dialogowego Load Script (Skrypt ładowania).

Zabezpieczanie połączeń analitycznych

W celu wzmocnienia zabezpieczeń środowiska QlikView podczas korzystania z połączenia analitycznego rozważ zastosowanie następujących sprawdzonych rozwiązań:

  • Zainstaluj i uruchom wtyczkę rozszerzenia po stronie serwera (SSE) w osobnym, izolowanym środowisku bez praw administratora. Aby zminimalizować szkody w przypadku złośliwego skryptu, dowiedz się, które konto użytkownika uruchamia wtyczkę i jakie prawa dostępu ma ten użytkownik w odniesieniu do komputera i domeny.
  • W celu poprawy zabezpieczeń można wyłączyć funkcję EvaluateScript poprzez ustawienie parametru konfiguracji allowScript na wartość false (fałsz) w pliku konfiguracyjnym wtyczki SSE. To uniemożliwi wykonywanie skryptów niewiadomego pochodzenia i umożliwi uruchamianie tylko predefiniowanych funkcji przez wtyczkę SSE.
  • Programistom aplikacji, którzy tworzą dokumenty programu QlikView, zaleca się ustawianie dowolnych zmiennych używanych w wyrażeniu SSE na format z ograniczeniami; na przykład można ograniczyć format zmiennej tylko do wartości liczbowych.

Ograniczenia w przypadku korzystania z połączeń analitycznych

Funkcjonalność połączeń analitycznych jest wyłączona w przypadku tworzenia nowego udostępnionego obiektu serwera.

Skopiowanie istniejącego obiektu arkusza zawierającego wyrażenie połączenia analitycznego powoduje automatyczne wyłączenie edytora właściwości wykresu. Oznacza to, że właściwości wykresu dla tego obiektu arkusza nie są już dostępne.

Przykłady

Poniższe przykłady przedstawiają sposób konfiguracji wtyczki rozszerzenia po stronie serwera (SSE). W tym przykładzie używana jest wtyczka Python i definiowany jest co najmniej jeden serwer.

  • Jeden serwer wtyczki SSE: SSEPlugin=SSEPython,localhost:50051
  • Dwa serwery wtyczki SSE: SSEPlugin=SSEPython,localhost:50051;R,localhost:50053
  • Jeden serwer wtyczki SSE jest zdefiniowany bez ścieżki certyfikatu, ale z ustawionymi limitami czasu: SSEPlugin=SSEPython,localhost:50051,,0,20