Syntaxe de recherche pour le catalogue Dataplex

Ce document décrit la syntaxe des requêtes de recherche Dataplex. Avant de lire ce document, il est important de comprendre les concepts de Dataplex Catalog, tels que les entrées de données, les aspects, les types d'aspects, les groupes d'entrées et les types d'entrées. Pour en savoir plus, consultez la présentation du catalogue Dataplex.

Pour lancer une requête de recherche dans le catalogue Dataplex dans la console Google Cloud, accédez à la page Recherche de Dataplex et sélectionnez Catalogue Dataplex comme mode de recherche.

Accéder à la recherche

Pour en savoir plus, consultez la page Rechercher des éléments de données dans le catalogue Dataplex.

Dans sa forme la plus simple, une requête de recherche dans le catalogue Dataplex se compose d'un seul prédicat. Un tel prédicat peut correspondre à plusieurs éléments de métadonnées:

  • Sous-chaîne du nom, du nom à afficher ou de la description d'un élément de données
  • Sous-chaîne du type d'un élément de données
  • Sous-chaîne d'un nom de colonne (ou nom de colonne imbriquée) dans le schéma d'un élément de données
  • Sous-chaîne d'un ID de projet
  • Chaîne d'une description générale

Par exemple, le prédicat foo correspond aux entités suivantes :

  • Élément de données nommé foo.bar
  • Élément de données portant le nom à afficher Foo Bar
  • Élément de données avec la description This is the foo script
  • Élément de données avec le type exact foo
  • Colonne foo_bar dans le schéma d'un élément de données
  • Colonne imbriquée foo_bar dans le schéma d'un élément de données
  • Projet prod-foo-bar
  • Élément de données avec un aperçu contenant le mot foo

Prédicats qualifiés

Vous pouvez qualifier un prédicat en lui ajoutant en préfixe une clé qui limite la correspondance à une métadonnée spécifique:

  • Le signe égal (=) limite la recherche à une correspondance exacte.
  • Le signe deux-points (:) après la clé correspond au prédicat à une sous-chaîne ou à un jeton dans la valeur des résultats de recherche.

La tokenisation divise le flux de texte en une série de jetons, chaque jeton correspondant généralement à un seul mot.

Exemple :

  • name:foo sélectionne les entités dont le nom contient la sous-chaîne foo, comme foo1 et barfoo.
  • description:foo sélectionne les entités dont la description contient le jeton foo, comme bar et foo.
  • location=foo établit une correspondance entre les éléments de données d'un emplacement spécifié et foo comme nom d'emplacement.

Les clés de prédicat type, system, location et orgid n'acceptent que le qualificatif de correspondance exacte (=), et non le qualificatif de sous-chaîne (:). Par exemple, type=foo ou orgid=number.

Le catalogue Dataplex 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 Correspond à x en tant que sous-chaîne du nom de la colonne (ou nom de la colonne imbriquée) 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.
label:bar Correspond aux éléments de données BigQuery ayant un libellé (comportant une valeur spécifique) et dont la clé d'étiquette comporte bar comme sous-chaîne.
label=bar Correspond aux éléments de données BigQuery ayant un libellé (comportant une valeur) et dont la clé de libellé est égale à bar en tant que chaîne.
label:bar:x Correspond à x en tant que sous-chaîne de la valeur d'un libellé avec une clé bar associée à un élément de données BigQuery.
label=foo:bar Correspond aux éléments de données BigQuery où la clé est égale à foo et la valeur de clé égale à bar.
label.foo=bar Correspond aux éléments de données BigQuery où la clé est égale à foo et la valeur de clé égale à bar.
label.foo Correspond aux éléments de données BigQuery qui possèdent un libellé dont la clé est égale à foo en tant que chaîne.
type=TYPE Correspond aux éléments de données d'un type d'entrée spécifique ou de son alias de type.
projectid:bar Fait correspondre les éléments de données des projets Google Cloud qui correspondent à bar en tant que sous-chaîne dans l'ID.
parent:x Correspond à x en tant que sous-chaîne du chemin hiérarchique d'un élément de données. Le chemin d'accès parent est un fully_qualified_name de la ressource parente.
orgid=number Correspond aux éléments de données d'une organisation Google Cloud ayant l'ID exact number.
system=SYSTEM Correspond aux éléments de données d'un système spécifié.
location=LOCATION

Fait correspondre les éléments de données dans un emplacement spécifié avec un nom exact. Par exemple, location=us-central1 correspond aux éléments hébergés dans l'Iowa.

Les éléments BigQuery Omni acceptent ce qualificatif via le nom d'emplacement BigQuery Omni. Par exemple, location=aws-us-east-1 correspond aux éléments BigQuery Omni en Virginie du Nord.

createtime

Recherche les éléments de données qui ont été créés dans, avant ou après une date ou une heure donnée.

