Ce document décrit la syntaxe des requêtes de recherche dans Data Catalog. Avant de lire ce document, il est important de comprendre les concepts de Data Catalog, tels que la saisie de données, les tags et les modèles de tag, ainsi que d'autres types de métadonnées. Consultez Qu'est-ce que Data Catalog ?.
Pour lancer une requête de recherche Data Catalog, accédez à la page Rechercher dans Cloud Console.
Accéder à la recherche Data Catalog
Recherche simple
Dans sa forme la plus simple, une requête de recherche Data Catalog contient un seul prédicat. Ce prédicat peut correspondre à plusieurs métadonnées :
- Sous-chaîne d'un nom, d'un nom à afficher ou d'une description d'un élément de données
- Type exact d'un élément de données
- Sous-chaîne d'un nom de colonne (ou de colonne imbriquée) dans le schéma d'un élément de données
- Sous-chaîne d'un ID de projet
- (Aperçu) Valeur d'un tag public, nom d'un modèle de tag public ou nom d'un champ dans un modèle de tag public associé à une entrée de données.
- (Aperçu) Chaîne d'une adresse e-mail ou d'un nom pour un responsable de données
- (Aperçu) Chaîne d'une description générale
La recherche simple ne prend pas en charge les champs de modèle de tag de type datetime
.
Par exemple, le prédicat foo
correspond aux entités suivantes :
- Élément de données avec le nom
foo.bar
- Élément de données avec 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
foo
exact - 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
- (Aperçu) Modèle de tag public nommé
foo
, entrées de données taguées avec le modèle de tagfoo
, nom à afficher du modèle de tagfoo
, nom du champ de modèle de tagfoo
et valeur du champ de tag defoo
dans une chaîne, une énumération ou du texte enrichi. - (Aperçu) Élément de données avec un responsable de données appelé
foo
. - (Aperçu) Élément de données avec un aperçu contenant le mot
foo
.
Pour en savoir plus sur les rôles et les autorisations permettant d'afficher les tags publics et privés, consultez la page Rôles permettant d'afficher les tags publics et privés.
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.
Le signe égal (=
) limite la recherche à une correspondance exacte.
Le deux-points (:
) après la clé correspond au prédicat d'une sous-chaîne ou d'un jeton dans la valeur des résultats de recherche.
La segmentation 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 portant exactement le nomfoo
.name:foo
sélectionne les entités dont le nom contient la sous-chaînefoo
:foo1
etbarfoo
.description:foo
sélectionne les entités ayant le jetonfoo
dans la description :bar and 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 |
Correspond à x en tant que sous-chaîne du nom de la colonne (ou du nom de la colonne imbriquée) dans le schéma de l'élément de données.Actuellement, vous pouvez rechercher une colonne imbriquée par son chemin d'accès à l'aide de l'opérateur logique AND. Par exemple, column:(foo bar) correspond à une colonne imbriquée avec le chemin d'accès foo.bar . |
description:x |
Renvoie x en tant que jeton dans la description de l'élément de données. |
label: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. |
label=bar |
Fait correspondre les éléments de données BigQuery qui ont un libellé (avec une valeur donnée) et la clé de libellé est égale à bar sous forme de chaîne. |
label:bar:x |
Correspond à x en tant que sous-chaîne dans la valeur d'un libellé, avec la clé bar associée à un élément de données BigQuery. |
label=foo:bar |
Fait correspondre les éléments de données BigQuery où la clé est égale à foo et la valeur de clé est égale à bar . |
label.foo=bar |
Fait correspondre les éléments de données BigQuery où la clé est égale à foo et la valeur de clé est égale à bar . |
label.foo |
Fait correspondre les éléments de données BigQuery dont l'étiquette est égale à foo sous forme de chaîne. |
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 :
|
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. |
parent:x |
Correspond à x en tant que sous-chaîne du chemin d'accès hiérarchique d'un élément de données BigQuery. Le chemin d'accès est au format <project_id>.<dataset_name> .Par exemple, parent:foo.bar correspond à toutes les tables et vues d'un ensemble de données avec le chemin d'accès project-foo.bar-dataset . |
orgid=number |
Fait correspondre les éléments de données d'une organisation Cloud avec la valeur d'ID exacte number . |
system=<system> |
Renvoie tous les éléments de données d'un système spécifié. Les systèmes incluent :
|
location=<location> |
Fait correspondre tous les éléments de données d'un emplacement spécifié avec un nom exact. Par exemple, location=us-central1 correspond à tous les éléments hébergés dans l'Iowa.Pour obtenir la liste complète des emplacements acceptés, consultez la page Régions de Data Catalog. |
tag:x |
Correspond aux éléments de données où x correspond à n'importe quelle sous-chaîne dans <tag_template_project_id >.<tag_template_id >.<tag_field_id > d'un tag privé ou public.Exemples:
|
tag:key<operator>val |
Tout d'abord, fait correspondre key à n'importe quelle 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. Ensuite, fait correspondre val à la valeur de tag de key en fonction du type du champ de tag.Les ensembles <operator> dépendant du type autorisés pour les valeurs de tag sont les suivants :
|
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 :
|
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 :
|
policytag:x |
Renvoie x en tant que sous-chaîne du nom à afficher du tag avec stratégie. Recherche tous les éléments en utilisant le tag avec stratégie correspondant ou ses descendants. |
policytagid=x |
Correspond à x en tant qu'ID de tag avec stratégie ou classification. Recherche tous les éléments en utilisant le tag avec stratégie correspondant ou ses descendants. |
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 logique AND et OR logique sont acceptés (par exemple, foo OR bar
).
Vous pouvez annuler un prédicat avec un préfixe -
ou NOT
. Par exemple, -name:foo
renvoie toutes les entités dont le nom ne correspond pas au prédicat foo
.
Syntaxe abrégée
Une syntaxe de recherche abrégée est également disponible. Elle utilise |
pour les opérateurs OR
et ,
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:
projectid:(pid1|pid2|pid3|pid4)
À la place de :
projectid:pid1 OR projectid:pid2 OR projectid:pid3 OR projectid:pid4
Pour rechercher des entrées avec des noms de colonne correspondants :
- ET :
column:(name1, name2, name3)
- OU :
column:(name1|name2|name3)
Cette syntaxe simplifiée fonctionne pour tous les prédicats qualifiés répertoriés ci-dessus.