Databricks Connect ل Scala
إشعار
تتناول هذه المقالة Databricks Connect ل Databricks Runtime 13.3 LTS وما فوق.
توضح هذه المقالة كيفية بدء استخدام Databricks Connect بسرعة باستخدام Scala مع IntelliJ IDEA والمكون الإضافي Scala.
- للحصول على إصدار Python من هذه المقالة، راجع Databricks Connect ل Python.
- للحصول على إصدار R من هذه المقالة، راجع Databricks Connect for R.
يمكنك Databricks Connect من توصيل IDEs الشائعة مثل IntelliJ IDEA وخوادم دفتر الملاحظات والتطبيقات المخصصة الأخرى إلى مجموعات Azure Databricks. راجع ما هو Databricks Connect؟.
برنامج تعليمي
لتخطي هذا البرنامج التعليمي واستخدام IDE مختلف بدلا من ذلك، راجع الخطوات التالية.
المتطلبات
لإكمال هذا البرنامج التعليمي، يجب أن تفي بالمتطلبات التالية:
يجب أن تفي مساحة عمل Azure Databricks المستهدفة والمجموعة بمتطلبات تكوين نظام المجموعة ل Databricks Connect.
يجب أن يكون لديك معرف نظام المجموعة الخاص بك متوفرا. للحصول على معرف نظام المجموعة، في مساحة العمل، انقر فوق حساب على الشريط الجانبي، ثم انقر فوق اسم نظام المجموعة. في شريط عناوين مستعرض الويب، انسخ سلسلة الأحرف بين
clusters
عنوان URL وفيهconfiguration
.لديك Java Development Kit (JDK) مثبتة على جهاز التطوير الخاص بك. توصي Databricks بأن يتطابق إصدار تثبيت JDK الذي تستخدمه مع إصدار JDK على نظام مجموعة Azure Databricks. يعرض الجدول التالي إصدار JDK لكل وقت تشغيل Databricks مدعوم.
إصدار وقت تشغيل Databricks إصدار JDK 13.3 LTS - 15.0،
13.3 ML LTS - 15.0 MLJDK 8 إشعار
إذا لم يكن لديك JDK مثبتا، أو إذا كان لديك العديد من تثبيتات JDK على جهاز التطوير الخاص بك، يمكنك تثبيت JDK محدد أو اختياره لاحقا في الخطوة 1. قد يؤدي اختيار تثبيت JDK الموجود أسفل إصدار JDK أو فوقه على نظام المجموعة إلى نتائج غير متوقعة، أو قد لا يتم تشغيل التعليمات البرمجية الخاصة بك على الإطلاق.
لديك IntelliJ IDEA مثبت. تم اختبار هذا البرنامج التعليمي مع IntelliJ IDEA Community Edition 2023.3.6. إذا كنت تستخدم إصدارا أو إصدارا مختلفا من IntelliJ IDEA، فقد تختلف الإرشادات التالية.
لديك المكون الإضافي Scala ل IntelliJ IDEA مثبتا.
الخطوة 1: تكوين مصادقة Azure Databricks
يستخدم هذا البرنامج التعليمي مصادقة Azure Databricks OAuth من مستخدم إلى جهاز (U2M) وملف تعريف تكوين Azure Databricks للمصادقة مع مساحة عمل Azure Databricks. لاستخدام نوع مصادقة مختلف بدلا من ذلك، راجع تكوين خصائص الاتصال.
يتطلب تكوين مصادقة OAuth U2M CLI Databricks، كما يلي:
إذا لم يكن مثبتا بالفعل، فقم بتثبيت Databricks CLI كما يلي:
Linux وmacOS
استخدم Homebrew لتثبيت Databricks CLI عن طريق تشغيل الأمرين التاليين:
brew tap databricks/tap brew install databricks
Windows
يمكنك استخدام winget أو Chocolatey أو نظام Windows الفرعي لـ Linux (WSL) لتثبيت Databricks CLI. إذا لم تتمكن من استخدام
winget
أو Chocolatey أو WSL، يجب تخطي هذا الإجراء واستخدام موجه الأوامر أو PowerShell لتثبيت Databricks CLI من المصدر بدلا من ذلك.لاستخدام
winget
لتثبيت Databricks CLI، قم بتشغيل الأمرين التاليين، ثم أعد تشغيل موجه الأوامر:winget search databricks winget install Databricks.DatabricksCLI
لاستخدام Chocolatey لتثبيت Databricks CLI، قم بتشغيل الأمر التالي:
choco install databricks-cli
لاستخدام WSL لتثبيت Databricks CLI:
تثبيت
curl
ومنzip
خلال WSL. لمزيد من المعلومات، راجع وثائق نظام التشغيل الخاص بك.استخدم WSL لتثبيت Databricks CLI عن طريق تشغيل الأمر التالي:
curl -fsSL https://raw.githubusercontent.com/databricks/setup-cli/main/install.sh | sh
تأكد من تثبيت Databricks CLI عن طريق تشغيل الأمر التالي، والذي يعرض الإصدار الحالي من Databricks CLI المثبت. يجب أن يكون هذا الإصدار 0.205.0 أو أعلى:
databricks -v
إشعار
إذا قمت بتشغيل
databricks
ولكن تلقيت خطأ مثلcommand not found: databricks
، أو إذا قمت بتشغيلdatabricks -v
وكان رقم الإصدار 0.18 أو أدناه مدرجا، فهذا يعني أن جهازك لا يمكنه العثور على الإصدار الصحيح من Databricks CLI القابل للتنفيذ. لإصلاح ذلك، راجع التحقق من تثبيت CLI.
بدء مصادقة OAuth U2M، كما يلي:
استخدم Databricks CLI لبدء إدارة الرمز المميز OAuth محليا عن طريق تشغيل الأمر التالي لكل مساحة عمل هدف.
في الأمر التالي، استبدل
<workspace-url>
بعنوان URL الخاص ب Azure Databricks لكل مساحة عمل، على سبيل المثالhttps://adb-1234567890123456.7.azuredatabricks.net
.databricks auth login --configure-cluster --host <workspace-url>
يطالبك Databricks CLI بحفظ المعلومات التي أدخلتها كملف تعريف تكوين Azure Databricks. اضغط
Enter
لقبول اسم ملف التعريف المقترح، أو أدخل اسم ملف تعريف جديد أو موجود. تتم الكتابة فوق أي ملف تعريف موجود بنفس الاسم بالمعلومات التي أدخلتها. يمكنك استخدام ملفات التعريف لتبديل سياق المصادقة بسرعة عبر مساحات عمل متعددة.للحصول على قائمة بأي ملفات تعريف موجودة، في محطة طرفية منفصلة أو موجه أوامر، استخدم Databricks CLI لتشغيل الأمر
databricks auth profiles
. لعرض الإعدادات الموجودة لملف تعريف معين، قم بتشغيل الأمرdatabricks auth env --profile <profile-name>
.في مستعرض الويب الخاص بك، أكمل الإرشادات التي تظهر على الشاشة لتسجيل الدخول إلى مساحة عمل Azure Databricks.
في قائمة المجموعات المتوفرة التي تظهر في الوحدة الطرفية أو موجه الأوامر، استخدم مفاتيح الأسهم لأعلى ولأسفل لتحديد مجموعة Azure Databricks الهدف في مساحة العمل الخاصة بك، ثم اضغط
Enter
على . يمكنك أيضا كتابة أي جزء من اسم عرض نظام المجموعة لتصفية قائمة المجموعات المتوفرة.لعرض قيمة رمز OAuth المميز الحالي لملف التعريف والطوابع الزمنية لانتهاء الصلاحية القادمة للرمز المميز، قم بتشغيل أحد الأوامر التالية:
databricks auth token --host <workspace-url>
databricks auth token -p <profile-name>
databricks auth token --host <workspace-url> -p <profile-name>
إذا كان لديك ملفات تعريف متعددة بنفس
--host
القيمة، فقد تحتاج إلى تحديد--host
الخيارات و-p
معا لمساعدة Databricks CLI في العثور على معلومات الرمز المميز OAuth المتطابقة الصحيحة.
الخطوة 2: إنشاء المشروع
قم ببدء IntelliJ IDEA.
في القائمة الرئيسية، انقر فوق ملف > مشروع جديد>.
امنح مشروعك اسما ذا معنى.
بالنسبة إلى الموقع، انقر فوق أيقونة المجلد، وأكمل التوجيهات التي تظهر على الشاشة لتحديد المسار إلى مشروع Scala الجديد.
بالنسبة إلى اللغة، انقر فوق Scala.
بالنسبة إلى Build system، انقر فوق sbt.
في القائمة المنسدلة JDK، حدد تثبيتا موجودا ل JDK على جهاز التطوير الخاص بك الذي يطابق إصدار JDK على نظام المجموعة الخاص بك، أو حدد تنزيل JDK واتبع الإرشادات التي تظهر على الشاشة لتنزيل JDK الذي يطابق إصدار JDK على نظام المجموعة الخاص بك.
إشعار
قد يؤدي اختيار تثبيت JDK أعلى إصدار JDK أو أسفله على نظام المجموعة إلى نتائج غير متوقعة، أو قد لا يتم تشغيل التعليمات البرمجية الخاصة بك على الإطلاق.
في القائمة المنسدلة sbt ، حدد أحدث إصدار.
في القائمة المنسدلة Scala ، حدد إصدار Scala الذي يطابق إصدار Scala على مجموعتك. يعرض الجدول التالي إصدار Scala لكل وقت تشغيل Databricks مدعوم:
إصدار وقت تشغيل Databricks إصدار Scala 13.3 LTS - 15.0،
13.3 ML LTS - 15.0 ML2.12.15 إشعار
قد يؤدي اختيار إصدار Scala الموجود أسفل أو أعلى إصدار Scala على نظام المجموعة إلى نتائج غير متوقعة، أو قد لا يتم تشغيل التعليمات البرمجية الخاصة بك على الإطلاق.
تأكد من تحديد مربع Download sources بجوار Scala .
بالنسبة لبادئة الحزمة، أدخل قيمة بعض بادئة الحزمة لمصادر مشروعك، على سبيل المثال
org.example.application
.تأكد من تحديد المربع إضافة نموذج التعليمات البرمجية .
انقر فوق Create.
الخطوة 3: إضافة حزمة Databricks Connect
مع فتح مشروع Scala الجديد، في نافذة أداة المشروع (عرض > أداة Windows > Project)، افتح الملف المسمى
build.sbt
، في هدف اسم> المشروع.أضف التعليمات البرمجية التالية إلى نهاية
build.sbt
الملف، والتي تعلن تبعية مشروعك على إصدار معين من مكتبة Databricks Connect ل Scala:libraryDependencies += "com.databricks" % "databricks-connect" % "14.3.1"
استبدل
14.3.1
بإصدار مكتبة Databricks Connect التي تطابق إصدار Databricks Runtime على نظام المجموعة. يمكنك العثور على أرقام إصدار مكتبة Databricks Connect في مستودع Maven المركزي.انقر فوق رمز إعلام Load sbt changes لتحديث مشروع Scala الخاص بك بموقع المكتبة الجديدة والتبعية.
انتظر حتى
sbt
يختفي مؤشر التقدم في أسفل IDE.sbt
قد تستغرق عملية التحميل بضع دقائق حتى تكتمل.
الخطوة 4: إضافة تعليمة برمجية
في نافذة أداة Project، افتح الملف المسمى
Main.scala
، في src > main > scala لاسم> المشروع.استبدل أي تعليمة برمجية موجودة في الملف بالتعليمات البرمجية التالية ثم احفظ الملف، اعتمادا على اسم ملف تعريف التكوين الخاص بك.
إذا تمت تسمية
DEFAULT
ملف تعريف التكوين من الخطوة 1 ، فاستبدل أي تعليمة برمجية موجودة في الملف بالتعليمات البرمجية التالية، ثم احفظ الملف:package org.example.application import com.databricks.connect.DatabricksSession import org.apache.spark.sql.SparkSession object Main { def main(args: Array[String]): Unit = { val spark = DatabricksSession.builder().remote().getOrCreate() val df = spark.read.table("samples.nyctaxi.trips") df.limit(5).show() } }
إذا لم تتم تسمية
DEFAULT
ملف تعريف التكوين الخاص بك من الخطوة 1 ، فاستبدل أي تعليمة برمجية موجودة في الملف بالتعليمات البرمجية التالية بدلا من ذلك. استبدل العنصر النائب<profile-name>
باسم ملف تعريف التكوين من الخطوة 1، ثم احفظ الملف:package org.example.application import com.databricks.connect.DatabricksSession import com.databricks.sdk.core.DatabricksConfig import org.apache.spark.sql.SparkSession object Main { def main(args: Array[String]): Unit = { val config = new DatabricksConfig().setProfile("<profile-name>") val spark = DatabricksSession.builder().sdkConfig(config).getOrCreate() val df = spark.read.table("samples.nyctaxi.trips") df.limit(5).show() } }
الخطوة 5: تشغيل التعليمات البرمجية
- ابدأ تشغيل نظام المجموعة الهدف في مساحة عمل Azure Databricks البعيدة.
- بعد بدء تشغيل نظام المجموعة، في القائمة الرئيسية، انقر فوق تشغيل > تشغيل 'Main'.
- في نافذة Run tool (View > Tool Windows > Run)، في علامة التبويب Main ، تظهر أول 5 صفوف من
samples.nyctaxi.trips
الجدول.
الخطوة 6: تصحيح التعليمات البرمجية
- مع استمرار تشغيل نظام المجموعة الهدف، في التعليمات البرمجية السابقة، انقر فوق التوثيق بجوار
df.limit(5).show()
لتعيين نقطة توقف. - في القائمة الرئيسية، انقر فوق Run > Debug 'Main'.
- في نافذة أداة تتبع الأخطاء (View > Tool Windows > Debug)، على علامة التبويب Console ، انقر فوق أيقونة الحاسبة (تقييم التعبير).
- أدخل التعبير
df.schema
وانقر فوق تقييم لإظهار مخطط DataFrame. - في الشريط الجانبي لنافذة أداة التصحيح ، انقر فوق أيقونة السهم الأخضر (استئناف البرنامج).
- في جزء وحدة التحكم ، تظهر أول 5 صفوف من
samples.nyctaxi.trips
الجدول.
الخطوات التالية
لمعرفة المزيد حول Databricks Connect، راجع مقالات مثل ما يلي:
لاستخدام أنواع مصادقة Azure Databricks بخلاف رمز الوصول الشخصي Azure Databricks، راجع تكوين خصائص الاتصال.
لاستخدام معرفات أخرى، راجع ما يلي:
لعرض أمثلة التعليمات البرمجية البسيطة الإضافية، راجع أمثلة التعليمات البرمجية ل Databricks Connect ل Scala.
لعرض أمثلة تعليمات برمجية أكثر تعقيدا، راجع أمثلة التطبيقات لمستودع Databricks Connect في GitHub، على وجه التحديد:
للترحيل من Databricks Connect ل Databricks Runtime 12.2 LTS والإصدارات أدناه إلى Databricks Connect ل Databricks Runtime 13.3 LTS وما فوق، راجع الترحيل إلى Databricks Connect ل Scala.
راجع أيضا معلومات حول استكشاف الأخطاء وإصلاحها والقيود.