Tipos de datos y tipos semánticos

Cuando compilas un conector de comunidad, cada campo que defines en el esquema requiere un tipo de datos. El tipo de datos define el tipo primitivo del campo, como BOOLEAN, STRING, NUMBER, etcétera.

Además de los tipos de datos, Looker Studio también usa tipos semánticos. Los tipos semánticos ayudan a describir el tipo de información que representan los datos. Por ejemplo, un campo con un tipo de datos NUMBER puede representar semánticamente un importe o porcentaje de moneda, y un campo con un tipo de datos STRING puede representar semánticamente una ciudad. Para ver qué tipos semánticos están disponibles, consulta la documentación sobre tipos semánticos.

Esquema del conector de comunidad y campos de Looker Studio

Cuando defines el esquema para el conector de la comunidad, hay varias propiedades para cada campo que determinarán cómo se representa y se usa en Looker Studio. Por ejemplo:

  • El conceptType se define en el esquema del conector con la propiedad conceptType. Esta propiedad determina si el campo se trata como una dimensión o una métrica. Puedes encontrar una explicación de la diferencia entre las métricas y las dimensiones en Dimensiones y métricas.
  • El tipo semántico se puede definir en el esquema del conector, o bien Looker Studio lo puede detectar de forma automática según la propiedad de tipo de datos definida en el conector y los valores de datos que muestra. Consulta Detección automática de tipos semánticos para obtener detalles sobre cómo funciona.
  • El tipo de agregación determina si se pueden volver a agregar los valores de la métrica (se ignoran las dimensiones). Si configuras la propiedad semantics.isReaggregatable en true, se usará la agregación SUM de forma predeterminada; de lo contrario, se establecerá en Auto. También puedes configurar manualmente el tipo de agregación predeterminado para los campos reagregables mediante la propiedad defaultAggregationType.

Cuando configuras y te conectas con un conector en Looker Studio, el editor de campos muestra el esquema completo del conector según cómo definiste las propiedades anteriores. Si incluiste los tipos semánticos, se mostrarán como los definiste. Si usas la detección automática de tipos semánticos, los campos se mostrarán como se detectaron.Pantalla de campos

Configura la información semántica

Hay dos maneras de establecer información semántica. Puedes establecer la semántica de campo de forma manual o usar Looker Studio para que la detecte automáticamente.

Por ejemplo, si tienes un número que representa de forma semántica en dólares estadounidenses, Looker Studio no podrá detectar automáticamente este tipo semántico. Además, la detección semántica automática requiere que Looker Studio realice llamadas de recuperación de datos para cada campo de tu esquema. En cambio, si especificas el esquema de forma manual, no se realizará ninguna llamada de recuperación de datos. En caso de que conozcas el tipo semántico (p.ej., moneda, porcentaje, fecha, etc.) de tus datos, te recomendamos que lo configures de forma explícita en el esquema por motivos de precisión y rendimiento.

Configura manualmente los tipos semánticos (recomendado)

Si conoces los tipos semánticos, puedes definir semantics de forma manual para cada campo del esquema. Puedes encontrar los detalles completos sobre las propiedades disponibles en la página de referencia del campo. Si decides definir tipos semánticos manuales, se recomienda que definas semanticType y semanticGroup para cada campo. Si proporcionas estas propiedades de forma manual, no se ejecutará el proceso automático de detección del tipo semántico. Si configuras algunos de tus campos de forma manual, pero no todos, aquellos que no especifiques serán Text, Number o Boolean de forma predeterminada, según el dataType especificado para el campo.

A continuación, se muestra un ejemplo de un esquema simple que establece tipos semánticos de forma manual. Income se establece como moneda y Filing Year como fecha.

data-studio/semantics.gs
var schema = [
  {
    'name': 'Income',
    'label': 'Income (in USD)',
    'dataType': 'NUMBER',
    'semantics': {
      'conceptType': 'METRIC',
      'semanticGroup': 'CURRENCY',
      'semanticType': 'CURRENCY_USD'
    }
  }, {
    'name': 'Filing Year',
    'label': 'Year in which you filed the taxes.',
    'dataType': 'STRING',
    'semantics': {
      'conceptType': 'METRIC',
      'semanticGroup': 'DATE_OR_TIME',
      'semanticType': 'YEAR'
    }
  }
];

