Gerenciar compartilhamentos para Delta Sharing

Esta página descreve como exibir, atualizar e excluir compartilhamentos delta existentes em Azure Databricks. Um compartilhamento é um objeto protegível no Catálogo do Unity que agrupa tabelas, exibições, volumes, notebooks, modelos de IA e outros ativos de dados para compartilhamento com um ou mais destinatários.

Para criar um novo compartilhamento ou adicionar ativos de dados a um compartilhamento existente, consulte Criar compartilhamentos para Delta Sharing. Para conceder a um destinatário acesso a um compartilhamento, consulte Gerenciar o acesso aos compartilhamentos de dados de compartilhamento Delta (para provedores). Para gerenciar os destinatários de dados com os quais você compartilha, consulte Gerenciar destinatários de dados para o compartilhamento Delta.

Para saber mais sobre o modelo de compartilhamento, consulte Compartilhamentos, provedores e destinatários.

Requirements

Verifique se você atende aos requisitos listados para cada tarefa que deseja concluir.

Tarefa Requirements
Conceder acesso a um destinatário para uma área compartilhada
  • Seja um administrador do metastore. OR
  • Seja um usuário com permissões delegadas ou propriedade nos objetos de compartilhamento e destinatário, o que significa que o usuário deve atender aos dois requisitos a seguir:
    • Ter os privilégios de USE SHARE e SET SHARE PERMISSION OU ser o proprietário do compartilhamento
    • Ter USE RECIPIENT privilégio OU ser o proprietário do destinatário
Exibir compartilhamentos
  • Seja um administrador do metastore (pode exibir tudo). OR
  • Seja um usuário com o USE SHARE privilégio (pode exibir tudo). OR
  • Seja o proprietário do objeto de compartilhamento.
Atualizar o proprietário do compartilhamento
  • Seja um administrador do metastore.
Atualizar o nome do compartilhamento
  • Desfrute do privilégio de CREATE SHARE.
  • Ser o proprietário da ação.
Atualizar outras propriedades de compartilhamento
  • Ser o proprietário da ação.
Excluir compartilhamentos
  • Seja o proprietário do objeto de compartilhamento.

Exibir compartilhamentos e detalhes de compartilhamento

Verifique se você atende aos requisitos antes de exibir compartilhamentos e compartilhar detalhes.

Para exibir uma lista de compartilhamentos ou detalhes sobre um compartilhamento, use o Catalog Explorer, a CLI do Catálogo do Databricks Unity ou os comandos SQL em um notebook do Azure Databricks ou no editor de consultas SQL do Databricks.

Os detalhes do compartilhamento incluem o seguinte:

  • O proprietário do compartilhamento, criador, data e hora de criação, quem atualizou, data e hora da última atualização, comentários.
  • Ativos de dados no compartilhamento.
  • Destinatários com acesso ao compartilhamento.

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 de engrenagem e selecione Compartilhamento Delta.

    Como alternativa, na página Acesso rápido, clique no botão Compartilhamento Delta >.

  3. Abra a guia Compartilhamentos para exibir uma lista de compartilhamentos.

  4. Veja os detalhes do compartilhamento na guia Detalhes.

SQL

Para exibir uma lista de compartilhamentos, execute o comando a seguir em um notebook ou no editor de consultas do Databricks SQL. Opcionalmente, substitua <pattern> por um predicado LIKE.

SHOW SHARES [LIKE <pattern>];

Para exibir detalhes sobre um compartilhamento específico, execute o comando a seguir.

DESCRIBE SHARE <share-name>;

Para exibir detalhes sobre todas as tabelas, exibições e volumes em um compartilhamento, execute o comando a seguir.

SHOW ALL IN SHARE <share-name>;

CLI

Para exibir uma lista de compartilhamentos, execute o comando a seguir usando a CLI do Databricks.

databricks shares list

Para exibir detalhes sobre um compartilhamento específico, execute o comando a seguir.

databricks shares get <share-name>

Exibir os destinatários com permissões em um compartilhamento

Verifique se você atende aos requisitos antes de exibir os destinatários.

Para exibir a lista de compartilhamentos aos quais um destinatário recebeu acesso, use o Catalog Explorer, a CLI do Catálogo do Databricks Unity ou o SHOW GRANTS TO RECIPIENT comando SQL em um notebook do Azure Databricks ou no editor de consultas SQL do Databricks.

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 de engrenagem e selecione Compartilhamento Delta.

    Como alternativa, na página Acesso rápido, clique no botão Compartilhamento Delta >.

  3. Na guia Compartilhado por mim, localize e selecione o destinatário.

  4. Acesse a guia Destinatários para exibir a lista de destinatários que podem acessar o compartilhamento.

SQL

Execute o comando a seguir em um notebook ou no editor de SQL do Databricks.

SHOW GRANTS ON SHARE <share-name>;

CLI

Execute o comando a seguir usando a CLI do Databricks.

databricks shares share-permissions <share-name>

Atualizar compartilhamentos

Verifique se você atende aos requisitos antes de fazer atualizações em um compartilhamento.

