Pular para o conteúdo principal

Criar e trabalhar com tabelas de saída no Databricks Clean Rooms

Esta página apresenta as tabelas de saída, que são tabelas temporárias somente leitura geradas por uma execução do Notebook e compartilhadas com o metastore Unity Catalog do executor do Notebook. Este artigo descreve como usar um Notebook para criar tabelas de saída e como os executores podem ler essas tabelas de saída em seu metastore Unity Catalog.

Visão geral das tabelas de saída

As tabelas de saída permitem salvar temporariamente a saída do Notebook que está sendo executado em uma sala limpa em um catálogo de saída no metastore Unity Catalog, onde é possível disponibilizar os dados para os membros da equipe que não têm a capacidade de executar o Notebook por conta própria. O senhor também pode usar o LakeFlow Jobs para executar o Notebook e realizar tarefas nas tabelas de saída. Combinadas com o tipo de tarefa do Clean Room Notebook e o suporte a valores de tarefa, as tabelas de saída permitem que o senhor crie fluxos de trabalho complexos que dependem do Clean Room Notebook.

As tabelas de saída são somente para leitura.

Somente a entidade específica (usuário, grupo ou entidade de serviço) que executa o Notebook tem acesso de leitura default à tabela de saída. Não há permissão de escrita. Um administrador de metastore pode conceder acesso de leitura a outras entidades principais em sua account Databricks, usando privilégios do Unity Catalog.

Para, em vez disso, disponibilizar a saída para todos os colaboradores na clean room, grave em um esquema de saída compartilhado. Consulte Compartilhar a saída com todos os colaboradores.

Tabelas de saída são armazenadas por 30 dias no local de armazenamento default da sala limpa central e compartilhadas com o metastore do executor usando o OpenSharing. Se desejar manter uma tabela de saída por mais de 30 dias, é preciso copiá-la para o armazenamento local.

Cada execução do Notebook cria um novo esquema no catálogo de saída. A nova execução não pode anexar uma tabela de saída existente.

nota

Os colaboradores em Databricks em todas as três nuvens - AWS, Azure e Google Cloud - podem compartilhar o Notebook que cria tabelas de saída e podem ler as tabelas de saída que são geradas quando executam o Notebook compartilhado.

Crie uma tabela de saída

Para criar uma tabela de saída, use os parâmetros cr_output_catalog e cr_output_schema no namespace da tabela de três partes. Cada execução do Notebook produz um novo esquema.

No exemplo a seguir, a célula Notebook cria uma tabela de saída chamada overlapping_users no catálogo de saída do executor que lista os usuários cujo endereço email aparece nas tabelas collaborator.advertiser.profiles e creator.publisher.profiles.

SQL
CREATE TABLE identifier(:cr_output_catalog || '.' || :cr_output_schema || '.overlapping_users') AS
SELECT collab_profiles.*
FROM collaborator.advertiser.profiles AS collab_profiles
JOIN creator.publisher.profiles AS creator_profiles
ON collab_profiles.email = creator_profiles.email

Compartilhe os resultados com todos os colaboradores.

info

Visualização

Esse recurso está em Public Preview.

Por default, a tabela de resultados só fica acessível ao colaborador que executa o Notebook e somente após a execução ser concluída com sucesso. Com a saída compartilhada, a execução de um notebook também pode gravar em um esquema de saída compartilhado que todos os colaboradores podem ler imediatamente, mesmo antes da conclusão da execução.

Uma única execução de notebook pode gravar em ambos os esquemas:

  • Use cr_output_schema para gravar tabelas que apenas o executor pode ler.
  • Use cr_shared_output_schema para escrever tabelas que todos os colaboradores possam ler.

Antes de começar

  • O criador deve criar uma nova sala limpa com a Saída Compartilhada ativada. A saída compartilhada é definida quando a sala limpa é criada e não pode ser alterada posteriormente. A página de detalhes da sala limpa mostra "Saída Ativada" quando a saída compartilhada está ligada.

  • Crie o catálogo de saída imediatamente após criar a sala limpa. Consulte a seção " Antes de começar". Se você criar o catálogo de saída após uma execução, os colaboradores podem não ter as permissões necessárias no esquema de saída compartilhado. O proprietário da sala limpa deve conceder-lhes as permissões posteriormente.

Escreva no esquema de saída compartilhado

Em um Notebook, utilize o parâmetro cr_shared_output_schema no namespace de tabela de três partes. O exemplo a seguir grava resultados que todos os colaboradores podem ler:

