داتابريكز المرافق

أدوات Databricks المساعدة (dbutils) تجعل من السهل تنفيذ مجموعات قوية من المهام. يمكنك استخدام الأدوات المساعدة للعمل مع تخزين الكائنات بكفاءة، ولتسلسل دفاتر الملاحظات ومعلماتها، وللعمل مع الأسرار. dbutils غير مدعومة خارج أجهزة الكمبيوتر المحمولة.

هام

يمكن أن يؤدي الاتصال dbutils داخل المنفذين إلى نتائج غير متوقعة. لمعرفة المزيد حول القيود dbutils والبدائل التي يمكن استخدامها بدلا من ذلك، راجع dbutils.

dbutils تتوفر الأدوات المساعدة في أجهزة الكمبيوتر المحمولة Python و R و Scala.

كيفية القيام بما يلي: قائمة الأدوات المساعدة، وأوامر القائمة، وعرض تعليمات الأوامر

الأدوات المساعدة: البيانات ، fs ، المكتبة ، دفتر الملاحظات ، الأسرار ، الأدوات ، مكتبةواجهة برمجة تطبيقات الأدوات المساعدة

قائمة الأدوات المساعدة المتاحة

لسرد الأدوات المساعدة المتوفرة مع وصف قصير لكل أداة مساعدة، قم بتشغيل dbutils.help() Python أو Scala.

يسرد هذا المثال الأوامر المتوفرة لأدوات Databricks المساعدة.

Python

dbutils.help()

Scala

dbutils.help()
This module provides various utilities for users to interact with the rest of Databricks.

fs: DbfsUtils -> Manipulates the Databricks filesystem (DBFS) from the console
library: LibraryUtils -> Utilities for session isolated libraries
notebook: NotebookUtils -> Utilities for the control flow of a notebook (EXPERIMENTAL)
secrets: SecretUtils -> Provides utilities for leveraging secrets within notebooks
widgets: WidgetsUtils -> Methods to create and get bound value of input widgets inside notebooks

سرد الأوامر المتوفرة لأداة مساعدة

لسرد الأوامر المتوفرة لأداة مساعدة مع وصف قصير لكل أمر، قم بتشغيل .help() الاسم البرمجي للأداة المساعدة.

يسرد هذا المثال الأوامر المتوفرة للأداة المساعدة Databricks File System (DBFS).

Python

dbutils.fs.help()

R

dbutils.fs.help()

Scala

dbutils.fs.help()
dbutils.fs provides utilities for working with FileSystems. Most methods in this package can take either a DBFS path (e.g., "/foo" or "dbfs:/foo"), or another FileSystem URI. For more info about a method, use dbutils.fs.help("methodName"). In notebooks, you can also use the %fs shorthand to access DBFS. The %fs shorthand maps straightforwardly onto dbutils calls. For example, "%fs head --maxBytes=10000 /file/path" translates into "dbutils.fs.head("/file/path", maxBytes = 10000)".

fsutils

cp(from: String, to: String, recurse: boolean = false): boolean -> Copies a file or directory, possibly across FileSystems
head(file: String, maxBytes: int = 65536): String -> Returns up to the first 'maxBytes' bytes of the given file as a String encoded in UTF-8
ls(dir: String): Seq -> Lists the contents of a directory
mkdirs(dir: String): boolean -> Creates the given directory if it does not exist, also creating any necessary parent directories
mv(from: String, to: String, recurse: boolean = false): boolean -> Moves a file or directory, possibly across FileSystems
put(file: String, contents: String, overwrite: boolean = false): boolean -> Writes the given String out to a file, encoded in UTF-8
rm(dir: String, recurse: boolean = false): boolean -> Removes a file or directory

mount

mount(source: String, mountPoint: String, encryptionType: String = "", owner: String = null, extraConfigs: Map = Map.empty[String, String]): boolean -> Mounts the given source directory into DBFS at the given mount point
mounts: Seq -> Displays information about what is mounted within DBFS
refreshMounts: boolean -> Forces all machines in this cluster to refresh their mount cache, ensuring they receive the most recent information
unmount(mountPoint: String): boolean -> Deletes a DBFS mount point
updateMount(source: String, mountPoint: String, encryptionType: String = "", owner: String = null, extraConfigs: Map = Map.empty[String, String]): boolean -> Similar to mount(), but updates an existing mount point instead of creating a new one

عرض تعليمات لأمر

لعرض تعليمات لأمر، قم بتشغيل .help("<command-name>") اسم الأمر.

يعرض هذا المثال تعليمات للأمر نسخ DBFS.

Python

dbutils.fs.help("cp")

R

dbutils.fs.help("cp")

Scala

dbutils.fs.help("cp")
/**
* Copies a file or directory, possibly across FileSystems.
*
* Example: cp("/mnt/my-folder/a", "dbfs://a/b")
*
* @param from FileSystem URI of the source file or directory
* @param to FileSystem URI of the destination file or directory
* @param recurse if true, all files and directories will be recursively copied
* @return true if all files were successfully copied
*/
cp(from: java.lang.String, to: java.lang.String, recurse: boolean = false): boolean

الأداة المساعدة للبيانات (dbutils.data)

هام

توجد هذه الميزة في "المعاينة العامة".

ملاحظة

متوفر في Databricks Runtime 9.0 والإصدارات الأحدث.

الأوامر: تلخيص

تتيح لك الأداة المساعدة للبيانات فهم مجموعات البيانات وتفسيرها. لسرد الأوامر المتوفرة، قم بتشغيل dbutils.data.help().

dbutils.data provides utilities for understanding and interpreting datasets. This module is currently in preview and may be unstable. For more info about a method, use dbutils.data.help("methodName").

summarize(df: Object, precise: boolean): void -> Summarize a Spark DataFrame and visualize the statistics to get quick insights

أمر التلخيص (dbutils.data.summariz)

يحسب ويعرض إحصائيات موجزة ل Apache Spark DataFrame أو Pandas DataFrame. يتوفر هذا الأمر ل Python و Scala و R.

لعرض تعليمات لهذا الأمر، قم بتشغيل dbutils.data.help("summarize").

في Databricks Runtime 10.1 والإصدارات الأحدث، يمكنك استخدام المعلمة الإضافية precise لضبط دقة الإحصاءات المحسوبة.

ملاحظة

