Sintaxis de búsqueda de Data Catalog

Este documento describe la sintaxis de las búsquedas de Data Catalog. Antes de leer este documento, es importante que comprendas los conceptos de Data Catalog, como la entrada de datos, las etiquetas, las plantillas de etiquetas y otros tipos de metadatos. Consulta ¿Qué es Data Catalog?

Para iniciar una búsqueda de Data Catalog en la consola de Google Cloud, ve a la página Búsqueda de Dataplex.

Ir a Búsqueda de Dataplex

En su forma más sencilla, una consulta de búsqueda de Data Catalog consta de un solo predicado. Este predicado puede coincidir con varias piezas de metadatos:

  • Subcadena de un nombre, nombre visible o descripción de un recurso de datos
  • Tipo exacto de recurso de datos
  • Subcadena de un nombre de columna (o nombre de columna anidada) en el esquema de un recurso de datos
  • Una substring del ID del proyecto
  • El valor de una etiqueta pública, el nombre de una plantilla de etiqueta pública o un nombre de campo en una plantilla de etiqueta pública adjunta a una entrada de datos
  • (Vista previa) Es una cadena para una dirección de correo electrónico o el nombre de un administrador de datos.
  • (Vista previa) Una string de una descripción general

La búsqueda simple no admite campos de plantilla de etiqueta de tipo datetime.

Por ejemplo, el predicado foo coincide con las siguientes entidades:

  • Recurso de datos con el nombre foo.bar
  • Recurso de datos con el nombre visible Foo Bar
  • Recurso de datos con la descripción This is the foo script.
  • Recurso de datos con el tipo foo exacto
  • La columna foo_bar en el esquema de un recurso de datos
  • Columna anidada foo_bar en el esquema de un recurso de datos
  • prod-foo-bar del proyecto
  • La plantilla de etiqueta pública llamada foo, las entradas de datos etiquetadas con la plantilla de etiqueta foo, el nombre visible de la plantilla de etiqueta de foo, el nombre de campo de la plantilla de etiqueta foo y el valor de campo de etiqueta de foo en una cadena, enumeración o texto enriquecido
  • (Vista previa) Recurso de datos con un administrador de datos llamado foo.
  • (Vista previa) Recurso de datos con una descripción general que contiene la palabra foo.

Si quieres obtener más información sobre los roles y permisos para ver las etiquetas públicas y privadas, consulta Roles para ver las etiquetas públicas y privadas.

Predicados calificados

Puedes calificar un predicado si le antepones una clave que restrinja la coincidencia a una pieza de metadatos específica.

El signo igual (=) restringe la búsqueda a una concordancia exacta.

Los dos puntos (:) después de la clave hacen coincidir el predicado con una substring o un token dentro del valor de los resultados de la búsqueda.

La asignación de token divide el flujo del texto en una serie de tokens, cada uno correspondiente a una sola palabra.

Por ejemplo:

  • name:foo selecciona entidades con nombres que contienen la substring foo: foo1 y barfoo.
  • description:foo selecciona entidades con el token foo en la descripción: bar and foo.
  • location=foo coincide con todos los recursos de datos en una ubicación especificada con foo como nombre de ubicación.

Data Catalog admite los siguientes calificadores:

