Types de données et types sémantiques

Lorsque vous créez un connecteur de communauté, chaque champ que vous définissez dans le schéma nécessite un type de données. Le type de données définit le type primitif du champ, tel que BOOLEAN, STRING, NUMBER, etc.

En plus des types de données, Looker Studio utilise également des types sémantiques. Les types sémantiques aident à décrire le type d'informations que les données représentent. Par exemple, un champ avec un type de données NUMBER peut représenter sémantiquement une valeur monétaire ou un pourcentage, et un champ avec un type de données STRING peut représenter sémantiquement une ville. Pour savoir quels types de sémantiques sont disponibles, consultez la documentation sur les types sémantiques.

Champs du schéma du connecteur de communauté et de Looker Studio

Lorsque vous définissez le schéma de votre connecteur de communauté, différentes propriétés pour chaque champ déterminent la façon dont le champ est représenté et utilisé dans Looker Studio. Exemple :

  • Le conceptType est défini dans le schéma de votre connecteur à l'aide de la propriété conceptType. Cette propriété détermine si le champ est traité comme une dimension ou une métrique. Pour en savoir plus sur les différences entre les métriques et les dimensions, consultez la page Dimensions et métriques.
  • Le type sémantique peut être défini dans le schéma du connecteur ou détecté automatiquement par Looker Studio en fonction de la propriété type de données définie dans votre connecteur et des valeurs de données renvoyées par celui-ci. Pour en savoir plus, consultez la section Détection automatique du type sémantique.
  • Le type d'agrégation détermine si les valeurs de métriques (les dimensions sont ignorées) peuvent être réagrégées. Si la propriété semantics.isReaggregatable est définie sur true, l'agrégation SUM est utilisée par défaut. Sinon, elle est définie sur Auto. Vous pouvez également définir manuellement le type d'agrégation par défaut pour les champs réagrégables à l'aide de la propriété defaultAggregationType.

Lorsque vous configurez un connecteur et que vous vous y connectez à l'aide d'un connecteur dans Looker Studio, l'éditeur de champs affiche le schéma complet du connecteur en fonction des propriétés que vous avez définies ci-dessus. Si vous avez inclus les types sémantiques, ils s'afficheront tels que vous les avez définis. Si vous utilisez la détection automatique de type sémantique, les champs s'affichent tels qu'ils ont été détectés. Écran Champs

Définir des informations sémantiques

Il existe deux façons de définir des informations sémantiques. Vous pouvez définir la sémantique de champ manuellement ou faire appel à Looker Studio pour qu'elle la détecte automatiquement.

Par exemple, si vous avez un nombre qui représente sémantiquement les dollars américains, Looker Studio ne pourra pas détecter automatiquement ce type sémantique. De plus, la détection sémantique automatique nécessite que Looker Studio effectue des appels de récupération de données pour chaque champ de votre schéma. Si vous spécifiez manuellement le schéma, aucun appel d'extraction de données ne sera effectué. Si vous connaissez le type sémantique de vos données (par exemple, devise, pourcentage, date, etc.), nous vous recommandons de le définir explicitement dans le schéma pour des raisons de précision et de performances.

Définir manuellement les types sémantiques (recommandé)

Si vous connaissez vos types sémantiques, vous pouvez définir manuellement semantics pour chaque champ de schéma. Pour en savoir plus sur les propriétés disponibles, consultez la page de référence des champs. Si vous choisissez de définir des types sémantiques manuels, nous vous recommandons de définir semanticType et semanticGroup pour chaque champ. Si vous fournissez ces propriétés manuellement, le processus de détection automatique du type sémantique ne s'exécute pas. Si vous définissez manuellement certains de vos champs, mais pas tous, ceux que vous ne spécifiez pas sont définis par défaut sur Text, Number ou Boolean, en fonction de la dataType spécifiée pour le champ.

Voici un exemple de schéma simple qui définit manuellement des types sémantiques. Income est défini comme devise et Filing Year est défini comme date.

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'
    }
  }
];