توجد هذه الميزة في "المعاينة العامة".

  • عند precise التعيين إلى false (الافتراضي)، تتضمن بعض الإحصائيات التي تم إرجاعها تقريبيات لتقليل وقت التشغيل.
    • قد يحتوي عدد القيم المميزة للأعمدة الفئوية على خطأ نسبي بنسبة 5٪ تقريبا للأعمدة عالية الكاردينالية.
    • قد يكون لعدد القيم المتكررة خطأ يصل إلى 0.01٪ عندما يكون عدد القيم المميزة أكبر من 10000.
    • قد تحتوي المدرج التكراري والتقديرات المئوية على خطأ يصل إلى 0.01٪ بالنسبة إلى إجمالي عدد الصفوف.
  • عند precise تعيينها إلى true، يتم حساب الإحصائيات بدقة أعلى. جميع الإحصاءات باستثناء المدرج التكراري والنسب المئوية للأعمدة الرقمية هي الآن دقيقة.
    • قد تحتوي المدرج التكراري والتقديرات المئوية على خطأ يصل إلى 0.0001٪ بالنسبة إلى إجمالي عدد الصفوف.

يشير تلميح الأداة الموجود أعلى إخراج ملخص البيانات إلى وضع التشغيل الحالي.

يعرض هذا المثال إحصائيات موجزة ل Apache Spark DataFrame مع تمكين التقريب افتراضيا. للاطلاع على النتائج، قم بتشغيل هذا الأمر في دفتر ملاحظات. يستند هذا المثال إلى مجموعات بيانات Azure Databricks.

Python

df = spark.read.format('csv').load(
  '/databricks-datasets/Rdatasets/data-001/csv/ggplot2/diamonds.csv',
  header=True,
  inferSchema=True
)
dbutils.data.summarize(df)

R

df <- read.df("/databricks-datasets/Rdatasets/data-001/csv/ggplot2/diamonds.csv", source = "csv", header="true", inferSchema = "true")
dbutils.data.summarize(df)

Scala

val df = spark.read.format("csv")
  .option("inferSchema", "true")
  .option("header", "true")
  .load("/databricks-datasets/Rdatasets/data-001/csv/ggplot2/diamonds.csv")
dbutils.data.summarize(df)

لاحظ أن المرئيات تستخدم تدوين SI لعرض القيم العددية بإيجاز أصغر من 0.01 أو أكبر من 10000. على سبيل المثال ، سيتم تقديم القيمة 1.25e-15 العددية ك 1.25f. استثناء واحد: يستخدم التصور "B" ل 1.0e9 (B) بدلا من "G".

الأداة المساعدة لنظام الملفات (dbutils.fs)

الأوامر: CP ، الرأس ، ls ، mkdirs ، جبل ، يتصاعد ، mv ، وضع ، refreshMounts ، RM ، إلغاء التحميل ، updateMount

تتيح لك الأداة المساعدة لنظام الملفات الوصول إلى نظام ملفات Databricks (DBFS)، مما يسهل استخدام Azure Databricks كنظام ملفات. لسرد الأوامر المتوفرة، قم بتشغيل dbutils.fs.help().

dbutils.fs provides utilities for working with FileSystems. Most methods in this package can take either a DBFS path (e.g., "/foo" or "dbfs:/foo"), or another FileSystem URI. For more info about a method, use dbutils.fs.help("methodName"). In notebooks, you can also use the %fs shorthand to access DBFS. The %fs shorthand maps straightforwardly onto dbutils calls. For example, "%fs head --maxBytes=10000 /file/path" translates into "dbutils.fs.head("/file/path", maxBytes = 10000)".

fsutils

cp(from: String, to: String, recurse: boolean = false): boolean -> Copies a file or directory, possibly across FileSystems
head(file: String, maxBytes: int = 65536): String -> Returns up to the first 'maxBytes' bytes of the given file as a String encoded in UTF-8
ls(dir: String): Seq -> Lists the contents of a directory
mkdirs(dir: String): boolean -> Creates the given directory if it does not exist, also creating any necessary parent directories
mv(from: String, to: String, recurse: boolean = false): boolean -> Moves a file or directory, possibly across FileSystems
put(file: String, contents: String, overwrite: boolean = false): boolean -> Writes the given String out to a file, encoded in UTF-8
rm(dir: String, recurse: boolean = false): boolean -> Removes a file or directory

mount

mount(source: String, mountPoint: String, encryptionType: String = "", owner: String = null, extraConfigs: Map = Map.empty[String, String]): boolean -> Mounts the given source directory into DBFS at the given mount point
mounts: Seq -> Displays information about what is mounted within DBFS
refreshMounts: boolean -> Forces all machines in this cluster to refresh their mount cache, ensuring they receive the most recent information
unmount(mountPoint: String): boolean -> Deletes a DBFS mount point
updateMount(source: String, mountPoint: String, encryptionType: String = "", owner: String = null, extraConfigs: Map = Map.empty[String, String]): boolean -> Similar to mount(), but updates an existing mount point instead of creating a new one

أمر cp (dbutils.fs.cp)

نسخ ملف أو دليل، ربما عبر أنظمة الملفات.

لعرض تعليمات لهذا الأمر، قم بتشغيل dbutils.fs.help("cp").

يقوم هذا المثال بنسخ الملف المسمى old_file.txt من /FileStore إلى /tmp/new، وإعادة تسمية الملف المنسوخ إلى new_file.txt.

Python

dbutils.fs.cp("/FileStore/old_file.txt", "/tmp/new/new_file.txt")

# Out[4]: True

R

dbutils.fs.cp("/FileStore/old_file.txt", "/tmp/new/new_file.txt")

# [1] TRUE

Scala

dbutils.fs.cp("/FileStore/old_file.txt", "/tmp/new/new_file.txt")

// res3: Boolean = true

أمر الرأس (dbutils.fs.head)

إرجاع ما يصل إلى الحد الأقصى المحدد لعدد وحدات البايت للملف المحدد. يتم إرجاع وحدات البايت كسلسلة مشفرة UTF-8.

لعرض تعليمات لهذا الأمر، قم بتشغيل dbutils.fs.help("head").

يعرض هذا المثال أول 25 بايت من الملف my_file.txt الموجود في /tmp.

Python

dbutils.fs.head("/tmp/my_file.txt", 25)

# [Truncated to first 25 bytes]
# Out[12]: 'Apache Spark is awesome!\n'

R

dbutils.fs.head("/tmp/my_file.txt", 25)

# [1] "Apache Spark is awesome!\n"

Scala

dbutils.fs.head("/tmp/my_file.txt", 25)

// [Truncated to first 25 bytes]
// res4: String =
// "Apache Spark is awesome!
// "

أمر ls (dbutils.fs.ls)

يسرد محتويات الدليل.

لعرض تعليمات لهذا الأمر، قم بتشغيل dbutils.fs.help("ls").

يعرض هذا المثال معلومات حول محتويات /tmp. يتوفر modificationTime الحقل في Databricks Runtime 10.2 والإصدارات الأحدث. في R، modificationTime يتم إرجاعها كسلسلة.