Calificador Descripción
name:x Coincide con x como una substring del ID del recurso de datos.
displayname:x Haga coincidir x como una substring del nombre comercial del recurso de datos.
column:x Compara x como una substring del nombre de la columna (o el nombre de la columna anidada) en el esquema del recurso de datos.
Puedes buscar una columna anidada por su ruta de acceso con el operador lógico Y.
Por ejemplo, column:(foo bar) coincide con una columna anidada con la ruta de acceso foo.bar.
description:x Coincide con x como un token en la descripción del recurso de datos.
label:bar Coincide con los recursos de datos de BigQuery que tienen una etiqueta (con algún valor) y la clave de etiqueta tiene bar como una substring.
label=bar Compara los recursos de datos de BigQuery que tienen una etiqueta (con algún valor) y la clave de etiqueta es igual a bar como una cadena.
label:bar:x Hace coincidir x como una substring en el valor de una etiqueta con la clave bar adjunta a un recurso de datos de BigQuery.
label=foo:bar Coincide con los recursos de datos de BigQuery en los que la clave es igual a foo y el valor de la clave es igual a bar.
label.foo=bar Coincide con los recursos de datos de BigQuery en los que la clave es igual a foo y el valor de la clave es igual a bar.
label.foo Busca coincidencias con los recursos de datos de BigQuery que tienen una etiqueta cuya clave es igual a foo como una cadena.
type=<type> Coincide con los elementos de datos de un tipo o subtipo de un objeto específico. Los subtipos se pueden agregar con el formato <type>.<sub-type>.
Los tipos y subtipos incluyen lo siguiente:
  • type=table coincide con todas las tablas.
  • type=dataset coincide con todos los conjuntos de datos.
  • type=table.view o type=view coinciden con todas las vistas.
  • type=lake coincide con todos los lakes.
  • type=zone coincide con todas las zonas.
  • type=tag_template coincide con todas las plantillas de etiqueta.
  • type=entry_group coincide con todos los grupos de entrada.
  • type=data_stream coincide con todos los temas de Pub/Sub.
  • (Vista previa) type=dataset.linked coincide con todos los conjuntos de datos vinculados de Analytics Hub.
projectid:bar Coincide con los recursos de datos de los proyectos de Cloud que coinciden con bar como una substring en el ID.
parent:x Hace coincidir x como una substring de la ruta jerárquica de un recurso de datos de BigQuery. La ruta tiene el formato <project_id>.<dataset_name>.
Por ejemplo, parent:foo.bar coincide con todas las tablas y vistas de un conjunto de datos con la ruta project-foo.bar-dataset.
orgid=number Hace coincidir los recursos de datos dentro de una organización de Cloud con el valor de ID exacto de number.
system=<system> Coincide con todos los recursos de datos de un sistema específico.
Los sistemas incluyen:
  • system=bigquery coincide con todos los recursos de datos de BigQuery.
  • system=cloud_bigtable coincide con todos los recursos de datos de Bigtable.
  • system=cloud_pubsub coincide con todos los recursos de datos de Pub/Sub.
  • system=cloud_spanner coincide con todos los recursos de datos de Spanner.
  • system=dataproc_metastore coincide con todos los recursos de datos de Dataproc Metastore.
  • system=data_catalog coincide con todos los recursos de datos creados en Data Catalog.
  • system=dataplex coincide con todos los recursos de datos creados en Dataplex.
location=<location> Coincide todos los recursos de datos en una ubicación especificada con un nombre exacto. Por ejemplo, location=us-central1 coincide con todos los recursos alojados en Iowa.
Para obtener una lista completa de las ubicaciones admitidas, consulta Regiones de Data Catalog.
cluster_location=<location> Coincide todos los recursos de datos de Bigtable en una ubicación especificada con un nombre exacto.
Por ejemplo, cluster_location=us-central1 coincide con todos los recursos alojados en Iowa.
Para obtener una lista completa de las ubicaciones compatibles, consulta Regiones de Bigtable.
tag:x Coincide con los recursos de datos en los que x coincide con cualquier substring en <tag_template_project_id>.<tag_template_id>.<tag_field_id> de una etiqueta privada o pública.
Ejemplos:
  • tag:data_owner coincide con los recursos de datos que tienen la etiqueta data_owner.
  • tag:data_gov_template coincide con los recursos de datos etiquetados con la plantilla de etiqueta data_gov_template.
  • tag:mycloudproject.data_gov_template coincide con los recursos de datos etiquetados con la plantilla data_gov_template en el proyecto mycloudproject.
