Saltar al contenido principal

Migrar de Conector GeoAnalytics a Qlik GeoOperations

Qlik GeoOperations en Qlik Cloud ofrece características y operaciones similares a las que ofrece Conector GeoAnalytics dentro de Qlik Sense Enterprise on Windows. También admiten muchos de los mismos formatos de datos. Tienen las siguientes diferencias:

  • Qlik GeoOperations es una integración analítica avanzada (AAI) que resulta más adecuada para enviar y procesar datos que un conector.

  • La sintaxis de script es diferente para las integraciones de Advanced Analytics que para los conectores.

  • Parte de GeoOperations también se puede utilizar en las expresiones de gráfico.

  • Qlik GeoOperations devuelve una única tabla. En comparación con lo que devuelve Conector GeoAnalytics, las tablas se unen en Qlik GeoOperations.

  • En Qlik GeoOperations, se ha cambiado el nombre de algunos campos y parámetros para una mayor coherencia.

A continuación se describe cómo convertir el script producido por el asistente de Conector GeoAnalytics a Qlik GeoOperations:

  1. En el Editor de carga de datos, en el código de script de Conector GeoAnalytics, copie todo lo que viene después de SQL hasta el segundo SELECT o ";", el que aparezca primero.
  2. Reemplace todos los ' del script de Conector GeoAnalytics por ".
  3. Añada los nombres de los campos seleccionados de la sentencia secundaria SELECT en el script de Conector GeoAnalytics a la primera sentencia SELECT del script de GeoOperations. Omita los campos que ya existen. Añada el nombre de la tabla de origen a los nombres de los campos, separándolos con un punto. Por ejemplo, table.field. Esto creará una única tabla unida en lugar de varias tablas.

  4. Revise la documentación de referencia de la operación y el conjunto de datos y ajuste los nombres de los parámetros o campos cuando sea necesario.

    Operación

    Conjunto de datos

    Para obtener un resumen de las diferencias más destacadas, consulte Diferencias de campos entre GeoOperations y GeoAnalytics

  5. Añada lo siguiente al inicio del script de GeoOperations:

    Load * Extension GeoOperations.ScriptEval('

  6. Añada lo siguiente al final del script de GeoOperations:

    ');

Si se utiliza una tabla cargada con Conector GeoAnalytics, envíela como segundo parámetro a GeoOperations.ScriptEval en su lugar.

Como Qlik GeoOperations devuelve una tabla unida, las tablas secundarias solo devolverán los valores de los campos que tengan un valor correspondiente en la tabla primaria. Por ejemplo, si desea encontrar los aeropuertos más cercanos para algunos puntos de Alemania, solo se devuelven los datos sobre los aeropuertos más cercanos a los puntos. Si desea todos los aeropuertos de Alemania, hay que cargarlos por separado con una operación LOAD.

Si se cargan desde una base de datos SQL con el conector, los datos deben cargarse con uno de los conectores de base de datos, como el conector ODBC. Asegúrese de cargar las geometrías como WKT (aplicar una función normalmente denominada st_asText() en la consulta SQL). A continuación, convierta el campo WKT enviando la tabla a Qlik GeoOperations. A continuación, devolverá un campo con las geometrías en el formato Qlik Sense.

Ejemplo de conversión de script

Este ejemplo de conversión de script utiliza el siguiente script de Conector GeoAnalytics:

/* Generated by GeoAnalytics for operation Cluster ---------------------- */ [ClusterAssociations]: SQL SELECT [LocationDbId], [Clusters_ClusterID] FROM Cluster(distance='10000', points='Points') DATASOURCE Points LOCATIONSERVICE geometry='POINT', type='XIATA', country='de', serviceName='default' SELECT [Clusters_ClusterID], [Clusters_ClusterCenter] FROM Clusters; [Clusters]: SQL LOAD * FROM Clusters; tag field [LocationDbId] with '$primarykey'; tag field [Clusters_ClusterID] with '$primarykey'; tag field [Clusters_ClusterCenter] with '$geopoint'; tag field [Clusters_ClusterID] with '$geoname'; tag field [Clusters_ClusterCenter] with '$relates_Clusters_ClusterID'; tag field [Clusters_ClusterID] with '$relates_Clusters_ClusterCenter'; /* End GeoAnalytics operation Cluster ----------------------------------- */

Haga lo siguiente:

  1. Tome la secuencia de script entre SQL y la segunda sentencia SELECT.

    SELECT [LocationDbId], [Clusters_ClusterID] FROM Cluster(distance='10000', points='Points') DATASOURCE Points LOCATIONSERVICE geometry='POINT', type='XIATA', country='de', serviceName='default'
  2. Reemplace las comillas:

    SELECT [LocationDbId], [Clusters_ClusterID] FROM Cluster(distance="10000", points="Points") DATASOURCE Points LOCATIONSERVICE geometry="POINT", type="XIATA", country="de", serviceName="default"
  3. Agregue los campos desde las tablas secundarias:

    SELECT [LocationDbId], [Clusters_ClusterID], [Clusters.Clusters_ClusterCenter] FROM Cluster(distance="10000", points="Points") DATASOURCE Points LOCATIONSERVICE geometry="POINT", type="XIATA", country="de", serviceName="default"
  4. Ajuste los nombres de los parámetros y los campos:

    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"
  5. Inclúyalos en el código de la plantilla:

    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" ');

Este código de script ahora se puede utilizar con Qlik GeoOperations.

Diferencias de campos entre GeoOperations y GeoAnalytics

Los campos predeterminados entre los scripts de GeoOperations y GeoAnalytics tienen diferencias, normalmente en los prefijos. Cuando migre sus scripts de GeoAnalytics a GeoOperations, puede que necesite ajustar algunos de los nombres de campo.

AddressToPoint

GeoOperations y GeoAnalytics devuelven los siguientes campos:

  • 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 y GeoOperations tienen las siguientes diferencias:

  • GeoAnalytics los campos tienen prefijos del conjunto de datos.

  • Dataset_Geometry se denomina AddressPoint en GeoOperations.

Agrupamiento

GeoOperations y GeoAnalytics devuelven los siguientes campos:

  • GeoOperations: <id>, BinId, BinTable.BinPolygon, BinTable.CenterPoint

  • GeoAnalytics: [<id>], [RH2W3], [RH2W3_CenterPoint]

GeoAnalytics y GeoOperations tienen las siguientes diferencias:

  • En GeoAnalytics, RH2W3 es el campo del polígono y su nombre se genera en función del tamaño/proporción de la cuadrícula. En GeoOperations el campo es BinTable.BinPolygon.

  • GeoAnalytics no tiene un campo BinId.

Más cerca

GeoOperations y GeoAnalytics devuelven los siguientes campos:

  • 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 y GeoOperations tienen las siguientes diferencias:

  • GeoOperations no tiene ningún prefijo para el campo Distance.

Clúster

GeoOperations y GeoAnalytics devuelven los siguientes campos:

  • GeoOperations: <id>, ClusterID, Clusters.ClusterPoint, Clusters.PointCount

  • GeoAnalytics: [<id>], [Clusters_ClusterID], [Clusters_ClusterCenter], [Clusters_PointCount]

GeoAnalytics y GeoOperations tienen las siguientes diferencias:

  • Los prefijos son diferentes entre GeoOperations y GeoAnalytics.

Disolver

GeoOperations y GeoAnalytics devuelven los siguientes campos:

  • GeoOperations: <id>, DissolvedPolygon

  • GeoAnalytics: [<id>], [<id>_Geometry]

GeoAnalytics y GeoOperations tienen las siguientes diferencias:

  • Nombre de la columna de geometría.

Intersecciones

GeoOperations y GeoAnalytics devuelven los siguientes campos:

  • 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 y GeoOperations tienen las siguientes diferencias clave:

  • Los prefijos son diferentes entre GeoOperations y GeoAnalytics.

IpLookup

GeoOperations y GeoAnalytics devuelven los siguientes campos:

  • GeoOperations: <id>, IpPoint, CountryIso2, Adm1Code, City

  • GeoAnalytics: [<id>], [IpTable_Geometry], [CountryIso2], [IpTable_Adm1Code], [IpTable_City]

GeoAnalytics y GeoOperations tienen las siguientes diferencias:

  • IpTable_Geometry en GeoAnalytics es IpPoint en GeoOperations.

  • Los prefijos son diferentes entre GeoOperations y GeoAnalytics.

Load (conjunto de datos de ubicación)

GeoOperations y GeoAnalytics devuelven los siguientes campos:

  • 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 y GeoOperations tienen las siguientes diferencias:

  • Los campos de geometría (LocationPolygon y LocationPoint en GeoAnalytics son Dataset_Geometry en GeoOperations.

  • Los prefijos son diferentes entre GeoOperations y GeoAnalytics.

PointToAddress

GeoOperations y GeoAnalytics devuelven los siguientes campos:

  • 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 y GeoOperations tienen las siguientes diferencias:

  • Los prefijos son diferentes entre GeoOperations y GeoAnalytics.

Rutas

GeoOperations y GeoAnalytics devuelven los siguientes campos:

  • GeoOperations: <id>, Distance, Duration, Status, LowResLine

  • GeoAnalytics: [<id>], [Dataset_Distance], [Dataset_Duration], [Dataset_Status], [Dataset_PathLowRes]

GeoAnalytics y GeoOperations tienen las siguientes diferencias:

  • El campo de geometría Dataset_PathLowRes en GeoAnalytics es LowResLine en GeoOperations.

  • Los prefijos son diferentes entre GeoOperations y GeoAnalytics.

Simplificar

GeoOperations y GeoAnalytics devuelven los siguientes campos:

  • GeoOperations: <id>, Simplified_<geo field name>

  • GeoAnalytics: [<id>], [Dataset_Simplified_Geometry]

.GeoAnalytics y GeoOperations tienen las siguientes diferencias:

  • Los nombres del campo de geometría son diferentes entre GeoOperations y GeoAnalytics.

TravelAreas

GeoOperations y GeoAnalytics devuelven los siguientes campos:

  • GeoOperations: <id>, TravelArea, Cost, CostUnit, Status

  • GeoAnalytics: [<id>], [Dataset_TravelArea], [Dataset_Origin], [Dataset_Cost], [Dataset_CostUnit], [Dataset_Status]

GeoAnalytics y GeoOperations tienen las siguientes diferencias:

  • GeoOperations no incluye un campo de origen.

  • Los prefijos son diferentes entre GeoOperations y GeoAnalytics.

Dentro

GeoOperations y GeoAnalytics devuelven los siguientes campos:

  • 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 y GeoOperations tienen las siguientes diferencias:

  • Los prefijos de GeoOperations incluyen nombres de conjuntos de datos, mientras que GeoAnalytics también incluye el prefijo Enclosed.

Visit the discussion forum at community.qlik.com

¿Esta página le ha sido útil?

Si encuentra algún problema con esta página o su contenido (errores tipográficos, pasos que faltan o errores técnicos), no dude en ponerse en contacto con nosotros.