Python

dbutils.fs.ls("/tmp")

# Out[13]: [FileInfo(path='dbfs:/tmp/my_file.txt', name='my_file.txt', size=40, modificationTime=1622054945000)]

R

dbutils.fs.ls("/tmp")

# For prettier results from dbutils.fs.ls(<dir>), please use `%fs ls <dir>`

# [[1]]
# [[1]]$path
# [1] "dbfs:/tmp/my_file.txt"

# [[1]]$name
# [1] "my_file.txt"

# [[1]]$size
# [1] 40

# [[1]]$isDir
# [1] FALSE

# [[1]]$isFile
# [1] TRUE

# [[1]]$modificationTime
# [1] "1622054945000"

Scala

dbutils.fs.ls("/tmp")

// res6: Seq[com.databricks.backend.daemon.dbutils.FileInfo] = WrappedArray(FileInfo(dbfs:/tmp/my_file.txt, my_file.txt, 40, 1622054945000))

أمر mkdirs (dbutils.fs.mkdirs)

ينشئ الدليل المحدد إذا لم يكن موجودا. ينشئ أيضا أي أدلة أصلية ضرورية.

لعرض تعليمات لهذا الأمر، قم بتشغيل dbutils.fs.help("mkdirs").

ينشئ هذا المثال بنية /parent/child/grandchild الدليل داخل /tmp.

Python

dbutils.fs.mkdirs("/tmp/parent/child/grandchild")

# Out[15]: True

R

dbutils.fs.mkdirs("/tmp/parent/child/grandchild")

# [1] TRUE

Scala

dbutils.fs.mkdirs("/tmp/parent/child/grandchild")

// res7: Boolean = true

أمر التثبيت (dbutils.fs.mount)

يقوم بتحميل الدليل المصدر المحدد في DBFS عند نقطة التحميل المحددة.

لعرض تعليمات لهذا الأمر، قم بتشغيل dbutils.fs.help("mount").

Python

dbutils.fs.mount(
  source = "wasbs://<container-name>@<storage-account-name>.blob.core.windows.net",
  mount_point = "/mnt/<mount-name>",
  extra_configs = {"<conf-key>":dbutils.secrets.get(scope = "<scope-name>", key = "<key-name>")})

Scala

dbutils.fs.mount(
  source = "wasbs://<container-name>@<storage-account-name>.blob.core.windows.net/<directory-name>",
  mountPoint = "/mnt/<mount-name>",
  extraConfigs = Map("<conf-key>" -> dbutils.secrets.get(scope = "<scope-name>", key = "<key-name>")))

للحصول على أمثلة إضافية للتعليمات البرمجية، راجع تخزين Azure Blob.

أمر التثبيت (dbutils.fs.mounts)

يعرض معلومات حول ما يتم تثبيته حاليا داخل DBFS.

لعرض تعليمات لهذا الأمر، قم بتشغيل dbutils.fs.help("mounts").

Python

dbutils.fs.mounts()

Scala

dbutils.fs.mounts()

للحصول على أمثلة إضافية للتعليمات البرمجية، راجع تخزين Azure Blob.

أمر mv (dbutils.fs.mv)

نقل ملف أو دليل، ربما عبر أنظمة الملفات. النقل هو نسخة متبوعة بحذف ، حتى بالنسبة للتحركات داخل أنظمة الملفات.

لعرض تعليمات لهذا الأمر، قم بتشغيل dbutils.fs.help("mv").

ينقل هذا المثال الملف my_file.txt من /FileStore إلى /tmp/parent/child/granchild.

Python

dbutils.fs.mv("/FileStore/my_file.txt", "/tmp/parent/child/grandchild")

# Out[2]: True

R

dbutils.fs.mv("/FileStore/my_file.txt", "/tmp/parent/child/grandchild")

# [1] TRUE

Scala

dbutils.fs.mv("/FileStore/my_file.txt", "/tmp/parent/child/grandchild")

// res1: Boolean = true

وضع الأمر (dbutils.fs.put)

يكتب السلسلة المحددة إلى ملف. السلسلة مشفرة UTF-8.

لعرض تعليمات لهذا الأمر، قم بتشغيل dbutils.fs.help("put").

يكتب هذا المثال السلسلة Hello, Databricks! إلى ملف مسمى hello_db.txt في /tmp. إذا كان الملف موجودا، الكتابة فوقه.

Python

dbutils.fs.put("/tmp/hello_db.txt", "Hello, Databricks!", True)

# Wrote 18 bytes.
# Out[6]: True

R

dbutils.fs.put("/tmp/hello_db.txt", "Hello, Databricks!", TRUE)

# [1] TRUE

Scala

dbutils.fs.put("/tmp/hello_db.txt", "Hello, Databricks!", true)

// Wrote 18 bytes.
// res2: Boolean = true

أمر refreshMounts (dbutils.fs.refreshMounts)

يجبر جميع الأجهزة الموجودة في المجموعة على تحديث ذاكرة التخزين المؤقت للتركيب الخاصة بها، مما يضمن تلقيها أحدث المعلومات.

لعرض تعليمات لهذا الأمر، قم بتشغيل dbutils.fs.help("refreshMounts").

Python

dbutils.fs.refreshMounts()

Scala

dbutils.fs.refreshMounts()

للحصول على أمثلة التعليمات البرمجية الإضافية، راجع تخزين Azure Blob.

أمر RM (dbutils.fs.rm)

إزالة ملف أو دليل.

لعرض تعليمات لهذا الأمر، قم بتشغيل dbutils.fs.help("rm").

يزيل هذا المثال الملف المسمى hello_db.txt في /tmp.

Python

dbutils.fs.rm("/tmp/hello_db.txt")

# Out[8]: True

R

dbutils.fs.rm("/tmp/hello_db.txt")

# [1] TRUE

Scala

dbutils.fs.rm("/tmp/hello_db.txt")

// res6: Boolean = true

أمر إلغاء التحميل (dbutils.fs.unmount)

حذف نقطة تحميل DBFS.

لعرض تعليمات لهذا الأمر، قم بتشغيل dbutils.fs.help("unmount").

dbutils.fs.unmount("/mnt/<mount-name>")

للحصول على أمثلة إضافية للتعليمات البرمجية، راجع تخزين Azure Blob.

الأمر updateMount (dbutils.fs.updateMount)

على dbutils.fs.mount غرار الأمر ، ولكن يقوم بتحديث نقطة تحميل موجودة بدلا من إنشاء نقطة جديدة. ترجع هذه الدالة خطأ إذا لم تكن نقطة التحميل موجودة.

