Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Esta página descreve como se conectar a um local externo do Cloudflare R2. Depois de se conectar, você pode controlar o acesso a esses objetos R2 usando o Catálogo do Unity.
Para se conectar com êxito a um caminho do Cloudflare R2, você precisa de dois objetos protegíveis do Catálogo do Unity. A primeira é uma credencial de armazenamento, que especifica um token de API R2 que permite o acesso ao local R2. Você precisa dessa credencial de armazenamento para o segundo objeto necessário: um local externo, que define o caminho para o local de armazenamento R2 e as credenciais necessárias para acessar esse local.
Requirements
Workspace do Databricks habilitado para Catálogo do Unity.
Databricks Runtime 14.3 ou superior ou SQL warehouse 2024.15 ou superior.
Se você encontrar a mensagem de erro
No FileSystem for scheme "r2”, sua computação provavelmente estará em uma versão sem suporte.Uma conta do Cloudflare. Consulte https://dash.cloudflare.com/sign-up.
Uma função de administrador do Cloudflare R2. Veja a documentação de funções do Cloudflare.
Privilégios
CREATE STORAGE CREDENTIALeCREATE EXTERNAL LOCATIONno metastore do Catálogo do Unity anexado ao workspace. Os administradores de conta e os administradores do metastore têm esses privilégios por padrão.
Etapa 1: Configurar um bucket R2
Crie um bucket Cloudflare R2.
Você pode usar o painel cloudflare ou a ferramenta Cloudflare Wrangler.
Consulte a documentação de introdução do Cloudflare R2 ou a documentação do Wrangler.
Crie um Token de API R2 e aplique-o ao bucket.
Consulte a documentação de autenticação da API do Cloudflare R2.
Defina as seguintes propriedades de token:
Permissões: leitura e gravação de objeto.
Essa permissão concede acesso de leitura e gravação, que é necessário quando você usa o armazenamento R2 como um destino de replicação, conforme descrito em Usar réplicas do Cloudflare R2 ou migrar o armazenamento para r2.
Se você quiser impor o acesso somente leitura do Azure Databricks ao bucket R2, poderá criar um token que conceda somente acesso de leitura. No entanto, isso pode ser desnecessário, pois você pode marcar a credencial de armazenamento como somente leitura e qualquer acesso de gravação concedido por essa permissão será ignorado.
TTL (opcional): o período de tempo pelo qual você deseja compartilhar os dados do bucket com os destinatários de dados.
(opcional) Filtragem de Endereço IP do Cliente: selecione essa opção se você deseja limitar o acesso à rede a endereços IP do destinatário especificados. Se essa opção estiver habilitada, você precisará especificar os endereços IP dos destinatários e incluir o endereço IP NAT do painel de controle do Databricks na lista de permitidos para a região do workspace.
Consulte endereços IP e domínios para serviços e ativos do Azure Databricks.
Copie os valores de token de API R2:
- ID da Chave de Acesso
- Chave de Acesso Secreta
Importante
Os valores de token são mostrados apenas uma vez.
Na página inicial do R2, acesse Detalhes da conta e copie a ID da conta R2.
Etapa 2: Criar a credencial de armazenamento
No Azure Databricks, faça logon em seu workspace.
Clique no
Catálogo.
Clique no botão Dados >externos, vá para a guia Credenciais e selecione Criar credencial.
Selecione Credencial de armazenamento.
Selecione um Tipo de Credencial de Token de API do Cloudflare.
Insira um nome para a credencial e os seguintes valores copiados quando você configurou o bucket R2:
- ID da Conta
- ID da Chave de Acesso
- Chave de acesso secreta
(Opcional) Se você quiser que os usuários tenham acesso somente leitura aos locais externos que usam essa credencial de armazenamento, em Opções avançadas, selecione Somente leitura.
Não selecione essa opção se quiser usar a credencial de armazenamento para acessar o armazenamento R2 que você está usando como um destino de replicação, conforme descrito em Usar réplicas do Cloudflare R2 ou migrar o armazenamento para R2.
Para obter mais informações, confira Marcar uma credencial de armazenamento como somente leitura.
Clique em Criar.
Na caixa de diálogo Credencial de armazenamento criada, copie a ID externa.
(Opcional) Associe as credenciais de armazenamento a workspaces específicos.
Por padrão, uma credencial de armazenamento pode ser usada por qualquer usuário privilegiado em qualquer workspace anexado ao metastore. Se você quiser permitir o acesso apenas de workspaces específicos, acesse a guia Workspaces e atribua workspaces. Consulte Atribuir uma credencial de armazenamento a espaços de trabalho específicos.
Etapa 3: Criar o local externo
Para criar o local externo, use o Catalog Explorer se preferir usar uma interface do usuário gráfica ou SQL se preferir a criação programática.
Opção 1: criar um local externo usando o Gerenciador de Catálogos
Faça logon em um espaço de trabalho que esteja anexado ao metastore.
Na barra lateral, clique no
Catálogo.
Clique no botão Dados >externos, vá para a guia Locais Externos e clique em Criar local externo.
Na caixa de diálogo Criar um novo local externo , clique em Manual e em Avançar.
Você não pode usar a opção de Início Rápido do AWS para criar um local externo para a raiz DBFS.
Na caixa de diálogo Criar um novo local externo manualmente , insira um nome de local externo.
Em Tipo de armazenamento, selecione R2.
Na URL, insira o caminho. Por exemplo,
r2://my-bucket@my-account-id.r2.cloudflarestorage.com.Em Credencial de armazenamento, selecione a credencial de armazenamento que concede acesso ao local externo.
(Opcional) Se você quiser que os usuários tenham acesso somente leitura ao local externo, clique em Opções Avançadas e selecione Limite para uso somente leitura. Você poderá alterar essa configuração mais tarde. Para obter mais informações, confira Marcar um local externo como somente leitura.
(Opcional) Se o local externo for destinado à migração de carga de trabalho herdada, clique em Opções avançadas e habilite o modo Fallback.
Clique em Criar.
(Opcional) Associar o local externo a espaços de trabalho específicos.
Por padrão, qualquer usuário privilegiado pode usar o local externo em qualquer workspace anexado ao metastore. Se você quiser permitir o acesso apenas de workspaces específicos, acesse a guia Workspaces e atribua workspaces. Consulte Atribuir uma localização externa a espaços de trabalho específicos.
Vá para a guia Permissões para conceder permissão para usar o local externo.
Para que qualquer pessoa possa usar o local externo, você deve conceder permissões:
- Para usar o local externo para adicionar um local de armazenamento gerenciado ao metastore, catálogo ou esquema, conceda o privilégio
CREATE MANAGED LOCATION. - Para criar tabelas ou volumes externos, conceda
CREATE EXTERNAL TABLEouCREATE EXTERNAL VOLUME.
- Selecione Conceder.
- Na caixa de diálogo Conceder em
<external location>, selecione usuários, grupos ou entidades de serviço no campo Entidade de segurança e selecione o privilégio que deseja conceder. - Selecione Conceder.
- Para usar o local externo para adicionar um local de armazenamento gerenciado ao metastore, catálogo ou esquema, conceda o privilégio
Opção 2: criar um local externo usando o SQL
Para criar um local externo usando o SQL, execute o seguinte comando em um notebook ou no editor de consultas SQL. Substitua os valores de espaço reservado.
-
<location-name>: um nome para o local externo. Selocation_nameincluir caracteres especiais, como hifens (-), ele deverá ser colocado entre crases (` `). Consulte Nomes. -
<bucket-path>: o caminho no locatário de nuvem ao qual esse local externo concede acesso. Por exemplo,r2://my-bucket@my-account-id.r2.cloudflarestorage.com. -
<storage-credential-name>: o nome da credencial de armazenamento que autoriza a leitura e a gravação no bucket. Se o nome da credencial incluir caracteres especiais, como hifens (-), ele deverá ser colocado entre crases (` `).
CREATE EXTERNAL LOCATION [IF NOT EXISTS] `<location-name>`
URL '<bucket-path>'
WITH ([STORAGE] CREDENTIAL `<storage-credential-name>`)
[COMMENT '<comment-string>'];
Se você quiser restringir o acesso a locais externos a espaços de trabalho específicos em sua conta, também chamado de vinculação de espaço de trabalho ou isolamento de local externo, consulte Atribuir um local externo a espaços de trabalho específicos.