Pular para o conteúdo principal

gerenciar arquivos em volumes

Este artigo fornece exemplos de gerenciamento de arquivos em Unity Catalog volumes para várias interfaces de usuário, ferramentas, biblioteca e idiomas.

A Databricks recomenda o uso de volumes para gerenciar todo o acesso a dados não tabulares no armazenamento de objetos na nuvem. Exemplos de dados não tabulares incluem o seguinte:

  • Arquivos de dados para ingestão, como CSV, JSON e Parquet.
  • Arquivos de texto, imagem e áudio para cargas de trabalho de ciência de dados, ML e AI.
  • Artefatos CSV ou JSON escritos pela Databricks para integração com sistemas externos.

O senhor pode usar volumes para armazenar arquivos como biblioteca, script de inicialização e artefatos de compilação. Consulte Recomendações para arquivos em volumes e arquivos workspace.

Trabalhe com arquivos em volumes usando a interface do usuário do Catalog Explorer

O Catalog Explorer oferece opções para tarefas comuns de gerenciamento de arquivos armazenados nos volumes do Unity Catalog.

Para interagir com arquivos em um volume, faça o seguinte:

  1. Em seu site Databricks workspace, clique em Ícone de catálogo Catalog .
  2. Pesquise ou procure o volume com o qual você deseja trabalhar e selecione-o.

Para obter detalhes sobre como criar e gerenciar volumes, consulte Criar e gerenciar volumes.

Fazer upload de arquivos para um volume

O botão upload to this volume abre uma caixa de diálogo para upload arquivos. Consulte Fazer upload de arquivos para um volume do Unity Catalog.

Os arquivos carregados não podem exceder 5 GB.

baixar arquivos de um volume

Para fazer download de arquivos de um volume, faça o seguinte:

  1. Selecione um ou mais arquivos.
  2. Clique em download para acessar download esses arquivos.

O senhor pode acessar download apenas 10 arquivos por vez.

Excluir arquivos de um volume

Para excluir arquivos de um volume, faça o seguinte:

  1. Selecione um ou mais arquivos.
  2. Clique em Excluir .
  3. Clique em Excluir para confirmar na caixa de diálogo exibida.

Crie um diretório em branco

Para criar um novo diretório em um volume, faça o seguinte:

  1. Clique Menu Kebab à direita do nome do volume.
  2. Selecione Criar diretório .
  3. Insira um nome de diretório.
  4. Clique em Criar .

Excluir diretórios de um volume

Para excluir diretórios de um volume, faça o seguinte:

  1. Selecione um ou mais diretórios.
  2. Clique em Excluir .
  3. Clique em Excluir para confirmar na caixa de diálogo exibida.

Tarefa de gerenciamento de arquivos da interface do usuário para volumes

Clique no menu kebab Menu Kebab ao lado do nome do arquivo para realizar as seguintes ações:

  • Copiar caminho
  • Fazer download do arquivo
  • Excluir arquivo
  • CREATE TABLE

Crie uma tabela a partir de dados em um volume

Databricks fornece uma interface de usuário para criar uma tabela gerenciar Unity Catalog a partir de um arquivo, arquivos ou diretório de arquivos armazenados em um volume Unity Catalog.

Você deve ter CREATE TABLE permissões no esquema de destino e ter acesso a um SQL warehouse em execução.

  1. Selecione um ou mais arquivos ou um diretório. Os arquivos devem ter a mesma disposição de dados.

  2. Clique em Criar tabela . A caixa de diálogo Criar tabela a partir de volumes é exibida.

  3. Use a caixa de diálogo fornecida para revisar uma visualização prévia dos dados e concluir as seguintes configurações:

    • Escolha Criar nova tabela ou Substituir tabela existente

    • Selecione o catálogo e o esquema de destino.

    • Especifique o nome da tabela .

    • (Opcional) Substitua os nomes e tipos de coluna do site default ou opte por excluir colunas.

nota

Clique em Atributos avançados para ver opções adicionais.

  1. Clique em Criar tabela para criar a tabela com os atributos especificados. Após a conclusão, o Catalog Explorer exibe os detalhes da tabela.

Trabalhar programaticamente com arquivos em volumes no Databricks

O senhor pode ler e gravar arquivos em volumes de todos os idiomas compatíveis e editores do site workspace usando o seguinte formato:

/Volumes/catalog_name/schema_name/volume_name/path/to/files

Você interage com arquivos em volumes da mesma forma que interage com arquivos em qualquer local de armazenamento de objetos na nuvem. Isso significa que, se o senhor estiver gerenciando código que usa URIs de nuvem, caminhos de montagem DBFS ou caminhos DBFS root para interagir com dados ou arquivos, poderá atualizar seu código para usar volumes.

nota

Os volumes são usados somente para dados não tabulares. Databricks recomenda o registro tabular uso de dados Unity Catalog tables and then reading and writing uso de dados table names.

