Partilhar via


Criar um local externo para dados na raiz DBFS

Este artigo mostra como configurar um local externo no Unity Catalog para controlar o acesso ao seu local de armazenamento de raiz DBFS. Embora o Databricks recomende não armazenar dados no armazenamento raiz DBFS, seu espaço de trabalho pode fazê-lo devido a práticas herdadas.

Os locais externos são objetos protegíveis do Unity Catalog que associam credenciais de armazenamento a contêineres de armazenamento de objetos em nuvem. Os locais externos são usados para definir locais de armazenamento gerenciado para tabelas e volumes gerenciados e para controlar o acesso aos locais de armazenamento que contêm tabelas e volumes externos.

Você deve criar um local externo se o metastore local e herdado do Azure Databricks Hive em seu espaço de trabalho armazenar dados na raiz do DBFS e se pretender federar o seu metastore herdado do Hive para que a sua equipa possa trabalhar com as tabelas do seu metastore Hive usando o Unity Catalog. Consulte a federação de metastore do Hive : habilitar o Unity Catalog para governar tabelas registradas em um metastore do Hive e habilitar a federação de metastore do Hive para um metastore de espaço de trabalho herdado.

Antes de começar

Para criar um local externo para a raiz DBFS, você deve ter uma credencial de armazenamento definida no Unity Catalog que dá acesso ao local de armazenamento em nuvem da raiz DBFS. Se você ainda não tiver um, o sistema pode criar um para você durante o processo de criação do local externo.

Requisitos de permissões:

  • Você deve ter os privilégios de CREATE STORAGE CREDENTIAL e CREATE EXTERNAL LOCATION no metastore. Os administradores da Metastore têm esses privilégios por padrão.

    Observação

    Se já existir uma credencial de armazenamento para o local de armazenamento da raiz DBFS, o usuário que cria o local externo não precisará CREATE STORAGE CREDENTIAL, mas precisará CREATE EXTERNAL LOCATION na credencial de armazenamento e no metastore.

  • Você deve ser um administrador de espaço de trabalho para que o sistema crie a credencial de armazenamento para você durante a criação de local externo.

    Você não precisa ser um administrador de espaço de trabalho se já existir uma credencial de armazenamento que dá acesso ao local de armazenamento raiz do DBFS e você tiver CREATE EXTERNAL LOCATION na credencial de armazenamento e no metastore.

Criar o local externo

Você pode usar o Catalog Explorer para criar um local externo para a raiz DBFS.

  1. Na barra lateral, clique ícone CatálogoCatálogo.

  2. Clique em Dados externos > e Criar local externo.

  3. Insira um Nome do local externo.

  4. Na URL, clique em Copiar da montagem do DBFS e selecione Copiar da raiz do DBFS.

    Os campos URL e subcaminho são preenchidos com o caminho de armazenamento em nuvem até à raiz do DBFS.

    Importante

    Ao criar um local externo para a raiz do DBFS, deve-se usar o subcaminho para o local da raiz do DBFS, e não o caminho para o bucket inteiro. O subcaminho é pré-preenchido com user/hive/warehouse, que é um local de armazenamento padrão para tabelas de metastore do Hive. Se quiser um controle de acesso mais refinado aos dados na raiz DBFS, você pode criar locais externos separados para subcaminhos na raiz DBFS.

    Advertência

    Sua raiz DBFS pode ser armazenada no Armazenamento de Blobs do Azure em vez do Azure Data Lake Storage Gen2. Esses locais são acessados usando o driver wasb, que não permite controles de diretório ou nível de arquivo. Portanto, o Unity Catalog pode impor o controle de acesso somente no nível do contêiner, o que significa que os usuários com acesso a esse local externo podem potencialmente acessar outros dados no mesmo contêiner se estiverem usando clusters com modo de acesso de usuário único. Para evitar isso, imponha o uso de clusters de modo de acesso compartilhado, armazéns SQL ou computação sem servidor.

  5. Selecione uma credencial de armazenamento que conceda acesso ao local de armazenamento em nuvem raiz do DBFS ou, se nenhuma tiver sido definida, clique em + Criar nova credencial de armazenamento.

    Para criar a credencial de armazenamento, selecione um Tipo de Credencial de raiz do DBFS . Uma credencial de armazenamento é criada automaticamente quando você salva o local externo.

  6. (Opcional) Adicione um comentário.

  7. (Opcional) Clique Opções Avançadas e ative Modo de Fallback.

    O modo de fallback destina-se a cenários de migração de carga de trabalho herdada. Consulte Ativar o modo de fallback em locais externos.

  8. Clique Criar.

  9. Vá para o separador Permissões para conceder permissão para usar a localização externa.

    1. Clique Conceder.
    2. Selecione utilizadores, grupos ou principais de serviço no campo Entidades e selecione o privilégio que deseja conceder.
    3. Clique Conceder.
  10. (Opcional) Defina os espaços de trabalho que podem acessar esse local externo.

    Por padrão, os usuários em qualquer espaço de trabalho que use esse metastore do Unity Catalog podem ter acesso aos dados nesse local. Você pode limitar esse acesso a espaços de trabalho específicos. O Databricks recomenda limitar o acesso ao espaço de trabalho em que a raiz DBFS está.

    Consulte Vincular um local externo a um ou mais espaços de trabalho.