Exemple :

  • createtime:2019-01-01 correspond aux éléments de données créés le 01/01/2019.
  • createtime<2019-02 correspond aux éléments de données créés avant 2019-02-01T00:00:00.
  • createtime>2019-02 correspond aux éléments de données créés après 2019-02-01T00:00:00.

Format d'horodatage: YYYY-MM-DDThh:mm:ss

Tous les codes temporels doivent être exprimés en heure GMT. Les fuseaux horaires ne sont pas acceptés. Les horodatages partiels, les traits d'union (-) et les séparateurs de date avec barre oblique (/) sont acceptés.

Exemple :

  • 2010-10-22T05:36:24
  • 2010-10-22T05:36
  • 2010-10-22T05
  • 2010-10-22
  • 2010-10
  • 2010
  • 2010/10/22
updatetime

Recherche les éléments de données qui ont été mis à jour au cours, avant ou après une date ou une heure donnée.

Exemple :

  • updatetime:2019-01-01 correspond aux éléments de données mis à jour le 01/01/2019.
  • updatetime<2019-02 correspond aux éléments de données mis à jour avant 2019-02-01T00:00:00.
  • updatetime>2019-02 correspond aux éléments de données mis à jour après 2019-02-01T00:00:00.

Format d'horodatage: YYYY-MM-DDThh:mm:ss

Tous les codes temporels doivent être exprimés en heure GMT. Les fuseaux horaires ne sont pas acceptés. Les horodatages partiels, les traits d'union (-) et les séparateurs de date avec barre oblique (/) sont acceptés.

Exemple :

  • 2010-10-22T05:36:24
  • 2010-10-22T05:36
  • 2010-10-22T05
  • 2010-10-22
  • 2010-10
  • 2010
  • 2010/10/22
fully_qualified_name:x Correspond à x en tant que sous-chaîne de fully_qualified_name.
fully_qualified_name=x Correspond à x et à fully_qualified_name.

Pour rechercher des entrées en fonction des aspects qui leur sont associés, utilisez la syntaxe de requête suivante.

Qualificatif Description
aspect:x Correspond à x en tant que sous-chaîne du chemin d'accès complet au type d'aspect d'un aspect associé à l'entrée, au format projectid.location.ASPECT_TYPE_ID.
aspect=x Correspond à x comme le chemin d'accès complet au type d'aspect d'un aspect associé à l'entrée, au format projectid.location.ASPECT_TYPE_ID.
aspect:xOPERATORvalue

Recherche des valeurs de champ d'aspect. Correspond à x en tant que sous-chaîne du chemin d'accès complet au type d'aspect et au nom de champ d'un aspect associé à l'entrée, au format projectid.location.ASPECT_TYPE_ID.FIELD_NAME.

La liste des opérateurs compatibles dépend du type de champ de l'aspect, comme suit:

  • Chaîne: = (mot clé exact) et : (sous-chaîne)
  • Tous les types de numéros: =, :, <, >, <=, >=, =>, =<
  • Énumération: =
  • Date/Heure: identique à celle des nombres, mais les valeurs à comparer sont traitées comme des date/heure et non comme des nombres.
  • Booléen: =

Seuls les champs de niveau supérieur de l'aspect sont inclus dans l'index de recherche.

Par exemple, toutes les requêtes suivantes correspondent aux entrées dont la valeur du champ is-enrolled dans l'aspect employee-info est true. Les autres entrées qui correspondent à la sous-chaîne sont également renvoyées.

  • aspect:example-project.us-central1.employee-info.is-enrolled=true
  • aspect:example-project.us-central1.employee=true
  • aspect:employee=true

Opérateurs logiques

Une requête peut être constituée de plusieurs prédicats avec des opérateurs logiques. Si vous ne spécifiez pas d'opérateur, la valeur 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 logiques AND et OR logiques sont acceptés. Exemple :foo OR bar

Vous pouvez annuler un prédicat avec un préfixe - (trait d'union) ou NOT. Par exemple, -name:foo renvoie les entités dont le nom ne correspond pas au prédicat foo.

Les opérateurs logiques ne sont pas sensibles à la casse. Par exemple, or et OR sont acceptés.

Syntaxe abrégée

Une syntaxe de recherche abrégée est également disponible, utilisant | (barre verticale) pour les opérateurs OR et , (virgule) pour les opérateurs AND.

Par exemple, pour rechercher des entrées dans l'un des nombreux projets à l'aide de l'opérateur OR, vous pouvez utiliser la syntaxe abrégée suivante:

projectid:(id1|id2|id3|id4)

La même recherche sans l'utilisation de la syntaxe abrégée se présente comme suit:

projectid:id1 OR projectid:id2 OR projectid:id3 OR projectid:id4

Pour rechercher des entrées avec des noms de colonne correspondants, utilisez le code suivant:

  • ET: column:(name1, name2, name3)
  • OU: column:(name1|name2|name3)

Cette syntaxe abrégée fonctionne pour les prédicats qualifiés, à l'exception de label.

Étapes suivantes