Cómo solucionar problemas de tipos semánticos manuales

Si configuras incorrectamente los tipos semánticos para los datos subyacentes, no funcionarán correctamente. Esto puede ser difícil de probar, pero hay algunas medidas que puedes tomar para detectar problemas.

  1. Muestra 2 o 3 filas de tus datos, en lugar de todas. Luego, inspecciónalos de forma manual.
  2. En Looker Studio, crea una tabla que solo use el campo que intentas verificar.
  3. Presta mucha atención a los campos Geo y Date, ya que tienen el formato más estricto.

Detección automática de tipos semánticos

Si no definiste ningún tipo semántico en tu esquema, Looker Studio intentará detectarlos automáticamente en función de la propiedad de tipo de datos y el formato de los valores de datos que muestra tu conector.

Los pasos del proceso de detección automática son los siguientes:

  1. Ejecuta la función getSchema del conector de la comunidad para solicitar el esquema.
  2. Itera a través de lotes de campos definidos en el esquema del conector y el problema getData solicita los campos. Las solicitudes getData se ejecutan con el parámetro sampleExtraction configurado como true para indicar que las solicitudes de datos se usan con el fin de la detección semántica.
  3. Identifica el tipo semántico del campo según el tipo de datos del campo y el formato del valor que muestra la solicitud getData.

Opciones para manejar la detección automática de tipos semánticos

Cuando Looker Studio ejecuta la función getData de un conector de la comunidad para la detección semántica, la solicitud entrante contendrá una propiedad sampleExtraction que se establecerá como true. Solo Looker Studio usa los datos que muestra el conector para identificar el tipo semántico del campo. Dado que el valor no se utilizará para ningún otro fin, no se requieren datos reales de tu fuente externa.

Existen varias formas de mejorar la detección de tipos semánticos en tu código:

  • Recomendado: Pasa valores predefinidos
    Muestra un valor predefinido para cada campo que mejor represente el tipo semántico del campo y que Looker Studio detecte de forma correcta. Por ejemplo, si el tipo semántico de un campo es Country, muestra un valor como IT para Italia. El otro beneficio de este enfoque es que es mucho más rápido, ya que no requiere que realices solicitudes HTTP al servicio de terceros para obtener datos.

  • Mostrar solo la cantidad n de registros
    Si el servicio de terceros desde el que recuperas datos admite límites de filas cuando se solicitan datos, muestra un pequeño subconjunto de filas a Looker Studio en lugar del conjunto de datos completo. Esto limitará la cantidad de datos que necesitas pasar a Looker Studio para cada solicitud de detección semántica.

  • Solicita todas las columnas y almacena la respuesta en caché
    Si es posible solicitar todas las columnas del servicio de terceros desde el que recuperas datos, en la primera solicitud de detección semántica recibida de Looker Studio, se recuperan todas las columnas y se almacenan los resultados en caché. Para las solicitudes de detección semántica posteriores, se recuperan los valores de las columnas de la caché en lugar de realizar solicitudes HTTP adicionales al servicio de terceros.

  • No hacer nada diferente
    Puedes optar por no implementar ninguna adaptación específica para las solicitudes en las que sampleExtraction se establece en true. Esto hará que el proceso de detección semántica sea más lento, ya que Looker Studio deberá recuperar todos los datos para este proceso. Además, esto afectará el porcentaje de solicitudes a tu fuente de datos externa, ya que muchas solicitudes de detección semántica se ejecutarán en paralelo.

Formatos reconocidos para la detección automática de tipos semánticos

Fecha y hora
  • YYYY/MM/DD-HH:MM:SS
  • YYYY-MM-DD [HH:MM:SS[.uuuuuu]]
  • YYYY/MM/DD [HH:MM:SS[.uuuuuu]]
  • YYYYMMDD [HH:MM:SS[.uuuuuu]]
  • Sat, 24 May 2008 20:09:47 GMT
  • 2008-05-24T20:09:47Z
  • Tiempo: epoch para segundo, micro, mili y nano.
Ubicación geográfica