Syntaxe de recherche dans Data Catalog

Ce document décrit la syntaxe des requêtes de recherche dans Data Catalog.

Prédicats simples

Dans sa forme la plus simple, une requête de recherche comprend un seul prédicat. Par exemple, le prédicat foo correspond aux entités Data Catalog suivantes :

  • Une entité avec une description This is the foo script.
  • Une entité avec le nom foo.bar

Prédicats qualifiés

Vous pouvez qualifier un prédicat en le préfixant avec une clé qui limite la correspondance à une métadonnée spécifique. Par exemple, name:foo sélectionne les entités dont le nom correspond au prédicat foo.

Data Catalog accepte les qualificatifs suivants :

Qualificatif Description
name:x Renvoie x en tant que sous-chaîne de l'ID de l'élément de données.
displayname:x Renvoie x en tant que sous-chaîne du nom d'affichage de l'élément de données.
column:x Renvoie x en tant que sous-chaîne du nom de colonne dans le schéma de l'élément de données.
description:x Renvoie x en tant que jeton dans la description de l'élément de données.
labels:bar Renvoie les éléments de données BigQuery comportant une étiquette (avec une certaine valeur) et dont la clé d'étiquette est bar en tant que sous-chaîne.
labels.bar:x Renvoie x en tant que jeton dans la valeur d'une étiquette bar associée à un élément de données BigQuery.
type=<type> Renvoie les éléments de données d'un type ou sous-type d'objet spécifique. Les sous-types peuvent être ajoutés au format <type>.<sub-type>.
Les types et sous-types incluent :
  • type=table renvoie toutes les tables.
  • type=dataset renvoie tous les ensembles de données BigQuery.
  • type=table.view ou type=view font correspondre toutes les vues.
  • type=tag_template renvoie tous les modèles de tag.
  • type=entry_group renvoie tous les groupes d'entrées.
  • type=data_stream renvoie tous les sujets Pub/Sub.
projectid:bar Renvoie les éléments de données dans les projets cloud qui correspondent à bar en tant que sous-chaîne dans l'ID.
orgid:bar Renvoie les éléments de données des organisations cloud qui correspondent à bar en tant que sous-chaîne dans l'ID.
system=<system> Renvoie tous les éléments de données d'un système spécifié.
Les systèmes incluent :
  • system=bigquery renvoie tous les éléments de données de BigQuery.
  • system=cloud_pubsub renvoie tous les éléments de données de Pub/Sub.
  • system=data_catalog renvoie tous les éléments de données créés dans Data Catalog.
tag:x Renvoie les éléments de données où x correspond à une sous-chaîne dans < tag_template_project_id>.< tag_template_id>.< tag_field_id>.
Exemples :
  • tag:data_owner renvoie les éléments de données associés au tag data_owner.
  • tag:data_gov_template renvoie les éléments de données auxquels des tags ont été ajoutés à l'aide du modèle de tag data_gov_template.
  • tag:mycloudproject.data_gov_template renvoie les éléments de données auxquels des tags ont été ajoutés à l'aide du modèle data_gov_template dans le projet mycloudproject.
tag:key:val Renvoie key dans une sous-chaîne de l'ID du champ de tag, de l'ID du modèle de tag ou de l'ID du projet cloud d'un modèle de tag. Renvoie val en tant que jeton dans la valeur du tag de la clé (key) lorsque le champ de tag est de type string. Renvoie val avec la valeur du tag de la clé (key) lorsque la valeur du champ de tag est de type boolean, enum ou double.
Opérateurs autorisés :
  • string (chaîne) : ":"
  • boolean (booléen) et enum (énuméré) : "="
  • double : "=", "<", ">", "<=", ">="
  • timestamp (horodatage) : ":", "=", "<", ">", "<=", ">="
Exemples :
  • string : tag:data_owner:@mail.com renvoie les éléments de données qui ont des valeurs @mail.com.
  • boolean : tag:data_gov_template.hasPII=true renvoie les tags booléens hasPII dans le modèle data_gov_template qui sont définis sur true.
  • enum : tag:certification_level_1=HIGHEST.
  • double : tag:datascore=9 renvoie les éléments de données avec des doubles tags datascore associés à la valeur 9.
  • timestamp : tag:expiredDate:2019-01-01 renvoie les éléments de données associés au tag expiredDate défini sur 2019-01-01.
  • timestamp : tag:expiredDate<2019-02 renvoie les éléments de données associés à un tag expiredDate antérieur à 2019-02-01T00:00:00.
createtime Recherche les éléments de données qui ont été créés pendant, avant ou après une date ou une heure donnée.
Exemples :
  • createtime:2019-01-01 renvoie les éléments de données créés le 2019-01-01.
  • createtime<2019-02 renvoie les éléments de données créés avant le 2019-02-01T00:00:00.
  • createtime>2019-02 renvoie les éléments de données créés après le 2019-02-01T00:00:00.
updatetime Recherche les éléments de données qui ont été mis à jour pendant, avant ou après une date ou une heure donnée.
Exemples :
  • updatetime:2019-01-01 renvoie les éléments de données mis à jour le 2019-01-01.
  • updatetime<2019-02 renvoie les éléments de données mis à jour avant le 2019-02-01T00:00:00.
  • updatetime>2019-02 renvoie les éléments de données mis à jour après le 2019-02-01T00:00:00.

Opérateurs logiques

Une requête peut être composée de plusieurs prédicats contenant des opérateurs logiques. Si vous ne spécifiez pas d'opérateur, l'opérateur logique AND est implicite. Par exemple, foo bar renvoie les entités qui correspondent à la fois au prédicat foo et au prédicat bar.

Les opérateurs logique AND et OR logique sont acceptés (par exemple, foo OR bar).

Vous pouvez annuler un prédicat avec les préfixes - ou NOT. Par exemple, -name:foo renvoie toutes les entités dont le nom ne correspond pas au prédicat foo.