Criar destinatários de dados para o compartilhamento Delta (compartilhamento do Databricks para o Databricks)

Esta página explica como criar destinatários no Delta Sharing, quando os destinatários estão em um workspace do Databricks habilitado para o Unity Catalog. Para exibir, atualizar, excluir, conceder acesso ao compartilhamento, gerenciar propriedades ou restringir o acesso com listas de IP para um destinatário existente, consulte Gerenciar destinatários de dados para o compartilhamento Delta.

Um destinatário é o objeto nomeado que representa a identidade de um usuário ou grupo de usuários que consomem dados compartilhados. A maneira como você cria destinatários difere dependendo se o destinatário tem ou não acesso a um workspace do Databricks habilitado para o Catálogo do Unity:

Para obter mais informações sobre esses dois modos de compartilhamento e quando escolher cada um, confira Compartilhamento aberto versus Compartilhamento de Databricks para Databricks.

Requisitos

Para criar um destinatário:

  • Você deve ter o CREATE RECIPIENT privilégio do metastore do Catálogo do Unity em que os dados que você deseja compartilhar estão registrados.
  • Você deve criar o destinatário usando um workspace do Azure Databricks que tenha esse metastore do Catálogo do Unity anexado.
  • Se você usar um bloco de anotações do Databricks para criar o destinatário, seu ambiente deve usar o Databricks Runtime 11.3 LTS ou superior e o modo de acesso padrão ou dedicado (anteriormente chamados de modos de acesso compartilhado e de usuário único).

Para obter permissões necessárias para outras operações de destinatário (exibir, atualizar, excluir, conceder acesso de compartilhamento, gerenciar propriedades), consulte Gerenciar destinatários de dados para o compartilhamento Delta.

Criar um objeto destinatário para usuários que têm acesso ao Databricks (compartilhamento de Databricks para Databricks)

Se o destinatário de dados tiver acesso a um workspace do Databricks que foi habilitado para o Unity Catalog, você poderá criar um objeto destinatário com um tipo de autenticação de DATABRICKS.

Um objeto de destinatário com o tipo de autenticação de DATABRICKS representa um destinatário de dados em um metastore específico do Catálogo do Unity, identificado na definição do objeto de destinatário por uma cadeia de caracteres de identificador de compartilhamento que consiste na nuvem, região e UUID do metastore. Os dados compartilhados com esse destinatário só poderão ser acessados nesse metastore.

Etapa 1: Solicitar o identificador de compartilhamento do destinatário

Peça a um usuário destinatário para enviar a você o identificador de compartilhamento do metastore do Catálogo do Unity que está anexado aos workspaces nos quais o usuário ou grupo de usuários destinatários trabalhará com os dados compartilhados.

O identificador de compartilhamento é uma cadeia de caracteres que consiste na nuvem, região e UUID do metastore (o identificador exclusivo do metastore), no formato <cloud>:<region>:<uuid>.

Por exemplo, na captura de tela a seguir, a cadeia de caracteres do identificador de compartilhamento completa é aws:us-west-2:19a84bee-54bc-43a2-87de-023d0ec16016.

exemplo de CURRENT_METASTORE

O destinatário pode encontrar o identificador usando o Explorador de Catálogos, a CLI do Catálogo do Databricks Unity ou a função SQL padrão CURRENT_METASTORE em um notebook do Databricks ou uma consulta SQL do Databricks que é executada em uma computação capaz de utilizar o Unity-Catalog no workspace que pretende usar.

Explorador do Catálogo

Para obter o identificador de compartilhamento usando o Gerenciador de Catálogos:

  1. No workspace do Azure Databricks, clique no ícone Dados.Catálogo.

  2. Na parte superior do painel Catálogo, clique no ícone de engrenagem e selecione Compartilhamento Delta.

    Como alternativa, no canto superior direito, clique em Compartilhar > Delta Sharing.

  3. Na guia Compartilhado comigo, clique no nome da organização de compartilhamento do Databricks no canto superior direito e selecione Copiar identificador de compartilhamento.

SQL

Execute o seguinte comando em um notebook ou no editor de consultas do Databricks SQL:

SELECT CURRENT_METASTORE();

CLI

Execute o comando a seguir usando a CLI do Databricks. O identificador de compartilhamento é retornado como o global_metastore_id.

databricks metastores summary

Você pode enviar ao destinatário as informações contidas nesta etapa ou orientá-lo para Obter acesso no modelo Databricks-to-Databricks.

Etapa 2: Criar o destinatário

Para criar um destinatário para o compartilhamento de Databricks para Databricks, você pode usar o Explorador de Catálogo, a CLI do Catálogo do Unity do Databricks ou o comando CREATE RECIPIENT SQL em um notebook do Azure Databricks ou no editor de consultas SQL do Databricks.

Permissões necessárias: Administrador do Metastore ou usuário com o privilégio CREATE RECIPIENT para o metastore do Catálogo do Unity no qual os dados que você deseja compartilhar estão registrados.

Explorador do Catálogo

  1. No workspace do Azure Databricks, clique no ícone Dados.Catálogo.

  2. Na parte superior do painel Catálogo, clique no ícone de engrenagem e selecione Compartilhamento Delta.

    Como alternativa, no canto superior direito, clique em Compartilhar > Delta Sharing.

  3. Na guia Compartilhado por mim, clique em Novo destinatário.

  4. Insira o nome do destinatário.

  5. Para o tipo destinatário, selecione Databricks.

  6. Insira o identificador de compartilhamento do destinatário.

    Use toda a cadeia de caracteres do identificador de compartilhamento no formato <cloud>:<region>:<uuid>. Por exemplo, aws:us-west-2:19a84bee-54bc-43a2-87de-023d0ec16016.

  7. (Opcional) Insira um comentário.

  8. Clique em Criar.

  9. (Opcional) Criar propriedades do Destinatário personalizadas.

    Na guia Visão geral do destinatário, clique no ícone de edição ao lado das propriedades do destinatário. Em seguida, adicione um nome de propriedade (Chave) e Valor. Para obter detalhes, consulte Gerenciar propriedades do destinatário.

SQL

Execute o seguinte comando em um notebook ou no editor de consultas do Databricks SQL:

CREATE RECIPIENT [IF NOT EXISTS] <recipient-name>
USING ID '<sharing-identifier>'
[COMMENT "<comment>"];

Use toda a cadeia de caracteres do identificador de compartilhamento no formato <cloud>:<region>:<uuid>. Por exemplo, aws:eu-west-1:g0c979c8-3e68-4cdf-94af-d05c120ed1ef.

Você também pode adicionar propriedades personalizadas para o destinatário. Para obter detalhes, consulte Gerenciar propriedades do destinatário.

CLI

Execute o comando a seguir usando a CLI do Databricks. Substitua os valores do espaço reservado:

  • <recipient-name>: o nome do destinatário.
  • <sharing-identifier>: Use toda a cadeia de caracteres do identificador de compartilhamento no formato <cloud>:<region>:<uuid>. Por exemplo, aws:eu-west-1:g0c979c8-3e68-4cdf-94af-d05c120ed1ef.
  • <authentication-type>: defina para DATABRICKS quando uma cadeia de caracteres do identificador de compartilhamento no formato <cloud>:<region>:<uuid> for fornecida para <sharing-identifier>.
databricks recipients create <recipient-name> <authentication-type> --sharing-code <sharing-identifier>

Você também pode adicionar propriedades personalizadas para o destinatário. Para obter detalhes, consulte Gerenciar propriedades do destinatário.

O destinatário é criado com o authentication_type do DATABRICKS.

Próximas Etapas