Gerenciar locais externos

Este artigo descreve como listar, view, atualizar, conceder permissões e excluir locais externos.

Observação

A Databricks recomenda controlar o acesso aos arquivos usando volumes. Consulte O que são volumes do Unity Catalog?

Descrever um local externo

Para ver as propriedades de um local externo, inclusive as permissões e o acesso workspace, o senhor pode usar o Catalog Explorer ou um comando SQL.

  1. Na barra lateral, clique em Ícone de catálogo Catalog.

  2. Na parte superior do painel Catálogo, clique no ícone de engrenagem ícone de engrenagem e selecione External Locations (Locais externos).

    Como alternativa, na página Quick access (Acesso rápido ), clique no botão External data > (Dados externos > ) para ir para External Locations (Locais externos ) tab.

  3. Clique no nome de um local externo para acessar view suas propriedades.

Execute o seguinte comando em um Notebook ou no editor Databricks SQL. Substitua <location-name> pelo nome do local externo.

DESCRIBE EXTERNAL LOCATION <location-name>;

Mostrar concessões em um local externo

Para mostrar concessões em um local externo, use um comando como o seguinte. Opcionalmente, você pode filtrar os resultados para mostrar apenas as concessões do principal especificado.

SHOW GRANTS [<principal>] ON EXTERNAL LOCATION <location-name>;

Substitua os valores de espaço reservado:

  • <location-name>: o nome do local externo que autoriza a leitura e gravação no bucket do GCS no seu clouds tenant.

  • <principal>: o endereço email de um usuário no nível accountou o nome de um grupo no nível account .

Observação

Se o nome de um grupo contiver um espaço, use acentos graves "backticks" (não apóstrofos) para delimitá-lo.

Conceder permissões em um local externo

Esta seção descreve como conceder e revogar permissões em um local externo usando o Catalog Explorer e o comando SQL em uma Notebook ou do Databricks SQL query Databricks. Para obter informações sobre como usar a CLI do Databricks ou o Terraform, consulte a documentação do Databricks Terraform e O que é a CLI do Databricks?.

Você pode conceder as seguintes permissões em um local externo:

  • CREATE EXTERNAL TABLE

  • CREATE EXTERNAL VOLUME

  • CREATE MANAGED STORAGE

Permissões necessárias: o privilégio CREATE EXTERNAL LOCATION no metastore e na credencial de armazenamento referenciada no local externo. Os administradores do metastore têm CREATE EXTERNAL LOCATION no metastore por default.

Para conceder permissão para usar um local externo:

  1. Na barra lateral, clique em Ícone de catálogo Catalog.

  2. Na parte superior do painel Catálogo, clique no ícone de engrenagem ícone de engrenagem e selecione External Locations (Locais externos).

    Como alternativa, na página Quick access (Acesso rápido ), clique no botão External data > (Dados externos > ) para ir para External Locations (Locais externos ) tab.

  3. Clique no nome de um local externo para abrir suas propriedades.

  4. Clique em Permissões.

  5. Para conceder permissão a usuários ou grupos, selecione cada identidade e clique em Conceder.

  6. Para revogar permissões de usuários ou grupos, selecione cada identidade e clique em Revogar.

execute o seguinte comando SQL em um Notebook ou editor query SQL. Este exemplo concede a capacidade de criar uma tabela externa que faça referência ao local externo:

GRANT CREATE EXTERNAL TABLE ON EXTERNAL LOCATION <location-name> TO <principal>;

Substitua os valores de espaço reservado:

  • <location-name>: o nome do local externo que autoriza a leitura e gravação no bucket do GCS no seu clouds tenant.

  • <principal>: o endereço email de um usuário no nível accountou o nome de um grupo no nível account .

Observação

Se o nome de um grupo contiver um espaço, use acentos graves "backticks" (não apóstrofos) para delimitá-lo.

Alterar o proprietário de um local externo

O criador de um local externo é seu proprietário inicial. Para alterar o proprietário para um usuário ou grupo de nível accountdiferente, execute o seguinte comando em um Notebook ou no editor Databricks SQL ou use o Catalog Explorer. Substitua os valores do espaço reservado:

  • <location-name>: nome da credencial.

  • <principal>: o endereço email de um usuário no nível accountou o nome de um grupo no nível account .

ALTER EXTERNAL LOCATION <location-name> OWNER TO <principal>

Marcar um local externo como somente leitura

Se desejar que os usuários tenham acesso somente leitura a um local externo, será possível usar o Catalog Explorer para marcar o local externo como somente leitura.

Tornando locais externos somente leitura:

  • Impede que os usuários gravem em arquivos nesses locais externos, independentemente de quaisquer permissões de gravação concedidas pela account de serviço subjacente à credencial de armazenamento e independentemente das permissões do Unity Catalog concedidas nesse local externo.

  • Impede que os usuários criem tabelas ou volumes (externos ou gerenciados) nesses locais externos.

  • Permite que o sistema valide o local externo corretamente no momento da criação.

Você pode marcar locais externos como somente leitura ao criá-los.

Você também pode usar o Catalog Explorer para alterar o status somente leitura após criar um local externo:

  1. Na barra lateral, clique em Ícone de catálogo Catalog.

  2. Na parte superior do painel Catálogo, clique no ícone de engrenagem ícone de engrenagem e selecione External Locations (Locais externos).

    Como alternativa, na página Quick access (Acesso rápido ), clique no botão External data > (Dados externos > ) para ir para External Locations (Locais externos ) tab.

  3. Selecione o local externo, clique no menu Menu Kebab Actions ao lado do botão Test connection (Testar conexão ) e selecione Edit (Editar).

  4. Na caixa de diálogo de edição, clique em Advanced Options (Opções avançadas ) e selecione a opção Limit to read-only use (Limitar o uso somente para leitura ).

Modificar um local externo

O proprietário de um local externo pode renomear, alterar o URI e alterar a credencial de armazenamento do local externo.

Para renomear um local externo, faça o seguinte:

Execute o seguinte comando em um notebook ou no editor Databricks SQL. Substitua os valores de espaço reservado:

  • <location-name>: O nome do local.

  • <new-location-name>: Um novo nome para o local.

ALTER EXTERNAL LOCATION <location-name> RENAME TO <new-location-name>;

Para alterar o URI para o qual um local externo aponta em seu locatário de nuvem, faça o seguinte:

Execute o seguinte comando em um notebook ou no editor Databricks SQL. Substitua os valores de espaço reservado:

  • <location-name>: O nome do local externo.

  • <url>: o novo URL de armazenamento ao qual o local deve autorizar o acesso em seu locatário de nuvem.

ALTER EXTERNAL LOCATION location_name SET URL '<url>' [FORCE];

A opção FORCE altera o URL mesmo se as tabelas externas dependerem do local externo.

Para alterar a credencial de armazenamento usada por um local externo, faça o seguinte:

Execute o seguinte comando em um notebook ou no editor Databricks SQL. Substitua os valores de espaço reservado:

  • <location-name>: O nome do local externo.

  • <credential-name>: o nome da credencial de armazenamento que concede acesso à URL do local em seu locatário de nuvem.

ALTER EXTERNAL LOCATION <location-name> SET STORAGE CREDENTIAL <credential-name>;

Excluir um local externo

Para excluir (descartar) um local externo você deve ser seu proprietário. Para excluir um local externo, faça o seguinte:

execute o seguinte comando em um Notebook ou no editor Databricks SQL . Os itens entre colchetes são opcionais. Substitua <location-name> pelo nome do local externo.

DROP EXTERNAL LOCATION [IF EXISTS] <location-name>;