Pular para o conteúdo principal

Gerenciar arquivos em volumes Unity Catalog com o driver Databricks JDBC

nota

Este artigo se aplica ao driver Databricks JDBC Simba. Para o driver JDBC desenvolvido pela Databricks, consulte Databricks JDBC Driver (OSS).

Este artigo descreve upload como, download e excluir arquivos em Unity Catalog volumes usando o Databricks JDBCdriver.

Requisitos

  • Databricks JDBC Versões de driver 2.6.38 ou superiores.
  • Em default, o modo de consulta nativa é ativado. Caso contrário, adicione a propriedade UseNativeQuery às cadeias de conexão JDBC, definindo seu valor como 1 ou 2.

Para obter um exemplo completo de código Java que mostra como executar os trechos de código deste artigo no contexto da configuração da autenticação Databricks e da execução de instruções SQL com o driver Databricks JDBC , consulte Configurações de autenticação para o driver Databricks JDBC.

carregar um arquivo

Para upload um arquivo em um volume, o senhor deve adicionar a propriedade StagingAllowedLocalPaths às cadeias de conexão JDBC, definindo o valor dessa propriedade como o caminho do arquivo para upload. Para fazer upload de vários arquivos de locais separados, defina essa propriedade como uma lista de caminhos separados por vírgulas, por exemplo, /tmp/,/usr/tmp/.

Para substituir o conteúdo de qualquer arquivo existente no local de upload especificado, adicione OVERWRITE.

O trecho de código Java a seguir mostra como fazer upload de um arquivo em um volume.

Java
// ...
p.put("StagingAllowedLocalPaths", "/tmp/");

Connection conn = DriverManager.getConnection(url, p);
Statement stmt = conn.createStatement();

stmt.executeQuery("PUT '" +
"/tmp/my-data.csv" +
"' INTO '" +
"/Volumes/main/default/my-volume/my-data.csv" +
"' OVERWRITE")
// ...

baixar um arquivo

O trecho de código Java a seguir mostra como fazer o download de um arquivo de um volume.

Java
// ...
Connection conn = DriverManager.getConnection(url, p);
Statement stmt = conn.createStatement();

stmt.executeQuery("GET '" +
"/Volumes/main/default/my-volume/my-data.csv" +
"' TO '" +
"/tmp/my-downloaded-data.csv" +
"'")
// ...

Excluir um arquivo

O trecho de código Java a seguir mostra como excluir um arquivo de um volume.

Java
// ...
Connection conn = DriverManager.getConnection(url, p);
Statement stmt = conn.createStatement();

stmt.executeQuery("REMOVE '" +
"/Volumes/main/default/my-volume/my-data.csv" +
"'")
// ...