Migratie van GeoAnalytics-connector naar Qlik GeoOperations
Qlik GeoOperations in Qlik Cloud biedt functies en bewerkingen die vergelijkbaar zijn met wat GeoAnalytics-connector doet in Qlik Sense Enterprise on Windows. Ze bieden ook ondersteuning voor veel van dezelfde gegevensindelingen. Ze verschillen op de volgende punten:
-
Qlik GeoOperations is een geavanceerde analyse-integratie (AAI), wat geschikter is voor het verzenden en verwerken van gegevens dan een connector.
-
Scriptsyntaxis verschilt voor geavanceerde analyse-integratie in vergelijking met connectors.
-
Sommige GeoOperations kunnen ook worden gebruikt in diagramuitdrukkingen.
-
Qlik GeoOperations retourneert één enkele tabel. Vergeleken met wat de GeoAnalytics-connector retourneert, zijn de tabellen in Qlik GeoOperations samengevoegd.
-
In Qlik GeoOperations hebben sommige velden en parameters een andere naam gekregen omwille van de consistentie.
Hieronder ziet u de stappen waarmee het script dat is geproduceerd door de GeoAnalytics-connector Wizard kan worden geconverteerd naar Qlik GeoOperations:
- In de GeoAnalytics-connector-scriptcode in de editor voor het laden van gegevens kopieert u alles na SQL tot aan de tweede SELECT of tot aan ";", afhankelijk van wat het eerst komt.
- Vervang de ' op alle plaatsen in het GeoAnalytics-connector-script door ".
-
Voeg de geselecteerde veldnamen uit de secundaire SELECT-opdracht in het GeoAnalytics-connector-script toe aan de eerste SELECT-opdracht in het GeoOperations-script. Doe dat niet voor velden die er al zijn. Voeg de naam van de brontabel toe aan de veldnamen, gescheiden door een punt. Bijvoorbeeld tabel.veld. Hiermee wordt één enkele samengevoegde tabel gemaakt in plaats van meerdere tabellen.
-
Raadpleeg de referentiedocumentatie voor de bewerking en gegevensverzameling en pas waar nodig parameter- of veldnamen aan.
Voor een overzicht van de belangrijkste verschillen raadpleegt u Verschillen tussen velden van GeoOperations en GeoAnalytics
-
Voeg het volgende toe aan het begin van het GeoOperations-script:
Load * Extension GeoOperations.ScriptEval('
-
Voeg het volgende toe aan het einde van het GeoOperations-script:
');
Als u een geladen tabel met de GeoAnalytics-connector gebruikt, verzendt u het in plaats daarvan als de tweede parameter naar GeoOperations.ScriptEval.
Aangezien Qlik GeoOperations een samengevoegde tabel retourneert, worden alleen veldwaarden met een corresponderende waarde in de primaire tabel geretourneerd uit de secundaire tabellen. Als u bijvoorbeeld voor sommige punten de dichtstbijzijnde luchthavens in Duitsland wilt vinden, worden alleen gegevens geretourneerd over luchthavens die het dichtst bij de punten liggen. Als u alle luchthavens in Duitsland wilt zien, moeten ze afzonderlijk worden geladen met de bewerking LOAD.
Als u gegevens laadt vanuit een SQL-database met de connector, moeten de gegevens in plaats daarvan worden geladen met een van de databaseconnectors, zoals de ODBC-connector. Zorg ervoor dat de geometrieën worden geladen als WKT (gebruik daarvoor in de SQL-query een functie die meestal de naam st_asText() heeft). Converteer vervolgens het WKT-veld door de tabel naar Qlik GeoOperations te verzenden. Vervolgens wordt een veld geretourneerd met de geometrieën in de Qlik Sense-indeling.
Voorbeeld van scriptconversie
In dit voorbeeld van een scriptconversie wordt het volgende GeoAnalytics-connector-script gebruikt:
Doe het volgende:
-
Gebruik het deel van het script tussen SQL en de tweede SELECT-opdracht.
SELECT [LocationDbId], [Clusters_ClusterID] FROM Cluster(distance='10000', points='Points') DATASOURCE Points LOCATIONSERVICE geometry='POINT', type='XIATA', country='de', serviceName='default' -
Vervang aanhalingstekens:
SELECT [LocationDbId], [Clusters_ClusterID] FROM Cluster(distance="10000", points="Points") DATASOURCE Points LOCATIONSERVICE geometry="POINT", type="XIATA", country="de", serviceName="default" -
Voeg velden toe uit secundaire tabellen:
SELECT [LocationDbId], [Clusters_ClusterID], [Clusters.Clusters_ClusterCenter] FROM Cluster(distance="10000", points="Points") DATASOURCE Points LOCATIONSERVICE geometry="POINT", type="XIATA", country="de", serviceName="default" -
Pas parameter- en veldnamen aan:
SELECT [LocationDbId], [ClusterID], [Clusters.ClusterPoint] as [Clusters_ClusterCenter] FROM Cluster(distance="10000", points="Points") DATASOURCE Points LOCATIONSERVICE geometry="POINT", type="XIATA", country="de", serviceName="default" -
Sluit dit in de boilerplate-code in:
Load * Extension GeoOperations.ScriptEval(' SELECT [LocationDbId], [ClusterID], [Clusters.ClusterPoint] as [Clusters_ClusterCenter] FROM Cluster(distance="10000", points="Points") DATASOURCE Points LOCATIONSERVICE geometry="POINT", type="XIATA", country="de", serviceName="default" ');
Deze scriptcode kan nu worden gebruikt met Qlik GeoOperations.
Verschillen tussen velden van GeoOperations en GeoAnalytics
De standaardvelden van scripts voor GeoOperations en GeoAnalytics bevatten verschillen, met name als het gaat om prefixes. Als u uw GeoAnalytics-scripts migreert naar GeoOperations, moet u mogelijk enkele veldnamen wijzigen.
AddressToPoint
GeoOperations en GeoAnalytics retourneren de volgende velden:
-
GeoOperations: <id>, Address, AddressPoint, CountryIso2, Adm1, City, PostalCode, Street, HouseNumber, Match
-
GeoAnalytics: [<id>], [Dataset_Address], [Dataset_Geometry], [CountryIso2], [Dataset_Adm1], [Dataset_City], [Dataset_PostalCode], [Dataset_Street], [Dataset_HouseNumber], [Dataset_Match]
GeoAnalytics en GeoOperations verschillen op de volgende punten:
-
GeoAnalytics velden bevatten prefixes van de gegevensverzameling.
-
Dataset_Geometry heeft de naam AddressPoint in GeoOperations.
Binning
GeoOperations en GeoAnalytics retourneren de volgende velden:
-
GeoOperations: <id>, BinId, BinTable.BinPolygon, BinTable.CenterPoint
-
GeoAnalytics: [<id>], [RH2W3], [RH2W3_CenterPoint]
GeoAnalytics en GeoOperations verschillen op de volgende punten:
-
In GeoAnalytics, RH2W3 is het polygoonveld en de bijbehorende naam gegenereerd op basis van grootte/verhouding van het raster. In GeoOperations is dit het veld BinTable.BinPolygon.
-
GeoAnalytics heeft geen BinId veld.
Dichtstbijzijnde
GeoOperations en GeoAnalytics retourneren de volgende velden:
-
GeoOperations: dataset_dataset2_RelationId, dataset.<ds1 id>, dataset2.<ds2 id>, Distance
-
GeoAnalytics: [Dataset1_Dataset2_RelationId], [Dataset1.<ds1 id>], [Dataset2.<ds2 id>], [Dataset1_Dataset2_Distance]
GeoAnalytics en GeoOperations verschillen op de volgende punten:
-
GeoOperations heeft geen prefixes voor het veld Distance.
Cluster
GeoOperations en GeoAnalytics retourneren de volgende velden:
-
GeoOperations: <id>, ClusterID, Clusters.ClusterPoint, Clusters.PointCount
-
GeoAnalytics: [<id>], [Clusters_ClusterID], [Clusters_ClusterCenter], [Clusters_PointCount]
GeoAnalytics en GeoOperations verschillen op de volgende punten:
-
Prefixes zijn verschillend in GeoOperations en GeoAnalytics.
Oplossen
GeoOperations en GeoAnalytics retourneren de volgende velden:
-
GeoOperations: <id>, DissolvedPolygon
-
GeoAnalytics: [<id>], [<id>_Geometry]
GeoAnalytics en GeoOperations verschillen op de volgende punten:
-
Naam van de geometriekolom
Snijpunten
GeoOperations en GeoAnalytics retourneren de volgende velden:
-
GeoOperations: dataset_dataset2_RelationId, dataset.<dataset1 id>, dataset2.<dataset2 id>, dataset.RelativeOverlap, dataset2.RelativeOverlap
-
GeoAnalytics: [Dataset1_Dataset2_RelationKey], [Dataset1.<ds1 id>], [Dataset2.<ds1 id>], [Dataset1_RelativeOverlap], [Dataset2_RelativeOverlap]
GeoAnalytics en GeoOperations verschillen op de volgende punten:
-
Prefixes zijn verschillend in GeoOperations en GeoAnalytics.
IpLookup
GeoOperations en GeoAnalytics retourneren de volgende velden:
-
GeoOperations: <id>, IpPoint, CountryIso2, Adm1Code, City
-
GeoAnalytics: [<id>], [IpTable_Geometry], [CountryIso2], [IpTable_Adm1Code], [IpTable_City]
GeoAnalytics en GeoOperations verschillen op de volgende punten:
-
IpTable_Geometry in GeoAnalytics is IpPoint in GeoOperations.
-
Prefixes zijn verschillend in GeoOperations en GeoAnalytics.
Load (locatie-gegevensverzameling)
GeoOperations en GeoAnalytics retourneren de volgende velden:
-
GeoOperations (area): LocationDbId, LocationPolygon, Name, CountryIso2, Adm1Code, Adm2Code, LocationDbType
-
GeoOperations (point): LocationDbId, LocationPoint, Name, CountryIso2, Adm1Code, Adm2Code, LocationDbType
-
GeoAnalytics: [LocationDbId], [Dataset_Geometry], [Dataset_Name], [CountryIso2], [Dataset_Adm1Code], [Dataset_Adm2Code], [LocationDbType]
GeoAnalytics en GeoOperations verschillen op de volgende punten:
-
De geometrievelden (LocationPolygon en LocationPoint in GeoAnalytics zijn Dataset_Geometry in GeoOperations.
-
Prefixes zijn verschillend in GeoOperations en GeoAnalytics.
PointToAddress
GeoOperations en GeoAnalytics retourneren de volgende velden:
-
GeoOperations: <id>, Address, AddressPoint, CountryIso2, Adm1, City, PostalCode, Street, HouseNumber, Distance
-
GeoAnalytics: [<id>], [Dataset_Address], [Dataset_Geometry], [CountryIso2], [Dataset_Adm1], [Dataset_City], [Dataset_PostalCode], [Dataset_Street], [Dataset_HouseNumber], [Dataset_Distance]
GeoAnalytics en GeoOperations verschillen op de volgende punten:
-
Prefixes zijn verschillend in GeoOperations en GeoAnalytics.
Routes
GeoOperations en GeoAnalytics retourneren de volgende velden:
-
GeoOperations: <id>, Distance, Duration, Status, LowResLine
-
GeoAnalytics: [<id>], [Dataset_Distance], [Dataset_Duration], [Dataset_Status], [Dataset_PathLowRes]
GeoAnalytics en GeoOperations verschillen op de volgende punten:
-
Het geometrieveld Dataset_PathLowRes in GeoAnalytics is LowResLine in GeoOperations.
-
Prefixes zijn verschillend in GeoOperations en GeoAnalytics.
Vereenvoudigen
GeoOperations en GeoAnalytics retourneren de volgende velden:
-
GeoOperations: <id>, Simplified_<geo field name>
-
GeoAnalytics: [<id>], [Dataset_Simplified_Geometry]
.GeoAnalytics en GeoOperations verschillen op de volgende punten:
-
De namen van de geometrievelden zijn verschillend in GeoOperations en GeoAnalytics.
TravelAreas
GeoOperations en GeoAnalytics retourneren de volgende velden:
-
GeoOperations: <id>, TravelArea, Cost, CostUnit, Status
-
GeoAnalytics: [<id>], [Dataset_TravelArea], [Dataset_Origin], [Dataset_Cost], [Dataset_CostUnit], [Dataset_Status]
GeoAnalytics en GeoOperations verschillen op de volgende punten:
-
GeoOperations bevat geen herkomstveld.
-
Prefixes zijn verschillend in GeoOperations en GeoAnalytics.
Binnen
GeoOperations en GeoAnalytics retourneren de volgende velden:
-
GeoOperations: dataset_dataset2_RelationId, dataset.<dataset1 id>, dataset2.<dataset2 id>
-
GeoAnalytics: [Enclosed_Enclosing_RelationId], [Enclosed.<dataset 1/2 id>], [Enclosing.<datasets 1/2 id>]
GeoAnalytics en GeoOperations verschillen op de volgende punten:
-
GeoOperations prefixes bevatten namen van gegegevensverzamelingen, terwijl GeoAnalytics ook de prefix Enclosed bevat.