Conectar ao armazenamento de objetos na cloud usando o Unity Catalog
Este artigo apresenta uma visão geral das conexões de armazenamento cloud que são necessárias para trabalhar com o uso de dados Unity Catalog, juntamente com informações sobre como o Unity Catalog rege o acesso ao armazenamento cloud.
Observação
Se o workspace foi criado antes de 6 de março de 2024, ele pode não estar habilitado para o Unity Catalog. Um administrador account deve habilitar o Unity Catalog para seu workspace. Consulte Ativar um workspace para o Unity Catalog.
Como o Unity Catalog usa o armazenamento em nuvem?
Databricks recomenda usar o site Unity Catalog para gerenciar o acesso a todos os dados que o senhor armazenou no armazenamento de objetos cloud. Unity Catalog fornece um conjunto de ferramentas para configurar conexões seguras com o armazenamento de objetos cloud. Essas conexões fornecem acesso para concluir as seguintes ações:
Ingerir dados brutos em um lakehouse.
Crie e leia tabelas gerenciais e volumes gerenciais de dados não estruturados no armazenamento do Unity Catalog-gerenciar cloud.
Registre ou crie tabelas externas contendo dados tabulares e volumes externos contendo dados não estruturados no armazenamento cloud que é gerenciado usando seu provedor cloud.
Ler e gravar dados não estruturados (como volumes do Unity Catalog).
Para ser mais específico, o site Unity Catalog usa o armazenamento cloud de duas maneiras principais:
locais de armazenamento padrão (ou "gerenciar") para tabelas gerenciar e volumes gerenciar (dados não estruturados e não tabulares) que o senhor cria em Databricks. Esses locais de armazenamento gerencial podem ser definidos no nível do metastore, do catálogo ou do esquema. O senhor cria locais de armazenamento gerenciados em seu provedor cloud, mas o ciclo de vida deles é totalmente gerenciado pelo Unity Catalog.
Locais de armazenamento onde tabelas e volumes externos são armazenados. São tabelas e volumes cujo acesso a partir de Databricks é gerenciado por Unity Catalog, mas cujo ciclo de vida de dados e disposição de arquivos são gerenciados usando seu provedor cloud e outras plataformas de dados. Normalmente, o usuário usa tabelas externas para registrar grandes quantidades de dados existentes em Databricks ou se também precisar de acesso de gravação às ferramentas de uso de dados fora de Databricks.
Para obter mais informações sobre gerenciar versus tabelas e volumes externos, consulte O que são tabelas e visualizações? e What are Unity Catalog volumes (O que são volumes do Unity Catalog?).
Aviso
Não dê aos usuários finais acesso em nível de armazenamento às tabelas ou volumes gerenciados pelo Unity Catalog. Isso compromete a segurança e a governança dos dados.
Evite conceder aos usuários acesso direto aos buckets do Google Cloud Storage ou do Cloudflare R2 que são usados como armazenamento gerenciado do Unity Catalog. A única identidade que deve ter acesso aos dados gerenciados pelo Unity Catalog é a identidade usada pelo Unity Catalog. Ignorar isso cria os seguintes problemas em seu ambiente:
Os controles de acesso estabelecidos no Unity Catalog podem ser contornados por usuários que têm acesso direto ao GCS ou R2.
Auditoria, linhagem e outros recursos de monitoramento do Unity Catalog não capturarão o acesso direto.
O ciclo de vida dos dados está quebrado. Ou seja, modificar, excluir ou evoluir tabelas no Databricks interromperá os consumidores que têm acesso direto ao armazenamento, e gravações fora do Databricks podem resultar em corrupção de dados.
Quais provedores de armazenamento em nuvem são compatíveis?
O Databricks oferece suporte a buckets do Google Cloud Storage (GSC) e buckets do Cloudflare R2 como locais de armazenamento em nuvem para ativos de dados registrados no Unity Catalog. O R2 destina-se principalmente a casos de uso em que você deseja evitar taxas de saída de dados, como o Delta Sharing entre nuvens e regiões. Para obter mais informações, consulte Usar réplicas do Cloudflare R2 ou migrar o armazenamento para o R2.
Como o Unity Catalog controla o acesso ao armazenamento em nuvem?
Para gerenciar o acesso ao armazenamento cloud subjacente que contém tabelas e volumes, o Unity Catalog usa um objeto seguro chamado local externo, que define um caminho para um local de armazenamento cloud e as credenciais necessárias para acessar esse local. Essas credenciais são, por sua vez, definidas em um objeto seguro do Unity Catalog chamado credencial de armazenamento. Ao conceder e revogar o acesso a locais externos seguros em Unity Catalog, o senhor controla o acesso aos dados no local de armazenamento cloud. Ao conceder e revogar o acesso a credenciais de armazenamento seguras no Unity Catalog, o senhor controla a capacidade de criar objetos de localização externa.
Para obter detalhes, consulte gerenciar o acesso ao armazenamento cloud usando Unity Catalog.
Acesso baseado em caminho ao armazenamento em nuvem
Embora o site Unity Catalog ofereça suporte ao acesso baseado em caminho a tabelas externas e volumes externos usando URIs de armazenamento cloud, o site Databricks recomenda que os usuários leiam e gravem todas as tabelas Unity Catalog usando nomes de tabelas e acessem dados em volumes usando caminhos /Volumes
. Os volumes são o objeto seguro que a maioria dos usuários do Databricks deve usar para interagir diretamente com dados não tabulares no armazenamento de objetos do cloud. Consulte O que são volumes do Unity Catalog?