Przeskocz do zawartości głównej

Qlik Sense GeoOperations

Produkt Qlik Sense GeoOperations umożliwia wykonywanie obliczeń geograficznych i korzystanie z funkcji do obliczania tras lub obszarów podróży. Można także ładować dane geograficzne z plików shapefile GeoJSON i ESRI.

Qlik Sense Enterprise SaaS - Government (US) nie obsługuje Qlik Sense GeoOperations.

Produkt Qlik Sense GeoOperations jest dostępny jako integracja analiz zaawansowanych z Qlik Sense GeoAnalytics do Qlik Cloud Services.

Qlik Sense GeoOperations umożliwia rozwiązywanie problemów geograficznych z danymi, takich jak:

  • ustalenie, ilu klientów mieszka w odległości 15 minut jazdy od lokalizacji sklepu;
  • łączenie pozycji GPS z miejscami, regionami lub sieciami dróg;
  • budowanie niestandardowych regionów sprzedaży z listy gmin;
  • znalezienie najbliższego szpitala dla listy pacjentów.

Funkcje GeoOperations można stosować w skryptach — zarówno w skryptach ładowania danych, jak i wyrażeniach wizualizacji. Funkcje GeoOperations umożliwiają ładowanie zestawów danych geograficznych z plików zewnętrznych lub z usługi lokalizacji Qlik GeoAnalytics. Funkcji GeoOperations można też używać do przekształcania danych geograficznych lub do obliczeń.

Uwaga: Aby zapoznać się z przykładem wykorzystania GeoOperations, zobacz przykład GeoOperations.

Jak działa GeoOperations

Qlik Sense GeoOperations działa, wysyłając małe fragmenty skryptu i opcjonalnie tabelę do rozszerzenia GeoOperations w skrypcie ładowania. Rozszerzenie następnie zwraca dane. GeoOperations udostępnia obiekt Integracji analiz zaawansowanych o nazwie GeoOperations w języku skryptowym, który oferuje funkcję ScriptEval do wysyłania skryptu i tabeli do rozszerzenia. Na przykład poniżej przedstawiono skrypt ładowania mający na celu zastosowanie operacji TravelAreas do poprzednio załadowanej tabeli MyPoints i określenia parametrów wielkości/kosztu obszaru podróży:

Load * Extension GeoOperations.ScriptEval('TravelAreas(costValue="10", costUnit="Minutes")', MyPoints);

 

Skrypt jest wysyłany jako pierwszy parametr do funkcji ScriptEval, a tabela jako drugi.

GeoOperations to funkcje działające na zestawach danych. Zestawy danych pochodzą z danych załadowanych w Qlik Sense lub ze źródeł zewnętrznych, takich jak pliki geograficzne lub usługa lokalizacji. Dane wysyłane ze skryptu są dostępne jako zestaw danych o nazwie INTABLE. Aby określić dodatkowe parametry tych danych, należy je zadeklarować po wywołaniu funkcji jako DATASOURCE. Na przykład:

Load * Extension GeoOperations.ScriptEval('TravelAreas(costValue="10", costUnit="Minutes")

DATASOURCE myPoints INTABLE pointField="Point"', MyPoints);

 

Inne typy źródeł danych zawsze muszą być deklarowane, a parametry, takie jak adresy URL, muszą być określane. W każdej operacji można określić używane źródła danych. Domyślnie operacje używają takiej deklaracji do wybierania dostępnych zestawów danych.

Gdzie używać GeoOperations

Wszystkie operacje mogą być stosowane w skrypcie ładowania danych. Niektórych operacji można także używać w skryptach wykresów do map w celu umożliwienia obliczeń dynamicznych. Za każdym razem, gdy wybór się zmienia, uruchamiana jest operacja. Kiedy GeoOperations są wykorzystywane na wykresach, dane nie trafiają do modelu danych, co uniemożliwia ich dalszą analizę.

Wybieranie i zmiana nazw pól GeoOperations

Funkcje GeoOperations zwracają pola. Wszystkie pola są domyślnie zwracane i uwzględniane. Możesz poprzedzić funkcje GeoOperations instrukcją SELECT, aby zarówno wybrać określone pola, jak i opcjonalnie zmienić ich nazwy. Na przykład ten skrypt używa instrukcji SELECT do załadowania tylko dwóch pól kodu pocztowego z usługi lokalizacji:

Load * Extension GeoOperations.ScriptEval('

SELECT Name as PostalCode, LocationArea FROM

Load() DATASOURCE PostalCodes LOCATIONSERVICE type="PostalCode", country="se"');

 

Użycie instrukcji SELECT w skrypcie GeoOperations może być bardziej efektywne niż określanie pól w instrukcji Qlik LOAD, ponieważ dane nie są ładowane do Qlik Sense, jeśli nie zostały wybrane w skrypcie GeoOperations.

Instrukcji SELECT można użyć, aby uniknąć obliczania niektórych pól — w tym celu wybiera się niezwracanie ich w wynikach. Na przykład można wykluczyć względne nakładające się pola zwracane przez Intersects.

Uwaga:

Jeśli wielokrotnie używasz tej samej operacji w skrypcie ładowania, użyj instrukcji SELECT, aby zmienić nazwy pól.

Ograniczenia

Następujące ograniczenia dotyczą maksymalnego rozmiaru zestawów danych:

  • Maksymalna liczba wierszy: 50 000
  • Maksymalny rozmiar zestawu danych w pamięci: 150 MB
  • Maksymalna liczba wierszy z kierowaniem: 400
  • Maksymalna liczba wierszy z wyszukiwaniem nazw: 20 000

Niektóre operacje obsługują przesyłanie strumieniowe danych z aparatu Qlik. Dane przesyłane strumieniowo z aparatu Qlik mogą być większe, ale nadal obowiązuje limit rozmiaru dla kierowania.

Składnia skryptu

Skrypt, który można wysłać do GeoOperations, ma następującą składnię.

Syntax:  

script ::= [ SELECT (* | select_field,...) FROM ] operation ( [parameter,...] ) {datasource_declaration}

select_field ::= field_name [ AS alias_name ]

parameter ::= parameter_name = "parameter_value"

datasource_declaration ::= DATASOURCE datasource_name datasource_type [parameter,...]

  • field_name — nazwa pola w zwracanej tabeli, opcjonalnie ujęta w []
  • alias_name — nazwa, na którą należy zmienić nazwę pola, opcjonalnie ujęta w []
  • operation — jedna z operacji w Operacji
  • parameter_name — nazwa parametru dla operacji
  • parameter_value — wartość parametru (zawsze ujęta w cudzysłów)
  • datasource_name — nazwa, którą powinno mieć to źródło danych, jeśli jest ono przywoływane w parametrach operacji
  • datasource_type — jeden z zestawów danych w Zestawie danych

W nazwach parametrów i nazwach pól rozróżniana jest wielkość liter, ale w operacjach, opcjach parametrów (takich jak meters, minutes, itp.) lub słowach kluczowych, takich jak SELECT i FROM, nie jest ona rozróżniana.