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 y 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 Data Catalog y selecciona Data Catalog como modo de búsqueda.

Ir a Búsqueda

En su forma más simple, una búsqueda de Data Catalog incluye un solo predicado. Un predicado de este tipo puede coincidir con varios metadatos:

  • Es una subcadena de un nombre, un nombre visible o una descripción de un recurso de datos.
  • Es el tipo exacto de un recurso de datos.
  • Es una substring 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.
  • (Versión preliminar) Es una cadena para una dirección de correo electrónico o un nombre de un administrador de datos.
  • (Versión preliminar) Es una cadena 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
  • 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
  • Plantilla de etiqueta pública llamada foo, entradas de datos etiquetadas con la plantilla de etiqueta foo, nombre visible de la plantilla de etiqueta foo, nombre de campo de la plantilla de etiqueta foo y valor de campo de la etiqueta foo en una cadena, enum o texto enriquecido
  • (Versión preliminar) Recurso de datos con un administrador de datos llamado foo.
  • (Versión preliminar) Recurso de datos con una descripción general que contiene la palabra foo.

Para obtener más información sobre los roles y permisos para ver etiquetas públicas y privadas, consulta Roles para ver 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.

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

Un dos puntos (:) después de la clave hace que el predicado coincida con una subcadena o un token dentro del valor en 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 subcadena 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 el nombre de la 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 Coincide con 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 AND.
Por ejemplo, column:(foo bar) coincide con una columna anidada con la ruta 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 Coincide con 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 Coincide con x como una substring en el valor de una etiqueta con la clave bar conectada 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 Coincide 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, vistas y vistas materializadas.
  • type=dataset coincide con todos los conjuntos de datos.
  • type=table.view o type=view coinciden con todas las vistas, pero no con las vistas materializadas.
  • type=materialized_view coincide con todas las vistas materializadas.
  • type=lake coincide con todos los lagos.
  • 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.
  • (Versión preliminar) 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 Coincide con 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 Coincide con los recursos de datos 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 con todos los recursos de datos en una ubicación especificada con un nombre exacto. Por ejemplo, location=us-central1 coincide con todos los activos alojados en Iowa.
Para obtener una lista completa de las ubicaciones admitidas, consulta Regiones de Data Catalog.
cluster_location=<location> Coincide con 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, hace coincidir el key con cualquier subcadena del ID del campo de la 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.
Los conjuntos de <operator> dependientes del tipo permitidos para los valores de etiqueta son los siguientes:
  • cadena/texto enriquecido: ":"
    Nota: El dos puntos en esta búsqueda de cadenas indica una coincidencia de token exacta, no una subcadena.
  • booleano y enumerado: "="
  • doble: "=", "<", ">", "<=", ">="
  • marca de tiempo: ":", "=", "<", ">", "<=", ">="
Ejemplos
  • string: tag:data_owner:@mail.com coincide con los recursos de datos que tienen valores @mail.com.
  • booleano: 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 Coincide con los recursos de datos conectados a un término del glosario empresarial en el que una subcadena del nombre, la descripción o el administrador de datos coincide con x.
fully_qualified_name:x Coincide con x como una substring de fully_qualified_name.
fully_qualified_name=x Coincide con x como fully_qualified_name.

Operadores lógicos

Una búsqueda puede constar de varios predicados con operadores lógicos. Si no especificas un operador, se implica AND lógico. Por ejemplo, foo bar muestra entidades que coinciden con el predicado foo y el 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 una sintaxis de búsqueda abreviada disponible que usa | para los operadores OR y , para los operadores AND.

Por ejemplo, para buscar entradas dentro de uno de varios proyectos con el operador OR, puedes usar la siguiente sintaxis:

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 mencionados anteriormente, excepto para tag, term, policytag, policytagid y label.