Wiki Databricks
Unity Catalog e governança
Um lugar só para dizer quem pode ler o quê, com nome de três níveis (catálogo.schema.tabela), permissões herdadas e linhagem automática.
O Unity Catalog é a camada de governança do Databricks: um metastore por região, compartilhado entre workspaces, com os objetos organizados em três níveis.
SELECT * FROM lakehouse.gold.vendas_diarias; -- catálogo.schema.tabelaPermissões: o caminho inteiro precisa estar aberto
Para ler uma tabela, o usuário (ou grupo) precisa de três privilégios: USE CATALOG no catálogo, USE SCHEMA no schema e SELECT na tabela. Privilégio dado num nível é herdado pelos objetos abaixo: SELECT no schema vale para todas as tabelas dele, inclusive as que forem criadas depois.
GRANT USE CATALOG ON CATALOG lakehouse TO `analistas`;
GRANT USE SCHEMA ON SCHEMA lakehouse.gold TO `analistas`;
GRANT SELECT ON SCHEMA lakehouse.gold TO `analistas`;
GRANT USE CATALOG ON CATALOG lakehouse TO `financeiro`;
GRANT USE SCHEMA ON SCHEMA lakehouse.gold TO `financeiro`;
GRANT SELECT ON TABLE lakehouse.gold.vendas_diarias TO `financeiro`;
SHOW GRANTS ON TABLE lakehouse.gold.vendas_diarias;Os analistas leem qualquer tabela da gold; o financeiro, só vendas_diarias. Ninguém dos dois enxerga bronze nem silver. A demonstração de linhagem na página inicial deste site aplica exatamente essa regra.
Boas práticas
- Dê permissão a grupos, nunca a pessoas: a pessoa entra e sai do grupo, e a regra fica.
- Separe ambientes por catálogo (
dev,prod) e camadas por schema, ou o contrário, mas de forma consistente. - Use *views* ou filtros de linha e máscaras de coluna para dado sensível, em vez de copiar tabela.
Linhagem
O Unity Catalog registra sozinho de quais tabelas e colunas cada tabela foi derivada, a partir das consultas que rodam no Databricks. Antes de mudar uma coluna da silver, a linhagem mostra quais tabelas gold e quais painéis dependem dela.
- Tabelas gerenciadas (o Unity Catalog cuida dos arquivos) ganham recursos como otimização preditiva; externas apontam para um caminho que você controla.
- Volumes guardam arquivos (CSV, imagens, modelos) com a mesma governança das tabelas.
Fontes
Conhecimento compartilhado pela Genesis Innovation.