لعرض تعليمات لهذا الأمر، قم بتشغيل dbutils.fs.help("updateMount").

يتوفر هذا الأمر في Databricks Runtime 10.2 والإصدارات الأحدث.

Python

dbutils.fs.updateMount(
  source = "wasbs://<container-name>@<storage-account-name>.blob.core.windows.net",
  mount_point = "/mnt/<mount-name>",
  extra_configs = {"<conf-key>":dbutils.secrets.get(scope = "<scope-name>", key = "<key-name>")})

Scala

dbutils.fs.updateMount(
  source = "wasbs://<container-name>@<storage-account-name>.blob.core.windows.net/<directory-name>",
  mountPoint = "/mnt/<mount-name>",
  extraConfigs = Map("<conf-key>" -> dbutils.secrets.get(scope = "<scope-name>", key = "<key-name>")))

فائدة المكتبة (dbutils.library)

ملاحظة

تم إهمال الأداة المساعدة للمكتبة.

الأوامر: تثبيت، تثبيتPyPI، قائمة، إعادة تشغيلPython، تحديثCondaEnv

تتيح لك الأداة المساعدة للمكتبة تثبيت مكتبات Python وإنشاء بيئة محددة النطاق لجلسة عمل دفتر ملاحظات. تتوفر المكتبات على كل من برنامج التشغيل والمنفذين، بحيث يمكنك الرجوع إليها في الوظائف المعرفة من قبل المستخدم. وهذا يمكن:

  • تبعيات المكتبة لدفتر ملاحظات ليتم تنظيمها داخل دفتر الملاحظات نفسه.
  • مستخدمو دفتر الملاحظات الذين لديهم تبعيات مكتبة مختلفة لمشاركة مجموعة دون تدخل.

يؤدي فصل دفتر ملاحظات إلى تدمير هذه البيئة. ومع ذلك، يمكنك إعادة إنشائه عن طريق إعادة تشغيل أوامر واجهة برمجة تطبيقات المكتبة install في دفتر الملاحظات. راجع واجهة restartPython برمجة التطبيقات لمعرفة كيفية إعادة تعيين حالة دفتر الملاحظات دون فقدان بيئتك.

هام

لا تتوفر الأدوات المساعدة للمكتبة على Databricks Runtime ML أو Databricks Runtime for Genomics. بدلا من ذلك، راجع مكتبات Python ذات النطاق الدفتري.

بالنسبة إلى Databricks Runtime 7.2 والإصدارات الأحدث، توصي Databricks باستخدام %pip الأوامر السحرية لتثبيت المكتبات ذات النطاق الدفتري. راجع مكتبات Python ذات النطاق الدفتري.

يتم تمكين الأدوات المساعدة للمكتبة بشكل افتراضي. لذلك، يتم عزل بيئة Python لكل دفتر ملاحظات بشكل افتراضي باستخدام ملف Python قابل للتنفيذ منفصل يتم إنشاؤه عند إرفاق دفتر الملاحظات ببيئة Python الافتراضية على الكتلة ويرثها. لا تزال المكتبات المثبتة من خلال برنامج نصي init في بيئة Azure Databricks Python متاحة. يمكنك تعطيل هذه الميزة عن طريق الإعداد spark.databricks.libraryIsolation.enabled إلى false.

تتوافق واجهة برمجة التطبيقات هذه مع تثبيت المكتبة الموجودة على مستوى المجموعة من خلال واجهة المستخدم وواجهةبرمجة تطبيقات REST. تتمتع المكتبات المثبتة من خلال واجهة برمجة التطبيقات هذه بأولوية أعلى من المكتبات على مستوى المجموعة.

لسرد الأوامر المتوفرة، قم بتشغيل dbutils.library.help().

install(path: String): boolean -> Install the library within the current notebook session
installPyPI(pypiPackage: String, version: String = "", repo: String = "", extras: String = ""): boolean -> Install the PyPI library within the current notebook session
list: List -> List the isolated libraries added for the current notebook session via dbutils
restartPython: void -> Restart python process for the current notebook session
updateCondaEnv(envYmlContent: String): boolean -> Update the current notebook's Conda environment based on the specification (content of environment

الأمر install (dbutils.library.install)

نظرا لوجود مسار إلى مكتبة، قم بتثبيت تلك المكتبة داخل جلسة عمل دفتر الملاحظات الحالية. تتوفر المكتبات المثبتة عن طريق استدعاء هذا الأمر فقط لدفتر الملاحظات الحالي.

لعرض تعليمات لهذا الأمر، قم بتشغيل dbutils.library.help("install").

يقوم هذا المثال بتثبيت مكتبة .egg أو .whl مكتبة داخل دفتر ملاحظات.

هام

توصي Databricks بوضع جميع أوامر تثبيت المكتبة في الخلية الأولى من دفتر الملاحظات والاتصال restartPython في نهاية تلك الخلية. تتم إعادة تعيين حالة دفتر ملاحظات Python بعد التشغيل restartPython؛ يفقد دفتر الملاحظات كل الحالة بما في ذلك على سبيل المثال لا الحصر المتغيرات المحلية والمكتبات المستوردة والحالات الزائلة الأخرى. لذلك، نوصي بتثبيت المكتبات وإعادة تعيين حالة دفتر الملاحظات في خلية دفتر الملاحظات الأولى .

مصادر المكتبة المقبولة هي dbfs، abfss، و adl، و wasbs.

dbutils.library.install("abfss:/path/to/your/library.egg")
dbutils.library.restartPython() # Removes Python state, but some libraries might not work without calling this command.
dbutils.library.install("abfss:/path/to/your/library.whl")
dbutils.library.restartPython() # Removes Python state, but some libraries might not work without calling this command.

ملاحظة

يمكنك تثبيت ملفات العجلات المخصصة مباشرة باستخدام %pip. في المثال التالي ، نفترض أنك قمت بتحميل ملف عجلة المكتبة إلى DBFS:

%pip install /dbfs/path/to/your/library.whl

لا يتم دعم ملفات البيض بواسطة pip ، وتعتبر العجلة هي المعيار للبناء والتعبئة الثنائية ل Python. انظر Wheel vs Egg لمزيد من التفاصيل. ومع ذلك، إذا كنت تريد استخدام ملف بيضة بطريقة متوافقة مع %pip، يمكنك استخدام الحل البديل التالي:

# This step is only needed if no %pip commands have been run yet.
# It will trigger setting up the isolated notebook environment
%pip install <any-lib>  # This doesn't need to be a real library; for example "%pip install any-lib" would work
import sys
# Assuming the preceding step was completed, the following command
# adds the egg file to the current notebook environment
sys.path.append("/local/path/to/library.egg")