Résoudre les problèmes liés aux types sémantiques manuels

Si vous définissez vos types sémantiques de manière incorrecte pour les données sous-jacentes, ils ne fonctionneront pas correctement. Cela peut être difficile à tester, mais vous pouvez faire plusieurs choses pour vous aider à détecter les problèmes.

  1. Renvoyez 2 ou 3 lignes à partir de vos données au lieu de toutes, puis inspectez-les manuellement.
  2. Créez dans Looker Studio une table qui n'utilise que le champ que vous essayez de vérifier.
  3. Portez une attention particulière aux champs Geo et Date, car ils utilisent le format le plus strict.

Détection automatique du type sémantique

Si vous n'avez défini aucun type sémantique dans votre schéma, Looker Studio tentera de les détecter automatiquement en fonction de la propriété de type de données et du format des valeurs de données renvoyées par le connecteur.

Les étapes du processus de détection automatique sont les suivantes:

  1. Pour demander le schéma, exécutez la fonction getSchema de votre connecteur de communauté.
  2. Parcourez les lots de champs définis dans le schéma du connecteur, puis envoyez les requêtes getData concernant ces champs. Les requêtes getData sont exécutées avec le paramètre sampleExtraction défini sur true pour indiquer que les requêtes de données sont à des fins de détection sémantique.
  3. En fonction du type de données du champ et du format de la valeur renvoyée par la requête getData, identifiez le type sémantique du champ.

Options de gestion de la détection automatique du type sémantique

Lorsque Looker Studio exécute la fonction getData d'un connecteur de communauté à des fins de détection sémantique, la requête entrante contient une propriété sampleExtraction qui est définie sur true. Les données renvoyées par votre connecteur ne sont utilisées que par Looker Studio pour identifier le type sémantique du champ. Étant donné que la valeur ne sera pas utilisée à d'autres fins, elle n'a pas besoin de données réelles de votre source externe.

Il existe plusieurs façons d'améliorer la détection de type sémantique dans votre code:

  • Recommandé: transmettre des valeurs prédéfinies
    Renvoyez une valeur prédéfinie pour chaque champ qui représente le mieux le type sémantique du champ et qui est correctement détecté par Looker Studio. Par exemple, si le type sémantique d'un champ est Country, renvoyez une valeur telle que IT pour l'Italie. L'autre avantage de cette approche est qu'elle est beaucoup plus rapide, car elle ne vous oblige pas à envoyer des requêtes HTTP au service tiers pour les données.

  • Renvoyez uniquement n nombre d'enregistrements
    Si le service tiers à partir duquel vous extrayez des données accepte les limites de lignes lorsque vous demandez des données, renvoyez un petit sous-ensemble de lignes à Looker Studio au lieu de l'ensemble de données complet. Cela permet de limiter la quantité de données que vous devez transmettre à Looker Studio pour chaque requête de détection sémantique.

  • Demander toutes les colonnes et mettre en cache la réponse
    Si vous pouvez demander toutes les colonnes pour le service tiers à partir duquel vous extrayez des données, récupérez toutes les colonnes et mettez en cache les résultats lors de la première requête de détection sémantique reçue de Looker Studio. Pour les requêtes de détection sémantique suivantes, extrayez les valeurs de colonne du cache au lieu d'envoyer des requêtes HTTP supplémentaires au service tiers.

  • Ne rien faire d'autre
    Vous pouvez choisir de ne pas intégrer d'adaptation spécifique pour les demandes pour lesquelles sampleExtraction est défini sur true. Cela ralentira le processus de détection sémantique, car Looker Studio devra extraire toutes les données pour le processus de détection sémantique. En outre, cela affectera le taux de requêtes adressées à votre source de données externe, car de nombreuses requêtes de détection sémantique seront exécutées en parallèle.

Formats reconnus pour la détection automatique du type sémantique

Date et heure
  • 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
  • Temps: epoch pour la seconde, la micro, le millième et le nano.
Données géographiques