Служебные программы Databricks с Databricks Connect для Scala
Заметка
В этой статье рассматривается Databricks Connect для Databricks Runtime версии 13.3 LTS и выше.
В этой статье описывается, как использовать служебные программы Databricks с Databricks Connect для Scala. Databricks Connect позволяет подключать популярные среды разработки, серверы блокнотов и пользовательские приложения к кластерам Azure Databricks. См. Что такое Databricks Connect?. Для версии этой статьи на Python см. утилиты Databricks с Databricks Connect для Python.
Заметка
Прежде чем начать использовать Databricks Connect, необходимо настроить клиент Databricks Connect.
Вы используете Databricks Connect для доступа к служебным программам Databricks следующим образом:
- Используйте
для доступа к Файловой системе Databricks (DBFS) и секретов через служебные программы Databricks.DBUtils.getDBUtils
принадлежит библиотеке Databricks Utilities for Scala. - Для проектов Scala нет функциональных возможностей Databricks Utilities, отличных от предыдущих служебных программ.
- Databricks Connect для Scala уже объявляет зависимость от библиотеки утилит Databricks для Scala, поэтому вам не нужно явно указывать эту зависимость в файле сборки вашего проекта на Scala, такой как
build.sbt
дляsbt
,pom.xml
для Maven илиbuild.gradle
для Gradle. - Проверка подлинности для библиотеки Databricks Utilities для Scala определяется путем инициализации класса
DatabricksSession
в проекте Databricks Connect для Scala.
Совет
Вы также можете использовать пакет SDK Databricks для Java из Scala для доступа к любому доступному REST API Databricks, а не только к предыдущим API служебных программ Databricks. См. репозиторий
В следующем примере показано, как с помощью библиотеки Databricks Utilities для Scala автоматизировать том Unity Catalog. В этом примере создается файл с именем zzz_hello.txt
в пути тома в рабочей области, считывает данные из файла, а затем удаляет файл.
import com.databricks.sdk.scala.dbutils.DBUtils
object Main {
def main(args: Array[String]): Unit = {
val filePath = "/Volumes/main/default/my-volume/zzz_hello.txt"
val fileData = "Hello, Databricks!"
val dbutils = DBUtils.getDBUtils()
dbutils.fs.put(
file = filePath,
contents = fileData,
overwrite = true
)
println(dbutils.fs.head(filePath))
dbutils.fs.rm(filePath)
}
}