الأمر installPyPI (dbutils.library.installPyPI)

بالنظر إلى حزمة فهرس حزمة Python (PyPI)، قم بتثبيت هذه الحزمة ضمن جلسة عمل دفتر الملاحظات الحالية. يتم عزل المكتبات المثبتة عن طريق استدعاء هذا الأمر بين دفاتر الملاحظات.

لعرض تعليمات لهذا الأمر، قم بتشغيل dbutils.library.help("installPyPI").

يقوم هذا المثال بتثبيت حزمة PyPI في دفتر ملاحظات. version، repoوهي اختيارية extras . استخدم الوسيطة extras لتحديد extras (المتطلبات الإضافية).

dbutils.library.installPyPI("pypipackage", version="version", repo="repo", extras="extras")
dbutils.library.restartPython()  # Removes Python state, but some libraries might not work without calling this command.

هام

version لا يمكن أن تكون المفاتيح والمفاتيح extras جزءا من سلسلة حزمة PyPI. على سبيل المثال: dbutils.library.installPyPI("azureml-sdk[databricks]==1.19.0") غير صالح. استخدم الوسيطات version ولتحديد extras معلومات الإصدار والإضافات كما يلي:

dbutils.library.installPyPI("azureml-sdk", version="1.19.0", extras="databricks")
dbutils.library.restartPython()  # Removes Python state, but some libraries might not work without calling this command.

ملاحظة

عند استبدال الأوامر dbutils.library.installPyPI بالأوامر %pip ، تتم إعادة تشغيل مترجم Python تلقائيا. يمكنك تشغيل أمر التثبيت كما يلي:

%pip install azureml-sdk[databricks]==1.19.0

يحدد هذا المثال متطلبات المكتبة في دفتر ملاحظات واحد ويقوم بتثبيتها باستخدامها %run في دفتر الملاحظات الآخر. للقيام بذلك، قم أولا بتحديد المكتبات المراد تثبيتها في دفتر ملاحظات. يستخدم هذا المثال دفتر ملاحظات باسم InstallDependencies.

dbutils.library.installPyPI("torch")
dbutils.library.installPyPI("scikit-learn", version="1.19.1")
dbutils.library.installPyPI("azureml-sdk", extras="databricks")
dbutils.library.restartPython() # Removes Python state, but some libraries might not work without calling this command.

ثم قم بتثبيتها في دفتر الملاحظات الذي يحتاج إلى هذه التبعيات.

%run /path/to/InstallDependencies # Install the dependencies in the first cell.
import torch
from sklearn.linear_model import LinearRegression
import azureml
...

يعيد هذا المثال تعيين حالة دفتر ملاحظات Python مع الحفاظ على البيئة. تتوفر هذه التقنية فقط في أجهزة الكمبيوتر المحمولة Python. على سبيل المثال، يمكنك استخدام هذه التقنية لإعادة تحميل المكتبات Azure Databricks المثبتة مسبقا بإصدار مختلف:

dbutils.library.installPyPI("numpy", version="1.15.4")
dbutils.library.restartPython()
# Make sure you start using the library in another cell.
import numpy

يمكنك أيضا استخدام هذه التقنية لتثبيت مكتبات مثل tensorflow التي تحتاج إلى تحميلها عند بدء العملية:

dbutils.library.installPyPI("tensorflow")
dbutils.library.restartPython()
# Use the library in another cell.
import tensorflow

أمر القائمة (dbutils.library.list)

يسرد المكتبات المعزولة المضافة لجلسة عمل دفتر الملاحظات الحالية من خلال الأداة المساعدة للمكتبة. لا يشمل ذلك المكتبات المرفقة بنظام المجموعة.

لعرض تعليمات لهذا الأمر، قم بتشغيل dbutils.library.help("list").

يسرد هذا المثال المكتبات المثبتة في دفتر ملاحظات.

dbutils.library.list()

ملاحظة

ما يعادل استخدام هذا الأمر %pip هو:

%pip freeze

الأمر restartPython (dbutils.library.restartPython)

إعادة تشغيل عملية Python لجلسة عمل دفتر الملاحظات الحالية.

لعرض تعليمات لهذا الأمر، قم بتشغيل dbutils.library.help("restartPython").

يعيد هذا المثال تشغيل عملية Python لجلسة عمل دفتر الملاحظات الحالية.

dbutils.library.restartPython() # Removes Python state, but some libraries might not work without calling this command.

الأمر updateCondaEnv (dbutils.library.updateCondaEnv)

تحديث بيئة Conda الخاصة بدفتر الملاحظات الحالي استنادا إلى محتويات environment.yml. يتم دعم هذه الطريقة فقط لوقت تشغيل Databricks على Conda.

لعرض تعليمات لهذا الأمر، قم بتشغيل dbutils.library.help("updateCondaEnv").

يقوم هذا المثال بتحديث بيئة Conda الخاصة بدفتر الملاحظات الحالي استنادا إلى محتويات المواصفات المتوفرة.

dbutils.library.updateCondaEnv(
"""
channels:
  - anaconda
dependencies:
  - gensim=3.4
  - nltk=3.4
""")

الأداة المساعدة للكمبيوتر المحمول (dbutils.notebook)

الأوامر: إنهاء، تشغيل

تتيح لك الأداة المساعدة لأجهزة الكمبيوتر المحمولة ربط دفاتر الملاحظات معا والعمل على نتائجها. راجع مهام سير عمل دفتر الملاحظات.

لسرد الأوامر المتوفرة، قم بتشغيل dbutils.notebook.help().

exit(value: String): void -> This method lets you exit a notebook with a value
run(path: String, timeoutSeconds: int, arguments: Map): String -> This method runs a notebook and returns its exit value.

أمر الخروج (dbutils.notebook.exit)

إنهاء دفتر ملاحظات يحتوي على قيمة.

لعرض تعليمات لهذا الأمر، قم بتشغيل dbutils.notebook.help("exit").

يخرج هذا المثال من دفتر الملاحظات بالقيمة Exiting from My Other Notebook.

Python

dbutils.notebook.exit("Exiting from My Other Notebook")

# Notebook exited: Exiting from My Other Notebook

R

dbutils.notebook.exit("Exiting from My Other Notebook")

# Notebook exited: Exiting from My Other Notebook

Scala

dbutils.notebook.exit("Exiting from My Other Notebook")

// Notebook exited: Exiting from My Other Notebook

الأمر "تشغيل" (dbutils.notebook.run)

تشغيل دفتر ملاحظات وإرجاع قيمة الخروج الخاصة به. سيتم تشغيل دفتر الملاحظات في المجموعة الحالية بشكل افتراضي.

ملاحظة