Você pode atualizar um compartilhamento das seguintes maneiras:

  • Renomear um compartilhamento.
  • Remover tabelas, exibições, volumes e esquemas de um compartilhamento.
  • Adicionar ou atualizar um comentário em um compartilhamento.
  • Renomeie o alias de uma tabela (o nome da tabela exibido para o destinatário).
  • Habilite ou desabilite o acesso aos dados de histórico de uma tabela, permitindo que os destinatários executem consultas de viagem no tempo ou leituras de streaming da tabela.
  • Adicionar, atualizar ou remover definições de partição.
  • Alterar o proprietário do compartilhamento.

Para fazer essas atualizações em compartilhamentos, use o Catalog Explorer, a CLI do Catálogo do Databricks Unity ou os comandos SQL em um notebook do Azure Databricks ou no editor de consultas SQL do Databricks. No entanto, você não pode usar o Gerenciador de Catálogos para renomear o compartilhamento.

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 de engrenagem e selecione Compartilhamento Delta.

    Como alternativa, na página Acesso rápido, clique no botão Compartilhamento Delta >.

  3. Na guia Compartilhado por mim, localize o compartilhamento que você deseja atualizar e clique no nome dele.

Na página de detalhes do compartilhamento, faça o seguinte:

  • Clique no ícone Editar ícone editar ao lado do campo do proprietário ou do comentário para atualizar esses valores.
  • Clique no botão do menu de três linhas horizontais Ícone de menu Kebab. na linha de um ativo para removê-lo.
  • Clique em Gerenciar ativos > Editar ativos para atualizar todas as outras propriedades:
    • Para remover um ativo, desmarque a caixa de seleção ao lado do ativo.
    • Para adicionar, atualizar ou remover definições de partição, clique em Opções avançadas.

SQL

Execute os comandos a seguir em um notebook ou no editor do Databricks SQL.

Renomear um compartilhamento:

ALTER SHARE <share-name> RENAME TO <new-share-name>;

Remover tabelas de um compartilhamento:

ALTER SHARE share_name REMOVE TABLE <table-name>;

Remover volumes de um compartilhamento:

ALTER SHARE share_name REMOVE VOLUME <volume-name>;

Adicionar ou atualizar um comentário em um compartilhamento:

COMMENT ON SHARE <share-name> IS '<comment>';

Adicionar ou modificar partições para uma tabela em um compartilhamento:

ALTER SHARE <share-name> ADD TABLE <table-name> PARTITION(<clause>);

Alterar o proprietário do compartilhamento:

ALTER SHARE <share-name> OWNER TO  '<principal>'

-- Principal must be an account-level user email address or group name.

Habilite o compartilhamento de histórico para uma tabela:

ALTER SHARE <share-name> ADD TABLE <table-name> WITH HISTORY;

Para obter detalhes sobre ALTER SHARE parâmetros, consulte ALTER SHARE.

CLI

Execute os comandos a seguir usando a CLI do Databricks.

Renomear um compartilhamento:

databricks shares update <share-name> --name <new-share-name>

Remover tabelas de um compartilhamento:

databricks shares update <share-name> \
  --json '{
    "updates": [
      {
        "action": "REMOVE",
        "data_object": {
          "name": "<table-full-name>",
          "data_object_type": "TABLE",
          "shared_as": "<table-alias>"
        }
      }
    ]
  }'

Remover volumes de um compartilhamento usando a CLI do Databricks versão 0.210 ou superior:

databricks shares update <share-name> \
  --json '{
    "updates": [
      {
        "action": "REMOVE",
        "data_object": {
          "name": "<volume-full-name>",
          "data_object_type": "VOLUME",
          "string_shared_as": "<volume-alias>"
        }
      }
    ]
  }'

Note

Use a propriedade name se não houver um alias para o volume. Use string_shared_as se houver um alias.

Adicionar ou atualizar um comentário em um compartilhamento:

databricks shares update <share-name> --comment '<comment>'

Alterar o proprietário do compartilhamento:

databricks  shares update <share-name> --owner '<principal>'

A entidade de segurança deve ser um endereço de email de usuário no nível da conta ou um nome de grupo.

Considerações ao atualizar o dono do compartilhamento

Quem é o proprietário do compartilhamento afeta a maneira como os recursos de autorização e segurança, como as políticas ABAC, são avaliados. Transferir a propriedade de compartilhamento para um usuário com privilégios excessivos permite que os destinatários tenham acesso com privilégios excessivos se você tiver uma tabela ou esquema protegido por políticas ABAC.

Excluir compartilhamentos

Ao excluir um compartilhamento, os destinatários não podem mais acessar os dados compartilhados. Verifique se você atende aos requisitos antes de excluir um objeto de compartilhamento.

Para excluir um compartilhamento, use o Gerenciador de Catálogos, a CLI do Catálogo do Databricks Unity ou o comando SQL DELETE SHARE em um bloco de anotações Azure Databricks ou no editor de consultas SQL do Databricks. É necessário ser o proprietário do compartilhamento.

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 de engrenagem e selecione Compartilhamento Delta.

    Como alternativa, na página Acesso rápido, clique no botão Compartilhamento Delta >.

  3. Na guia Compartilhado por mim, localize o compartilhamento que você deseja excluir e clique no nome dele.

  4. Clique no ícone do menu Kebab. Menu kebab e selecione Excluir.

  5. Na caixa de diálogo de confirmação, clique em Excluir.

SQL

Execute o comando a seguir em um notebook ou no editor de SQL do Databricks.

DROP SHARE [IF EXISTS] <share-name>;

CLI

Execute o comando a seguir usando a CLI do Databricks.

databricks shares delete <share-name>