Sintaxe de pesquisa do Data Catalog

Mantenha tudo organizado com as coleções Salve e categorize o conteúdo com base nas suas preferências.

Veja neste documento a sintaxe das consultas de pesquisa do Data Catalog. Antes de ler este documento, é importante que você entenda os conceitos do Data Catalog, como entrada de dados, tags e modelos de tag e outros tipos de metadados. Consulte O que é o Data Catalog?

Para iniciar uma consulta de pesquisa do Data Catalog no Console do Google Cloud, acesse a página Pesquisa do Dataplex.

Acessar a pesquisa no Dataplex

Na forma mais simples, uma consulta de pesquisa do Data Catalog abrange um único predicado. Esse predicado pode corresponder a várias partes de metadados:

  • Uma substring de um nome, nome de exibição ou descrição de um recurso de dados
  • Tipo exato de recurso de dados
  • Uma substring de um nome de coluna (ou nome de coluna aninhada) no esquema de um recurso de dados.
  • Uma substring de um ID do projeto
  • O valor de uma tag pública, o nome de um modelo de tag pública ou um nome de campo em um modelo de tag pública anexado a uma entrada de dados.
  • (Visualização) Uma string para um endereço de e-mail ou nome de um administrador de dados
  • (Visualização) Uma string de uma descrição de visão geral

A pesquisa simples não é compatível com os campos de modelo de tag do tipo datetime.

Por exemplo, o predicado foo corresponde às seguintes entidades:

  • Recurso de dados com o nome foo.bar
  • Recurso de dados com o nome de exibição Foo Bar
  • Recurso de dados com a descrição This is the foo script.
  • Recurso de dados com o tipo foo exato
  • Coluna foo_bar no esquema de um recurso de dados
  • Coluna aninhada foo_bar no esquema de um recurso de dados
  • Projeto prod-foo-bar
  • Modelo de tag pública com o nome foo, entradas de dados marcadas com o modelo de tag foo, nome de exibição do modelo de tag foo, nome do campo do modelo de tag foo e valor do campo da tag foo em uma string, enumeração ou rich text.
  • (Visualização) Recurso de dados com um administrador de dados chamado foo.
  • (Visualização) Recurso de dados com uma visão geral contendo a palavra foo.

Para saber mais sobre as funções e permissões para visualizar tags públicas e privadas, consulte Funções para visualizar tags públicas e privadas.

Predicados qualificados

Você pode qualificar um predicado usando um prefixo com uma chave que restringe a correspondência a uma parte específica dos metadados.

Um sinal de igual (=) restringe a pesquisa a uma correspondência exata.

Dois-pontos (:) após a chave corresponder ao predicado para uma substring ou um token dentro do valor nos resultados da pesquisa.

A tokenização divide o fluxo do texto em uma série de tokens, sendo que cada token geralmente corresponde a uma única palavra.

Exemplo:

  • name=foo seleciona entidades com o nome exato da foo.
  • name:foo seleciona entidades com nomes que contêm a substring foo: foo1 e barfoo.
  • description:foo seleciona entidades com o token foo na descrição: bar and foo.

O Data Catalog oferece suporte aos seguintes qualificadores:

Qualificador Descrição
name:x Corresponde a x como substring do ID do recurso de dados.
displayname:x Corresponda x como substring do nome de exibição do recurso de dados.
column:x Corresponde a x como uma substring do nome da coluna (ou do nome da coluna aninhada) no esquema do recurso de dados.
No momento, é possível pesquisar uma coluna aninhada pelo caminho usando o operador lógico ".
Por exemplo, column:(foo bar) corresponde a uma coluna aninhada com o caminho foo.bar.
description:x Corresponde x como um token na descrição do recurso de dados.
label:bar Corresponde a recursos de dados do BigQuery que têm um rótulo (com algum valor) e a chave de rótulo tem bar como substring.
label=bar Corresponde aos recursos de dados do BigQuery que têm um rótulo (com algum valor) e a chave do rótulo é igual a bar como uma string.
label:bar:x Corresponde a x como uma substring no valor de um rótulo com a chave bar anexada a um recurso de dados do BigQuery.
label=foo:bar Corresponde aos recursos de dados do BigQuery em que a chave é igual a foo e o valor da chave é igual a bar.
label.foo=bar Corresponde aos recursos de dados do BigQuery em que a chave é igual a foo e o valor da chave é igual a bar.
label.foo Corresponde aos recursos de dados do BigQuery que têm um rótulo com uma chave igual a foo como uma string.
type=<type> Corresponde a ativos de dados de um tipo ou subtipo de objeto específico. Os subtipos podem ser adicionados com o formato <type>.<sub-type>.
Os tipos e subtipos incluem:
  • type=table corresponde a todas as tabelas.
  • type=dataset corresponde a todos os conjuntos de dados.
  • type=table.view ou type=view corresponde a todas as visualizações.
  • type=lake corresponde a todos os lakes.
  • type=zone corresponde a todas as zonas.
  • type=tag_template corresponde a todos os modelos de tag.
  • type=entry_group corresponde a todos os grupos de entrada.
  • type=data_stream corresponde a todos os tópicos Pub/Sub.
  • (Visualização pública) type=dataset.linked corresponde a todos os conjuntos de dados vinculados do Analytics Hub.
