أدوات Databricks المساعدة مع الاتصال Databricks ل Scala

إشعار

تتناول هذه المقالة الاتصال Databricks لوقت تشغيل Databricks 13.3 LTS وما فوق.

توضح هذه المقالة كيفية استخدام أدوات Databricks المساعدة مع الاتصال Databricks ل Scala. تمكنك الاتصال Databricks من توصيل IDEs الشائعة وخوادم دفاتر الملاحظات والتطبيقات المخصصة إلى مجموعات Azure Databricks. راجع ما هو Databricks الاتصال؟. للحصول على إصدار Python من هذه المقالة، راجع Databricks Utilities with Databricks الاتصال ل Python.

إشعار

قبل البدء في استخدام الاتصال Databricks، يجب عليك إعداد عميل الاتصال Databricks.

يمكنك استخدام الاتصال Databricks للوصول إلى Databricks Utilities كما يلي:

  • يستخدم DBUtils.getDBUtils للوصول إلى نظام ملفات Databricks (DBFS) والأسرار من خلال Databricks Utilities. DBUtils.getDBUtils ينتمي إلى Databricks Utilities لمكتبة Scala .
  • لا تتوفر وظائف أدوات Databricks المساعدة بخلاف الأدوات المساعدة السابقة لمشاريع Scala.
  • يعلن الاتصال Databricks ل Scala بالفعل عن تبعية على Databricks Utilities لمكتبة Scala، لذلك لا تحتاج إلى الإعلان صراحة عن هذه التبعية في ملف بناء مشروع Scala مثل build.sbt ل sbtأو pom.xml ل Maven أو build.gradle ل Gradle.
  • يتم تحديد مصادقة Databricks Utilities لمكتبة Scala من خلال تهيئة DatabricksSession الفئة في مشروع الاتصال Databricks ل Scala.

تلميح

يمكنك أيضا استخدام Databricks SDK ل Java من Scala للوصول إلى أي واجهة برمجة تطبيقات Databricks REST متاحة، وليس فقط واجهات برمجة تطبيقات Databricks Utilities السابقة. راجع مستودع databricks/databricks-sdk-java في GitHub وأيضا استخدم Scala مع Databricks SDK ل Java.

يوضح المثال التالي كيفية استخدام أدوات Databricks المساعدة لمكتبة Scala لأتمتة وحدة تخزين كتالوج Unity. ينشئ هذا المثال ملفا باسم 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)
  }
}