الحد الأقصى لطول قيمة السلسلة التي run تم إرجاعها من الأمر هو 5 ميغابايت. راجع الحصول على الإخراج لتشغيل واحد ().

لعرض تعليمات لهذا الأمر، قم بتشغيل dbutils.notebook.help("run").

يقوم هذا المثال بتشغيل دفتر ملاحظات مسمى My Other Notebook في نفس موقع دفتر ملاحظات الاتصال. ينتهي دفتر الملاحظات المسمى بسطر التعليمات البرمجية dbutils.notebook.exit("Exiting from My Other Notebook"). إذا لم يتم الانتهاء من تشغيل دفتر الملاحظات المسمى في غضون 60 ثانية، طرح استثناء.

Python

dbutils.notebook.run("My Other Notebook", 60)

# Out[14]: 'Exiting from My Other Notebook'

Scala

dbutils.notebook.run("My Other Notebook", 60)

// res2: String = Exiting from My Other Notebook

فائدة الأسرار (dbutils.secrets)

الأوامر: الحصول على، getBytes، قائمة، listScopes

تتيح لك الأداة المساعدة Secrets تخزين معلومات بيانات الاعتماد الحساسة والوصول إليها دون جعلها مرئية في دفاتر الملاحظات. راجع الإدارة السريةواستخدم الأسرار في دفتر ملاحظات. لسرد الأوامر المتوفرة، قم بتشغيل dbutils.secrets.help().

get(scope: String, key: String): String -> Gets the string representation of a secret value with scope and key
getBytes(scope: String, key: String): byte[] -> Gets the bytes representation of a secret value with scope and key
list(scope: String): Seq -> Lists secret metadata for secrets within a scope
listScopes: Seq -> Lists secret scopes

الحصول على الأمر (dbutils.secrets.get)

يحصل على تمثيل السلسلة لقيمة سرية لنطاق ومفتاح الأسرار المحددين.

تحذير

يمكن للمسؤولين ومنشئي المحتوى السري والمستخدمين الذين حصلوا على الإذن قراءة أسرار Azure Databricks. بينما يبذل Azure Databricks جهدا لتنقيح القيم السرية التي قد يتم عرضها في دفاتر الملاحظات، لا يمكن منع هؤلاء المستخدمين من قراءة الأسرار. لمزيد من المعلومات، راجع التنقيح السري.

لعرض تعليمات لهذا الأمر، قم بتشغيل dbutils.secrets.help("get").

يحصل هذا المثال على تمثيل السلسلة للقيمة السرية للنطاق المسمى my-scope والمفتاح المسمى my-key.

Python

dbutils.secrets.get(scope="my-scope", key="my-key")

# Out[14]: '[REDACTED]'

R

dbutils.secrets.get(scope="my-scope", key="my-key")

# [1] "[REDACTED]"

Scala

dbutils.secrets.get(scope="my-scope", key="my-key")

// res0: String = [REDACTED]

أمر getBytes (dbutils.secrets.getBytes)

يحصل على تمثيل وحدات البايت لقيمة سرية للنطاق والمفتاح المحددين.

لعرض تعليمات لهذا الأمر، قم بتشغيل dbutils.secrets.help("getBytes").

