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

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

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:

  • Destinatários com acesso a um workspace do Databricks habilitado para Catálogo do Unity:

    Você pode criar um objeto de destinatário com uma conexão segura gerenciada pelo Databricks. Esse modo de compartilhamento é chamado de compartilhamento de Databricks para Databricks e está documentado nessa página.

  • Destinatários sem acesso a um workspace do Databricks habilitado para Catálogo do Unity:

    Você deve usar o compartilhamento aberto, com uma conexão segura gerenciada usando a autenticação baseada em token (tokens de portador ou federação OAuth). Para obter informações sobre como criar destinatários de compartilhamento Databricks-to-Open, consulte Enable Open ID Connect (OIDC) federation for OpenSharing recipients e Create a recipient object for non-Databricks users using bearer tokens (Databricks-to-Open sharing).

Para obter mais informações sobre esses dois modos de compartilhamento e quando escolher quais, consulte o compartilhamento Databricks-to-Open versus o compartilhamento Databricks-to-Databricks.

Requirements

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 OpenSharing.

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.

Gerenciador de Catálogos

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

  1. No workspace Azure Databricks, clique em Data icon.Catalog.

  2. Na parte superior do painel Catálogo , clique no ícone Engrenagem. Ícone de engrenagem e selecione OpenSharing.

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

  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 SQL do Databricks:

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.

Gerenciador de Catálogos

  1. No workspace Azure Databricks, clique em Data icon.Catalog.

  2. Na parte superior do painel Catálogo , clique no ícone Engrenagem. Ícone de engrenagem e selecione OpenSharing.

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

  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 SQL do Databricks:

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 de 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.

Recursos adicionais