projectid:bar Corresponde recursos de dados dentro de projetos do Cloud que correspondem a bar como substring no ID.
parent:x Corresponde a x como uma substring do caminho hierárquico de um recurso de dados do BigQuery. O caminho tem o formato <project_id>.<dataset_name>.
Por exemplo, parent:foo.bar corresponde a todas as tabelas e visualizações de um conjunto de dados com o caminho project-foo.bar-dataset.
orgid=number Corresponde os recursos de dados em uma organização do Cloud ao valor exato do ID de number.
system=<system> Corresponde a todos os ativos de dados de um sistema especificado.
Os sistemas incluem:
  • system=bigquery corresponde a todos os recursos de dados do BigQuery.
  • system=cloud_pubsub corresponde a todos os recursos de dados do Pub/Sub.
  • system=dataproc_metastore corresponde a todos os recursos de dados do metastore do Dataproc.
  • system=data_catalog corresponde a todos os recursos de dados criados no Data Catalog.
  • system=dataplex corresponde a todos os recursos de dados criados no Dataplex
location=<location> Corresponde todos os recursos de dados em um local especificado com um nome exato. Por exemplo, location=us-central1 corresponde a todos os recursos hospedados em Iowa.
Para ver uma lista completa de locais compatíveis, consulte Regiões do Data Catalog.
tag:x Corresponde a recursos de dados em que x corresponde a qualquer substring em <tag_template_project_id>.<tag_template_id>.<tag_field_id> de uma tag pública ou particular.
Exemplos:
  • tag:data_owner corresponde recursos de dados que possuem a tag data_owner.
  • tag:data_gov_template corresponde recursos de dados que foram marcados com o modelo de tag data_gov_template.
  • tag:mycloudproject.data_gov_template corresponde a recursos de dados marcados com o modelo data_gov_template no projeto mycloudproject.
tag:key<operator>val Primeiro, corresponde ao key com qualquer substring do ID do campo de tag, do ID do modelo de tag ou do ID do projeto do Cloud de um modelo de tag. Em seguida, corresponde val ao valor da tag de key, dependendo do tipo de campo de tag.
Os conjuntos <operator> dependentes de tipo permitidos para valores de tag são:
  • string: ":"
    Observação: os dois pontos dessa pesquisa de string indicam uma correspondência exata do token, não uma substring.
  • booleano e enum: "="
  • double: "=", "<", ">", "<=", ">="
  • timestamp: ":", "=", "<", ">", "<=", ">="
Examplos:
  • string: tag:data_owner:@mail.com corresponde a recursos de dados que têm valores @mail.com.
  • booleano: tag:data_gov_template.hasPII=true corresponde a hasPII tags booleanas no data_gov_template que são true.
  • enum: tag:certification_level_1=HIGHEST.
  • duplo: tag:datascore=9 corresponde aos recursos de dados com datascore tags duplas que têm valor 9.
  • timestamp: tag:expiredDate:2019-01-01 corresponde a recursos de dados que têm expiredDate tag de 2019-01-01.
  • timestamp: tag:expiredDate<2019-02 corresponde a recursos de dados que têm expiredDate antes de 2019-02-01T00:00:00.
createtime Encontra recursos de dados que foram criados em, antes ou depois de uma determinada data ou hora.
Exemplos:
  • createtime:2019-01-01 corresponde a recursos de dados criados em 2019-01-01.
  • createtime<2019-02 corresponde a recursos de dados criados antes de 2019-02-01T00:00:00.
  • createtime>2019-02 corresponde a recursos de dados criados após 2019-02-01T00:00:00.
updatetime Encontra recursos de dados que foram atualizados em, antes ou depois de uma determinada data ou hora.
Exemplos:
  • updatetime:2019-01-01 corresponde aos recursos de dados atualizados em 2019-01-01.
  • updatetime<2019-02 corresponde aos recursos de dados atualizados antes de 2019-02-01T00:00:00.
  • updatetime>2019-02 corresponde aos recursos de dados atualizados após 2019-02-01T00:00:00.
policytag:x Corresponde a x como uma substring do nome de exibição da tag de política. Encontra todos os recursos usando a tag da política de correspondência ou os descendentes.
policytagid=x Corresponde a x como um ID de tag de política ou taxonomia. Encontra todos os recursos usando a tag da política de correspondência ou os descendentes.

Operadores lógicos

Uma consulta pode ser composta de vários predicados com operadores lógicos. Se você não especificar um operador, a lógica AND será implícita. Por exemplo, foo bar retorna entidades que correspondem ao predicado foo e ao predicado bar.

Lógico "E" e lógico "OU" são suportados, por exemplo, foo OR bar.

Você pode negar um predicado com um prefixo - ou NOT. Por exemplo, -name:foo retorna todas as entidades com nomes que não correspondem ao predicado foo.

Sintaxe abreviada

Uma sintaxe de pesquisa abreviada também está disponível, usando | para operadores OR e , para operadores AND.

Por exemplo, para pesquisar entradas em um dos vários projetos usando o operador OR, você pode usar:

projectid:(pid1|pid2|pid3|pid4)

Em vez de:

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

Para pesquisar entradas com nomes de coluna correspondentes:

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

Essa sintaxe abreviada funciona para todos os predicados qualificados listados acima.