يحصل هذا المثال على القيمة السرية (a1!b2@c3#) للنطاق المسمى my-scope والمفتاح المسمى my-key.

Python

my_secret = dbutils.secrets.getBytes(scope="my-scope", key="my-key")
my_secret.decode("utf-8")

# Out[1]: 'a1!b2@c3#'

R

my_secret = dbutils.secrets.getBytes(scope="my-scope", key="my-key")
print(rawToChar(my_secret))

# [1] "a1!b2@c3#"

Scala

val mySecret = dbutils.secrets.getBytes(scope="my-scope", key="my-key")
val convertedString = new String(mySecret)
println(convertedString)

// a1!b2@c3#
// mySecret: Array[Byte] = Array(97, 49, 33, 98, 50, 64, 99, 51, 35)
// convertedString: String = a1!b2@c3#

أمر القائمة (dbutils.secrets.list)

يسرد البيانات الوصفية للأسرار ضمن النطاق المحدد.

لعرض تعليمات لهذا الأمر، قم بتشغيل dbutils.secrets.help("list").

يسرد هذا المثال بيانات التعريف للأسرار داخل النطاق المسمى my-scope.

Python

dbutils.secrets.list("my-scope")

# Out[10]: [SecretMetadata(key='my-key')]

R

dbutils.secrets.list("my-scope")

# [[1]]
# [[1]]$key
# [1] "my-key"

Scala

dbutils.secrets.list("my-scope")

// res2: Seq[com.databricks.dbutils_v1.SecretMetadata] = ArrayBuffer(SecretMetadata(my-key))

الأمر listScopes (dbutils.secrets.listScopes)

يسرد النطاقات المتاحة.

لعرض تعليمات لهذا الأمر، قم بتشغيل dbutils.secrets.help("listScopes").

يسرد هذا المثال النطاقات المتاحة.

Python

dbutils.secrets.listScopes()

# Out[14]: [SecretScope(name='my-scope')]

R

dbutils.secrets.listScopes()

# [[1]]
# [[1]]$name
# [1] "my-scope"

Scala

dbutils.secrets.listScopes()

// res3: Seq[com.databricks.dbutils_v1.SecretScope] = ArrayBuffer(SecretScope(my-scope))

الأداة المساعدة للأدوات (dbutils.widgets)

الأوامر: التحرير والسرد ، القائمة المنسدلة ، الحصول، getArgument ، التحديد المتعدد ، الإزالة ، إزالة الكل ، النص

تتيح لك الأداة المساعدة widgets تحديد معلمات أجهزة الكمبيوتر المحمولة. انظر الحاجيات.

لسرد الأوامر المتوفرة، قم بتشغيل dbutils.widgets.help().

combobox(name: String, defaultValue: String, choices: Seq, label: String): void -> Creates a combobox input widget with a given name, default value and choices
dropdown(name: String, defaultValue: String, choices: Seq, label: String): void -> Creates a dropdown input widget a with given name, default value and choices
get(name: String): String -> Retrieves current value of an input widget
getArgument(name: String, optional: String): String -> (DEPRECATED) Equivalent to get
multiselect(name: String, defaultValue: String, choices: Seq, label: String): void -> Creates a multiselect input widget with a given name, default value and choices
remove(name: String): void -> Removes an input widget from the notebook
removeAll: void -> Removes all widgets in the notebook
text(name: String, defaultValue: String, label: String): void -> Creates a text input widget with a given name and default value

أمر مربع التحرير والسرد (dbutils.widgets.combobox)

ينشئ ويعرض عنصر واجهة مستخدم مربع التحرير والسرد بالاسم البرمجي المحدد والقيمة الافتراضية والخيارات والتسمية الاختيارية.

لعرض تعليمات لهذا الأمر، قم بتشغيل dbutils.widgets.help("combobox").

يقوم هذا المثال بإنشاء أداة مربع تحرير وسرد وعرضها بالاسم fruits_comboboxالبرمجي . يقدم الخيارات apple، banana، ، coconutويتم dragon fruit تعيينه على القيمة الأولية ل banana. تحتوي أداة التحرير والسرد هذه على تسمية Fruitsمصاحبة . ينتهي هذا المثال بطباعة القيمة الأولية لأداة التحرير والسرد ، banana.

Python

dbutils.widgets.combobox(
  name='fruits_combobox',
  defaultValue='banana',
  choices=['apple', 'banana', 'coconut', 'dragon fruit'],
  label='Fruits'
)

print(dbutils.widgets.get("fruits_combobox"))

# banana

R

dbutils.widgets.combobox(
  name='fruits_combobox',
  defaultValue='banana',
  choices=list('apple', 'banana', 'coconut', 'dragon fruit'),
  label='Fruits'
)

print(dbutils.widgets.get("fruits_combobox"))

# [1] "banana"

Scala

dbutils.widgets.combobox(
  "fruits_combobox",
  "banana",
  Array("apple", "banana", "coconut", "dragon fruit"),
  "Fruits"
)

print(dbutils.widgets.get("fruits_combobox"))

// banana

الأمر المنسدل (dbutils.widgets.dropdown)

ينشئ عنصر واجهة مستخدم منسدل ويعرضه بالاسم البرمجي المحدد والقيمة الافتراضية والخيارات والتسمية الاختيارية.

لعرض تعليمات لهذا الأمر، قم بتشغيل dbutils.widgets.help("dropdown").

ينشئ هذا المثال عنصر واجهة مستخدم منسدلة ويعرضه بالاسم toys_dropdownالبرمجي . يقدم الخيارات alphabet blocks، basketball، ، capeويتم doll تعيينه على القيمة الأولية ل basketball. تحتوي هذه الأداة المنسدلة على تسمية Toysمصاحبة . ينتهي هذا المثال بطباعة القيمة الأولية للأداة المنسدلة ، basketball.

Python

dbutils.widgets.dropdown(
  name='toys_dropdown',
  defaultValue='basketball',
  choices=['alphabet blocks', 'basketball', 'cape', 'doll'],
  label='Toys'
)

print(dbutils.widgets.get("toys_dropdown"))

# basketball

R

dbutils.widgets.dropdown(
  name='toys_dropdown',
  defaultValue='basketball',
  choices=list('alphabet blocks', 'basketball', 'cape', 'doll'),
  label='Toys'
)

print(dbutils.widgets.get("toys_dropdown"))

# [1] "basketball"

Scala

dbutils.widgets.dropdown(
  "toys_dropdown",
  "basketball",
  Array("alphabet blocks", "basketball", "cape", "doll"),
  "Toys"
)

print(dbutils.widgets.get("toys_dropdown"))

// basketball

الحصول على الأمر (dbutils.widgets.get)

يحصل على القيمة الحالية للأداة بالاسم البرمجي المحدد. يمكن أن يكون هذا الاسم البرنامجي إما:

  • اسم عنصر واجهة مستخدم مخصص في دفتر الملاحظات، على سبيل المثال fruits_combobox أو toys_dropdown.
  • تم تمرير اسم معلمة مخصصة إلى دفتر الملاحظات كجزء من مهمة دفتر ملاحظات، على سبيل المثال name أو age. لمزيد من المعلومات، راجع تغطية المعلمات لمهام دفتر الملاحظات في إنشاء واجهة مستخدم مهمة أو الحقل الموجود في عملية تشغيل مهمة جديدة () في واجهة برمجة تطبيقات الوظائف.

لعرض تعليمات لهذا الأمر، قم بتشغيل dbutils.widgets.help("get").

يحصل هذا المثال على قيمة الأداة التي تحتوي على الاسم fruits_comboboxالبرمجي .

Python

dbutils.widgets.get('fruits_combobox')

# banana

R

dbutils.widgets.get('fruits_combobox')

# [1] "banana"

Scala

dbutils.widgets.get("fruits_combobox")

// res6: String = banana

يحصل هذا المثال على قيمة معلمة مهمة دفتر الملاحظات التي تحتوي على الاسم ageالبرمجي . تم تعيين هذه المعلمة إلى 35 عند تشغيل مهمة دفتر الملاحظات ذات الصلة.

Python

dbutils.widgets.get('age')

# 35

R

dbutils.widgets.get('age')

# [1] "35"

Scala

dbutils.widgets.get("age")

// res6: String = 35

أمر getArgument (dbutils.widgets.getArgument)

يحصل على القيمة الحالية للأداة بالاسم البرمجي المحدد. في حالة عدم وجود عنصر واجهة المستخدم، يمكن إرجاع رسالة اختيارية.

ملاحظة

تم إهمال هذا الأمر. استخدم dbutils.widgets.get بدلا من ذلك.

لعرض تعليمات لهذا الأمر، قم بتشغيل dbutils.widgets.help("getArgument").

يحصل هذا المثال على قيمة الأداة التي تحتوي على الاسم fruits_comboboxالبرمجي . في حالة عدم وجود عنصر واجهة المستخدم هذا، يتم إرجاع الرسالة Error: Cannot find fruits combobox .

Python

dbutils.widgets.getArgument('fruits_combobox', 'Error: Cannot find fruits combobox')

# Deprecation warning: Use dbutils.widgets.text() or dbutils.widgets.dropdown() to create a widget and dbutils.widgets.get() to get its bound value.
# Out[3]: 'banana'

R

dbutils.widgets.getArgument('fruits_combobox', 'Error: Cannot find fruits combobox')

# Deprecation warning: Use dbutils.widgets.text() or dbutils.widgets.dropdown() to create a widget and dbutils.widgets.get() to get its bound value.
# [1] "banana"

Scala

dbutils.widgets.getArgument("fruits_combobox", "Error: Cannot find fruits combobox")

// command-1234567890123456:1: warning: method getArgument in trait WidgetsUtils is deprecated: Use dbutils.widgets.text() or dbutils.widgets.dropdown() to create a widget and dbutils.widgets.get() to get its bound value.
// dbutils.widgets.getArgument("fruits_combobox", "Error: Cannot find fruits combobox")
//                 ^
// res7: String = banana

أمر متعدد التحديد (dbutils.widgets.multiselect)

ينشئ ويعرض عنصر واجهة مستخدم متعدد التحديدات بالاسم البرمجي المحدد والقيمة الافتراضية والخيارات والتسمية الاختيارية.

لعرض تعليمات لهذا الأمر، قم بتشغيل dbutils.widgets.help("multiselect").

يقوم هذا المثال بإنشاء وعرض عنصر واجهة مستخدم متعدد التحديد بالاسم days_multiselectالبرمجي . يقدم الخيارات Monday من خلال Sunday ويتم تعيينه على القيمة الأولية ل Tuesday. تحتوي هذه الأداة متعددة التحديد على تسمية Days of the Weekمصاحبة . ينتهي هذا المثال بطباعة القيمة الأولية للأداة متعددة التحديدات، Tuesday.

Python

dbutils.widgets.multiselect(
  name='days_multiselect',
  defaultValue='Tuesday',
  choices=['Monday', 'Tuesday', 'Wednesday', 'Thursday',
    'Friday', 'Saturday', 'Sunday'],
  label='Days of the Week'
)

print(dbutils.widgets.get("days_multiselect"))

# Tuesday

R

dbutils.widgets.multiselect(
  name='days_multiselect',
  defaultValue='Tuesday',
  choices=list('Monday', 'Tuesday', 'Wednesday', 'Thursday',
    'Friday', 'Saturday', 'Sunday'),
  label='Days of the Week'
)

print(dbutils.widgets.get("days_multiselect"))

# [1] "Tuesday"

Scala

dbutils.widgets.multiselect(
  "days_multiselect",
  "Tuesday",
  Array("Monday", "Tuesday", "Wednesday", "Thursday",
    "Friday", "Saturday", "Sunday"),
  "Days of the Week"
)

print(dbutils.widgets.get("days_multiselect"))

// Tuesday

أمر إزالة (dbutils.widgets.remove)

يزيل عنصر واجهة المستخدم بالاسم البرمجي المحدد.

لعرض تعليمات لهذا الأمر، قم بتشغيل dbutils.widgets.help("remove").

هام

إذا أضفت أمرا لإزالة عنصر واجهة مستخدم، فلا يمكنك إضافة أمر لاحق لإنشاء عنصر واجهة مستخدم في الخلية نفسها. يجب عليك إنشاء الأداة في خلية أخرى.

يزيل هذا المثال الأداة ذات الاسم fruits_comboboxالبرمجي .

Python

dbutils.widgets.remove('fruits_combobox')

R

dbutils.widgets.remove('fruits_combobox')

Scala

dbutils.widgets.remove("fruits_combobox")

الأمر removeAll (dbutils.widgets.removeAll)

إزالة كافة الأدوات من دفتر الملاحظات.

لعرض تعليمات لهذا الأمر، قم بتشغيل dbutils.widgets.help("removeAll").

هام

إذا قمت بإضافة أمر لإزالة كافة الأدوات، فلا يمكنك إضافة أمر لاحق لإنشاء أي عناصر واجهة مستخدم في الخلية نفسها. يجب عليك إنشاء الأدوات في خلية أخرى.

يزيل هذا المثال كافة الأدوات من دفتر الملاحظات.

Python

dbutils.widgets.removeAll()

R

dbutils.widgets.removeAll()

Scala

dbutils.widgets.removeAll()

أمر النص (dbutils.widgets.text)

ينشئ عنصر واجهة مستخدم نصي ويعرضه بالاسم البرمجي المحدد والقيمة الافتراضية والتسمية الاختيارية.

لعرض تعليمات لهذا الأمر، قم بتشغيل dbutils.widgets.help("text").

ينشئ هذا المثال عنصر واجهة مستخدم نصية ويعرضه بالاسم your_name_textالبرمجي . يتم تعيينه إلى القيمة الأولية ل Enter your name. تحتوي أداة النص هذه على تسمية Your nameمصاحبة . ينتهي هذا المثال بطباعة القيمة الأولية لأداة النص ، Enter your name.

Python

dbutils.widgets.text(
  name='your_name_text',
  defaultValue='Enter your name',
  label='Your name'
)

print(dbutils.widgets.get("your_name_text"))

# Enter your name

R

dbutils.widgets.text(
  name='your_name_text',
  defaultValue='Enter your name',
  label='Your name'
)

print(dbutils.widgets.get("your_name_text"))

# [1] "Enter your name"

Scala

dbutils.widgets.text(
  "your_name_text",
  "Enter your name",
  "Your name"
)

print(dbutils.widgets.get("your_name_text"))

// Enter your name

مكتبة واجهة برمجة تطبيقات Databricks Utilities

لتسريع تطوير التطبيقات، قد يكون من المفيد تجميع التطبيقات وإنشائها واختبارها قبل نشرها كمهام إنتاج. لتمكينك من التحويل البرمجي مقابل أدوات Databricks المساعدة، توفر Databricks المكتبة dbutils-api . يمكنك تنزيل المكتبة dbutils-api من صفحة ويب dbutils-api على موقع ويب مستودع Maven أو تضمين المكتبة عن طريق إضافة تبعية إلى ملف الإنشاء الخاص بك:

  • إس بي تي

    libraryDependencies += "com.databricks" % "dbutils-api_TARGET" % "VERSION"
    
  • Maven

    <dependency>
        <groupId>com.databricks</groupId>
        <artifactId>dbutils-api_TARGET</artifactId>
        <version>VERSION</version>
    </dependency>
    
  • Gradle

    compile 'com.databricks:dbutils-api_TARGET:VERSION'
    

استبدل TARGET بالهدف المطلوب (على سبيل المثال 2.12) وبالإصدار VERSION المطلوب (على سبيل المثال 0.0.5). للحصول على قائمة بالأهداف والإصدارات المتوفرة، راجع صفحة ويب واجهة برمجة تطبيقات DBUtils على موقع ويب مستودع Maven.

بمجرد إنشاء التطبيق الخاص بك مقابل هذه المكتبة، يمكنك نشر التطبيق.

هام

dbutils-api تسمح لك المكتبة بتجميع تطبيق يستخدم dbutils، ولكن ليس لتشغيله. لتشغيل التطبيق، يجب نشره في Azure Databricks.

التقييدات

يمكن أن يؤدي الاتصال dbutils داخل المنفذين إلى نتائج غير متوقعة أو قد يؤدي إلى أخطاء.

إذا كنت بحاجة إلى تشغيل عمليات نظام الملفات على المنفذين باستخدام dbutils، فهناك العديد من البدائل الأسرع والأكثر قابلية للتطوير المتاحة:

للحصول على معلومات حول المنفذين، راجع نظرة عامة على وضع نظام المجموعة على موقع Apache Spark على الويب.