Referência das tabelas do sistema de tags governadas
Esta página descreve o esquema de tabela do sistema de tags controladas e inclui sample queries. A tabela contém um registro para cada key de tag controlada em sua conta, incluindo tags criadas pelo cliente e geradas pelo sistema. Use-o para determinar programaticamente quais tags em sua conta são controladas.
Caminho da tabela : system.tags.governed_tags
Beta
Esta tabela do sistema está em Beta.
A tabela do sistema de tags controladas contém o Snapshot atual de todas as definições de tags controladas, incluindo as excluídas. Quando uma tag controlada é excluída, seu timestamp deleted_at é preenchido. Para obter a lista atual de tags controladas, filtre para linhas onde deleted_at é null. Consulte Obter as tags controladas para a conta.
Esquema da tabela de tags controladas
A tabela do sistema de tags controladas usa o seguinte esquema:
Nome da coluna | Tipo de dados | Descrição | Exemplo |
|---|---|---|---|
| string | O ID da account a que esta tag governada pertence. |
|
| string | O ID da tag controlada, que é usado para o gerenciamento de permissões. |
|
| string | O nome da chave de tag governada. |
|
| carimbo de data/hora | O momento em que a tag governada foi excluída. |
|
| carimbo de data/hora | O horário em que a tag controlada foi alterada mais recentemente. |
|
A chave primária é account_id combinada com id.
Exemplos de consultas
Substitua os valores dos parâmetros pelos seus antes de executar.
Obter as tags controladas para a conta
Filtre as tags excluídas para obter a lista atual de tags governadas para sua conta:
SELECT
account_id,
id,
tag_key,
change_time
FROM system.tags.governed_tags
WHERE deleted_at IS NULL;
Use o conjunto de resultados como a lista canônica de tags controladas atuais para a account.
Identificar quais atribuições de tag são controladas
Faça o join das tags controladas com as tags de coluna no esquema de informação para determinar quais atribuições de tag do Unity Catalog usam uma key de tag controlada:
WITH governed_tags AS (
SELECT account_id, id, tag_key
FROM system.tags.governed_tags
WHERE deleted_at IS NULL
),
assignments AS (
SELECT
catalog_name, schema_name, table_name, column_name, tag_name, tag_value
FROM system.information_schema.column_tags
)
SELECT
a.catalog_name,
a.schema_name,
a.table_name,
a.column_name,
a.tag_name,
a.tag_value,
CASE WHEN g.tag_key IS NOT NULL THEN TRUE ELSE FALSE END AS is_governed
FROM assignments a
LEFT JOIN governed_tags g
ON a.tag_name = g.tag_key;
Cada atribuição de tag de coluna inclui is_governed = true quando sua chave de tag corresponde a uma chave de tag governada.