Recomendações para arquivos em volumes e arquivos de espaço de trabalho
Ao carregar ou salvar dados ou arquivos no Azure Databricks, você pode optar por armazenar esses arquivos usando volumes do Catálogo Unity ou arquivos de espaço de trabalho. Este artigo contém recomendações e requisitos para usar esses locais. Para obter mais detalhes sobre volumes e arquivos de espaço de trabalho, consulte O que são volumes do Catálogo Unity? e O que são arquivos de espaço de trabalho?.
O Databricks recomenda o uso de volumes do Unity Catalog para armazenar dados, bibliotecas e criar artefatos. Armazene blocos de anotações, consultas SQL e arquivos de código como arquivos de espaço de trabalho. Você pode configurar diretórios de arquivos de espaço de trabalho como pastas Git para sincronizar com repositórios Git remotos. Consulte Integração do Git para pastas do Databricks Git. Pequenos arquivos de dados usados para cenários de teste também podem ser armazenados como arquivos de espaço de trabalho.
As tabelas abaixo fornecem recomendações específicas para arquivos, dependendo do seu tipo de arquivo ou necessidade de recurso.
Importante
O sistema de arquivos Databricks (DBFS) também está disponível para armazenamento de arquivos, mas não é recomendado, pois todos os usuários do espaço de trabalho têm acesso a arquivos no DBFS. Consulte DBFS.
Tipos de ficheiros
A tabela a seguir fornece recomendações de armazenamento para tipos de arquivo. O Databricks suporta muitos formatos de arquivo além do que é fornecido nesta tabela como exemplos.
Tipo de ficheiro | Recomendação |
---|---|
Objetos Databricks, como blocos de anotações e consultas | Armazenar como arquivos de espaço de trabalho |
Arquivos de dados estruturados, como arquivos Parquet e arquivos ORC | Armazenar em volumes do catálogo Unity |
Arquivos de dados semiestruturados, como arquivos de texto (.csv , .txt ) e arquivos JSON (.json ) |
Armazenar em volumes do catálogo Unity |
Arquivos de dados não estruturados, como arquivos de imagem (.png , .svg ), arquivos de áudio (.mp3 ) e arquivos de documentos (.pdf , .docx ) |
Armazenar em volumes do catálogo Unity |
Arquivos de dados brutos usados para exploração de dados adhoc ou inicial | Armazenar em volumes do catálogo Unity |
Dados operacionais, como arquivos de log | Armazenar em volumes do catálogo Unity |
Arquivos grandes, como arquivos ZIP (.zip ) |
Armazenar em volumes do catálogo Unity |
Arquivos de código-fonte, como arquivos Python (.py ), arquivos Java (.java ) e arquivos Scala (.scala ) |
Armazene como arquivos de espaço de trabalho, se aplicável, com outros objetos relacionados, como blocos de anotações e consultas. O Databricks recomenda gerenciar esses arquivos em uma pasta Git para controle de versão e controle de alterações desses arquivos. |
Crie artefatos e bibliotecas, como rodas Python (.whl ) e arquivos JAR (.jar ) |
Armazenar em volumes do catálogo Unity |
Arquivos de configuração | Armazene os arquivos de configuração necessários em espaços de trabalho nos volumes do Catálogo Unity, mas armazene-os como arquivos de espaço de trabalho se forem arquivos de projeto em uma pasta Git. |
Comparação de recursos
A tabela a seguir compara as ofertas de recursos de arquivos de espaço de trabalho e volumes do Catálogo Unity.
Caraterística | Arquivos de espaço de trabalho | Volumes do catálogo Unity |
---|---|---|
Acesso a ficheiros | Os arquivos do espaço de trabalho só são acessíveis uns aos outros dentro do mesmo espaço de trabalho. | Os arquivos são acessíveis globalmente em todos os espaços de trabalho. |
Acesso programático | Os arquivos podem ser acessados usando: - APIs do Spark - FUSÍVEL - Dbutils - API REST - Databricks SDKs - CLI do Databricks |
Os arquivos podem ser acessados usando: - APIs do Spark - FUSÍVEL - Dbutils - API REST - Databricks SDKs - Conectores SQL Databricks - CLI do Databricks - Databricks Terraform Provedor |
Pacotes de ativos Databricks | Por padrão, todos os arquivos em um pacote, que inclui bibliotecas e objetos Databricks, como blocos de anotações e consultas, são implantados com segurança como arquivos de espaço de trabalho. As permissões são definidas na configuração do pacote. | Os pacotes podem ser personalizados para incluir bibliotecas já em volumes quando as bibliotecas excederem o limite de tamanho dos arquivos do espaço de trabalho. Consulte Dependências da biblioteca Databricks Asset Bundles. |
Nível de permissão de arquivo | As permissões estão no nível da pasta Git se o arquivo estiver em uma pasta Git, caso contrário, as permissões serão definidas no nível do arquivo. | As permissões estão no nível do volume. |
Gestão de permissões | As permissões são gerenciadas por ACLs de espaço de trabalho e são limitadas ao espaço de trabalho que as contém. | Metadados e permissões são gerenciados pelo Unity Catalog. Essas permissões são aplicáveis em todos os espaços de trabalho que têm acesso ao catálogo. |
Suporte para armazenamento externo | Não suporta armazenamento externo de montagem | Fornece a opção de apontar para conjuntos de dados pré-existentes no armazenamento externo criando um volume externo. Consulte O que são volumes do Catálogo Unity?. |
Suporte UDF | Não suportado | A escrita a partir de UDFs é suportada usando Volumes FUSE |
Tamanho do ficheiro | Armazene arquivos menores com menos de 500 MB, como arquivos de código-fonte (.py , .md , .yml ) necessários ao lado de blocos de anotações. |
Armazene ficheiros de dados muito grandes em limites determinados pelos fornecedores de serviços em nuvem. |
Upload & download | Suporte para upload e download de até 10MB. | Suporte para upload e download de até 5GB. |
Suporte à criação de tabelas | As tabelas não podem ser criadas com arquivos de espaço de trabalho como o local. | As tabelas podem ser criadas a partir de arquivos em um volume executando COPY INTO , Autoloader ou outras opções descritas em Ingest data into a Databricks lakehouse. |
Estrutura de diretórios & caminhos de arquivo | Os arquivos são organizados em diretórios aninhados, cada um com seu próprio modelo de permissão: - Diretórios base do usuário, um para cada usuário e entidade de serviço no espaço de trabalho - Pastas Git - Compartilhado |
Os arquivos são organizados em diretórios aninhados dentro de um volume Consulte Como você pode acessar dados no Unity Catalog?. |
Histórico de ficheiros | Use a pasta Git nos espaços de trabalho para controlar as alterações de arquivos. | Os logs de auditoria estão disponíveis. |