tag:key<operator>val Primero, haz coincidir la key con cualquier substring del ID del campo de etiqueta, el ID de la plantilla de etiqueta o el ID del proyecto de Google Cloud de una plantilla de etiqueta. Luego, hace coincidir val con el valor de etiqueta de key, según el tipo de campo de etiqueta.
Estos son los conjuntos <operator> dependientes del tipo permitidos para los valores de etiqueta:
  • string/richtext: ":"
    Nota: Los dos puntos de esta búsqueda de cadenas denotan una coincidencia de token exacta, no una subcadena.
  • boolean y boolean: "="
  • doble: "=", "<", ">", "<=", ">="
  • marca de tiempo: ":", "=", "<", ">", "<=", ">="
Ejemplos
  • string: tag:data_owner:@mail.com coincide con los recursos de datos que tienen valores @mail.com.
  • boolean: tag:data_gov_template.hasPII=true coincide con etiquetas booleanas hasPII en data_gov_template que son true.
  • enumerado: tag:certification_level_1=HIGHEST
  • doble: tag:datascore=9 hace coincidir los recursos de datos etiquetas dobles datascore que tienen el valor 9.
  • marca de tiempo: tag:expiredDate:2019-01-01 coincide con los recursos de datos que tienen una etiqueta expiredDate de 2019-01-01.
  • marca de tiempo: tag:expiredDate<2019-02 coincide con los recursos de datos que tienen una etiqueta expiredDate anterior a 2019-02-01T00:00:00.
createtime Encuentra los recursos de datos que se crearon antes, durante o después de una fecha u hora determinadas.
Ejemplos:
  • createtime:2019-01-01 coincide con los recursos de datos creados en 2019-01-01.
  • createtime<2019-02 coincide con los recursos de datos creados antes del 2019-02-01T00:00:00.
  • createtime>2019-02 coincide con los elementos de datos creados después de 2019-02-01T00:00:00.
updatetime Busca los recursos de datos que se actualizaron antes, durante o después de una fecha u hora determinadas.
Ejemplos:
  • updatetime:2019-01-01 coincide con los recursos de datos actualizados en 2019-01-01.
  • updatetime<2019-02 coincide con los recursos de datos actualizados antes del 2019-02-01T00:00:00.
  • updatetime>2019-02 coincide con los recursos de datos actualizados después del 2019-02-01T00:00:00.
policytag:x Haz coincidir x como una substring del nombre visible de la etiqueta de política. Encuentra todos los recursos mediante la etiqueta de política de coincidencias o sus descendientes.
policytagid=x Coincide con x como un ID de etiqueta de política o taxonomía. Encuentra todos los recursos mediante la etiqueta de política de coincidencias o sus descendientes.
term:x Hace coincidir los recursos de datos conectados a un término del glosario empresarial en los que una subcadena de nombre, descripción o administrador de datos coincide con x.
fully_qualified_name:x Coincide con x como subcadena de fully_qualified_name.
fully_qualified_name=x Coincide con x como fully_qualified_name.

Operadores lógicos

Una consulta puede estar compuesta por varios predicados con operadores lógicos. Si no especificas un operador, el AND lógico está implícito. Por ejemplo, foo bar muestra entidades que coinciden con los predicados foo y bar.

Se admiten AND lógico y OR lógico, por ejemplo, foo OR bar.

Puedes anular un predicado con un prefijo - o NOT. Por ejemplo, -name:foo muestra todas las entidades con nombres que no coinciden con el predicado foo.

Sintaxis abreviada

También hay disponible una sintaxis de búsqueda abreviada, que usa | para operadores OR y , para operadores AND.

Por ejemplo, para buscar entradas dentro de uno de muchos proyectos con el operador OR, puedes usar los siguientes comandos:

projectid:(pid1|pid2|pid3|pid4)

En lugar de esta sintaxis:

projectid:pid1 OR projectid:pid2 OR projectid:pid3 OR projectid:pid4

Para buscar entradas con nombres de columnas coincidentes, haz lo siguiente:

  • Y: column:(name1, name2, name3)
  • O: column:(name1|name2|name3)

Esta sintaxis abreviada funciona para los predicados calificados enumerados anteriormente, excepto tag, term, policytag, policytagid y label.