Управление файлами в томах каталога Unity с помощью драйвера JDBC Databricks
В этой статье описывается, как отправлять, скачивать и удалять файлы в томах каталога Unity с помощью драйвера JDBC Databricks.
Требования
- Databricks JDBC Driver версии 2.6.38 или более поздней версии.
- По умолчанию режим собственного запроса включен. В противном случае добавьте
UseNativeQuery
свойство в строка подключения JDBC, задав значение или1
2
значение.
Полный пример кода Java, показывающий, как запустить фрагменты кода этой статьи в контексте настройки проверки подлинности Azure Databricks и выполнения инструкций SQL с помощью драйвера JDBC Databricks см. в разделе "Параметры проверки подлинности" для драйвера JDBC Databricks.
Отправка файла
Чтобы отправить файл в том, необходимо добавить StagingAllowedLocalPaths
свойство в JDBC строка подключения, задав значение этого свойства в путь к отправке файла. Чтобы отправить несколько файлов из отдельных расположений, задайте для этого свойства список путей, разделенных запятыми, например /tmp/,/usr/tmp/
.
Чтобы переопределить содержимое любого существующего файла в указанном расположении отправки, добавьте OVERWRITE
.
В следующем фрагменте кода 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")
// ...
Скачивание файла
В следующем фрагменте кода 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" +
"'")
// ...
Удаление файла
В следующем фрагменте кода Java показано, как удалить файл из тома.
// ...
Connection conn = DriverManager.getConnection(url, p);
Statement stmt = conn.createStatement();
stmt.executeQuery("REMOVE '" +
"/Volumes/main/default/my-volume/my-data.csv" +
"'")
// ...