Leia e grave dados em volumes

O senhor pode usar Apache Spark, Pandas, Spark SQL e outras bibliotecas OSS para ler e gravar arquivos de dados em volumes.

Os exemplos a seguir demonstram a leitura de um arquivo CSV armazenado em um volume:

Python
df = spark.read.format("csv").load("/Volumes/catalog_name/schema_name/volume_name/data.csv")

display(df)

utilidades comando para arquivos em volumes

O Databricks fornece as seguintes ferramentas para gerenciar arquivos em volumes:

Para obter um exemplo de uso dessas ferramentas para download arquivos da Internet, descompactar arquivos e mover arquivos do armazenamento em bloco efêmero para volumes, consulte download de dados da Internet.

O senhor também pode usar o pacote OSS para utilidades de arquivo comando, como o módulo Python os, conforme mostrado no exemplo a seguir:

Python
import os

os.mkdir('/Volumes/catalog_name/schema_name/volume_name/directory_name')

gerenciar arquivos em volumes a partir de ferramentas externas

A Databricks oferece um conjunto de ferramentas para gerenciar arquivos em volumes de forma programática a partir de seu ambiente local ou de sistemas integrados.

SQL comando para arquivos em volumes

O Databricks suporta as seguintes palavras-chave SQL para interagir com arquivos em volumes:

nota

Databricks O bloco de notas ou o editor de consultas só suportam o comando LIST.

Os seguintes conectores e drivers do Databricks SQL suportam o gerenciamento de arquivos em volumes:

Gerenciar arquivos em volumes com o site Databricks CLI

Use os subcomandos em databricks fs. Consulte fs comando group.

nota

A CLI do Databricks exige que o esquema dbfs:/ preceda todos os caminhos de volumes. Por exemplo, dbfs:/Volumes/catalog_name/schema_name/volume_name/path/to/data.

Gerenciar arquivos em volumes com SDKs

Os seguintes SDKs oferecem suporte ao gerenciamento de arquivos em volumes:

Gerenciar arquivos em volumes com o site REST API

Use a API Files para gerenciar arquivos em volumes.

Exemplos de API REST para arquivos em volumes

Os exemplos a seguir usam curl e o endereço Databricks REST API para executar a tarefa de gerenciamento de arquivos em volumes.

O exemplo a seguir cria uma pasta vazia chamada my-folder no volume especificado.

Bash
curl --request PUT "https://${DATABRICKS_HOST}/api/2.0/fs/directories/Volumes/main/default/my-volume/my-folder/" \
--header "Authorization: Bearer ${DATABRICKS_TOKEN}"

O exemplo a seguir cria um arquivo chamado data.csv com os dados especificados no caminho especificado no volume.

Bash
curl --request PUT "https://${DATABRICKS_HOST}/api/2.0/fs/files/Volumes/main/default/my-volume/my-folder/data.csv?overwrite=true" \
--header "Authorization: Bearer ${DATABRICKS_TOKEN}" \
--header "Content-Type: application/octet-stream" \
--data-binary $'id,Text\n1,Hello World!'

O exemplo a seguir lista o conteúdo de um volume no caminho especificado. Este exemplo usa jq para formatar o JSON do corpo da resposta para facilitar a leitura.

Bash
curl --request GET "https://${DATABRICKS_HOST}/api/2.0/fs/directories/Volumes/main/default/my-volume/" \
--header "Authorization: Bearer ${DATABRICKS_TOKEN}" | jq .

O exemplo a seguir lista o conteúdo de uma pasta em um volume no caminho especificado. Este exemplo usa jq para formatar o JSON do corpo da resposta para facilitar a leitura.

Bash
curl --request GET "https://${DATABRICKS_HOST}/api/2.0/fs/directories/Volumes/main/default/my-volume/my-folder" \
--header "Authorization: Bearer ${DATABRICKS_TOKEN}" | jq .

O exemplo a seguir imprime o conteúdo de um arquivo no caminho especificado em um volume.

Bash
curl --request GET "https://${DATABRICKS_HOST}/api/2.0/fs/files/Volumes/main/default/my-volume/my-folder/data.csv" \
--header "Authorization: Bearer ${DATABRICKS_TOKEN}"

O exemplo a seguir exclui um arquivo no caminho especificado de um volume.

Bash
curl --request DELETE "https://${DATABRICKS_HOST}/api/2.0/fs/files/Volumes/main/default/my-volume/my-folder/data.csv" \
--header "Authorization: Bearer ${DATABRICKS_TOKEN}"

O exemplo a seguir exclui uma pasta do volume especificado.

Bash
curl --request DELETE "https://${DATABRICKS_HOST}/api/2.0/fs/directories/Volumes/main/default/my-volume/my-folder/" \
--header "Authorization: Bearer ${DATABRICKS_TOKEN}"