SQL
CREATE TABLE identifier(:cr_output_catalog || '.' || :cr_shared_output_schema || '.audience_overlap') AS
SELECT creator_profiles.segment_id, COUNT(DISTINCT collab_profiles.email) AS overlap_count
FROM collaborator.advertiser.profiles AS collab_profiles
JOIN creator.publisher.profiles AS creator_profiles
ON collab_profiles.email = creator_profiles.email
GROUP BY creator_profiles.segment_id

As tabelas no esquema de saída compartilhado ficam disponíveis para todos os colaboradores assim que são criadas, mesmo antes da conclusão da execução. As tabelas que você escreve no cr_output_schema exclusivo do executor permanecem disponíveis apenas para o executor e somente após a execução ser concluída com sucesso.

Para análises de JAR, o Clean Rooms injeta automaticamente o esquema de saída compartilhado como um parâmetro --cr_shared_output_schema <value> que seu JAR pode referenciar. Consulte Executar cargas de trabalho JAR em salas limpas do Databricks.

O esquema de saída compartilhado é excluído automaticamente após 30 dias.

Leia uma tabela de saída

As tabelas de saída aparecem em um catálogo compartilhado no metastore do executor do Notebook. No painel Catálogo do Catalog Explorer, eles aparecem na lista de catálogos compartilhados .

Ler uma tabela de saída é como ler qualquer outra tabela no Unity Catalog. Você deve ter SELECT na tabela, USE CATALOG no catálogo de saída compartilhado e USE SCHEMA no esquema gerado automaticamente. O usuário que executou o Notebook que criou a tabela tem essas permissões pelo site default.

nota

A exclusão de uma sala limpa remove todas as tabelas de saída e o histórico de dados do catálogo de saída.

Antes de começar

Esta seção descreve os requisitos de nuvem, configuração e compute para a leitura de tabelas de saída.

Requisito de catálogo de saída compartilhado

Antes de ler as tabelas de saída, o usuário deve criar o catálogo que as contém. Você só precisa fazer isso uma vez por sala limpa. O proprietário da sala limpa tem permissão para ler e gerenciar o catálogo de saída pelo site default.

Permissões necessárias : EXECUTE CLEAN ROOM TASK

  1. Em seu site Databricks workspace, clique em Ícone de dados. Catalog .
  2. Clique no botão Salas Limpas > .
  3. Selecione a sala limpa na lista.
  4. No painel direito, em Saída , clique em Criar catálogo .
  5. Digite um nome de catálogo de saída ou aceite o endereço default, que é <clean-room-name>_output.

O catálogo de saída aparece na lista de catálogos compartilhados no painel Catálogo do Catalog Explorer. Cada sala limpa da qual você participa pode ter um catálogo de resultados compartilhado em sua metastore.

requisitos de computação

As consultas em tabelas de saída exigem serverless compute. Consulte Conectar-se a serverless compute .

Permissões necessárias para ler uma tabela de saída

O usuário que executou o Notebook que criou a tabela de saída e o proprietário da sala limpa têm permissão para ler e gerenciar a tabela de saída pelo site default. Todos os outros usuários devem ter as seguintes permissões concedidas a eles:

  • SELECT na mesa
  • USE CATALOG no catálogo de saída
  • USE SCHEMA no esquema de saída

execução the Notebook

Para gerar tabelas de saída compartilhadas em seu catálogo de saída, um usuário com acesso à sala limpa deve executar o Notebook. Veja o Notebook de execução em salas limpas. Cada execução do Notebook cria um novo esquema e uma nova tabela de saída.

dica

O senhor pode usar o LakeFlow Jobs para executar o Notebook e realizar tarefas nas tabelas de saída, permitindo um fluxo de trabalho complexo. Veja Use LakeFlow Jobs to execution clean room Notebook.

Localizar e view uma tabela de saída

O usuário que executa o Notebook que cria a tabela de saída pode encontrar um link para a tabela de saída nas páginas de histórico de execução e detalhes de execução do Notebook na UI do Clean Rooms . Em ambos os casos, o link está no campo Esquema de saída . Ver Monitor clean room Notebook execução.

execução história:

Link do esquema de saída no histórico de execução

detalhes da execução:

Link do esquema de saída nos detalhes da execução

Você também pode encontrar o catálogo de saída na lista de catálogos compartilhados no painel Catálogo do Catalog Explorer.

Limitações

Além dos requisitos listados em Visão geral das tabelas de saída e Antes de começar, as tabelas de saída têm as seguintes limitações:

  • As tabelas de saída são compatíveis apenas quando a sala limpa foi criada após o lançamento do recurso de tabela de saída.
  • Somente tabelas são suportadas. Volumes e visualizações, por exemplo, não são.
  • O senhor está limitado ao número de tabelas de saída que cada Notebook pode suportar. Veja limites de recurso.