bundle
مجموعة الأوامر
إشعار
تنطبق هذه المعلومات على إصدارات Databricks CLI 0.218.0 والإصدارات الأحدث. للعثور على إصدار Databricks CLI الخاص بك، قم بتشغيل databricks -v
.
bundle
تمكنك مجموعة الأوامر داخل Databricks CLI من التحقق برمجيا من صحة مهام سير عمل Azure Databricks ونشرها وتشغيلها مثل مهام Azure Databricks وخطوط أنابيب Delta Live Tables وMLOps Stacks. راجع ما هي حزم أصول Databricks؟.
هام
لتثبيت Databricks CLI، راجع تثبيت Databricks CLI أو تحديثه. لتكوين المصادقة ل Databricks CLI، راجع المصادقة ل Databricks CLI.
يمكنك تشغيل bundle
الأوامر عن طريق إلحاقها ب databricks bundle
. لعرض تعليمات الأمر bundle
، قم بتشغيل databricks bundle -h
.
إنشاء مجموعة من قالب مشروع
لإنشاء مجموعة أصول Databricks باستخدام قالب Databricks Asset Bundle الافتراضي ل Python، قم بتشغيل bundle init
الأمر كما يلي، ثم أجب على المطالبات التي تظهر على الشاشة:
databricks bundle init
لإنشاء مجموعة أصول Databricks باستخدام قالب مجموعة أصول Databricks غير افتراضي، قم بتشغيل bundle init
الأمر كما يلي:
databricks bundle init <project-template-local-path-or-url> \
--project-dir="</local/path/to/project/template/output>"
راجع أيضًا:
- قوالب مجموعة أصول Databricks
- تطوير وظيفة على Azure Databricks باستخدام حزم أصول Databricks
- تطوير خطوط أنابيب Delta Live Tables باستخدام حزم أصول Databricks
- حزم أصول Databricks لمكدسات MLOps
عرض مخطط تكوين المجموعة
لعرض مخطط تكوين مجموعة أصول Databricks، قم بتشغيل bundle schema
الأمر، كما يلي:
databricks bundle schema
لإخراج مخطط تكوين مجموعة أصول Databricks كملف JSON، قم بتشغيل bundle schema
الأمر وإعادة توجيه الإخراج إلى ملف JSON. على سبيل المثال، يمكنك إنشاء ملف باسم bundle_config_schema.json
داخل الدليل الحالي، كما يلي:
databricks bundle schema > bundle_config_schema.json
التحقق من صحة مجموعة
للتحقق من صحة ملفات تكوين الحزمة من الناحية التركيبية، قم بتشغيل bundle validate
الأمر من جذر مشروع المجموعة، كما يلي:
databricks bundle validate
يقوم هذا الأمر بشكل افتراضي بإرجاع ملخص لهوية المجموعة:
Name: MyBundle
Target: dev
Workspace:
Host: https://my-host.cloud.databricks.com
User: someone@example.com
Path: /Users/someone@example.com/.bundle/MyBundle/dev
Validation OK!
إشعار
يقوم bundle validate
الأمر إخراج تحذيرات إذا تم تعريف خصائص المورد في ملفات تكوين الحزمة التي لم يتم العثور عليها في مخطط الكائن المقابل.
مزامنة شجرة مجموعة إلى مساحة عمل
bundle sync
استخدم الأمر لإجراء مزامنة أحادية الاتجاه لتغييرات ملف المجموعة داخل دليل نظام ملفات محلي، إلى دليل داخل مساحة عمل Azure Databricks بعيدة.
إشعار
bundle sync
لا يمكن للأوامر مزامنة تغييرات الملفات من دليل داخل مساحة عمل Azure Databricks بعيدة، مرة أخرى إلى دليل داخل نظام ملفات محلي.
databricks bundle sync
تعمل الأوامر بنفس الطريقة التي تعمل بها databricks sync
الأوامر ويتم توفيرها كملاءمة للإنتاجية. للحصول على معلومات استخدام الأمر، راجع مجموعة أوامر المزامنة.
إنشاء ملف تكوين مجموعة
يمكنك استخدام bundle generate
الأمر لإنشاء تكوين مورد لوظيفة أو مسار موجود بالفعل في مساحة عمل Databricks. ينشئ هذا الأمر ملفا *.yml
للمهمة أو البنية الأساسية لبرنامج ربط العمليات التجارية في resources
مجلد مشروع الحزمة، كما يقوم بتنزيل أي دفاتر ملاحظات مشار إليها في تكوين المهمة أو المسار. حاليا، يتم دعم المهام ذات مهام دفتر الملاحظات فقط بواسطة هذا الأمر.
هام
bundle generate
يتم توفير الأمر كوسيلة ملائمة لإنشاء تكوين المورد تلقائيا. ومع ذلك، عند تضمين هذا التكوين في الحزمة ونشره، فإنه ينشئ موردا جديدا ولا يحدث المورد الموجود ما لم bundle deployment bind
يتم استخدامه أولا على المورد.
bundle generate
قم بتشغيل الأمر كما يلي:
databricks bundle generate [job|pipeline] --existing-[job|pipeline]-id [job-id|pipeline-id]
على سبيل المثال، ينشئ الأمر التالي ملفا جديدا hello_job.yml
في مجلد مشروع الحزمة resources
الذي يحتوي على YAML أدناه، وينزل simple_notebook.py
إلى src
مجلد المشروع.
databricks bundle generate job --existing-job-id 6565621249
# This is the contents of the resulting hello_job.yml file.
resources:
jobs:
6565621249:
name: Hello Job
format: MULTI_TASK
tasks:
- task_key: run_notebook
existing_cluster_id: 0704-xxxxxx-yyyyyyy
notebook_task:
notebook_path: ./src/simple_notebook.py
source: WORKSPACE
run_if: ALL_SUCCESS
max_concurrent_runs: 1
ربط موارد المجموعة
bundle deployment bind
يسمح لك الأمر بربط المهام والتدفقات المعرفة باحزمة بالوظائف والتدفقات الموجودة في مساحة عمل Azure Databricks بحيث تصبح مدارة بواسطة Databricks Asset Bundles. إذا قمت بربط مورد، يتم تحديث موارد Azure Databricks الموجودة في مساحة العمل استنادا إلى التكوين المحدد في المجموعة المرتبطة به بعد التالي bundle deploy
.
تلميح
من الجيد تأكيد مساحة عمل المجموعة قبل تشغيل الربط.
databricks bundle deployment bind [resource-key] [resource-id]
على سبيل المثال، يربط الأمر التالي المورد hello_job
بنظيره البعيد في مساحة العمل. يقوم الأمر بإخراج diff ويسمح لك برفض ربط المورد، ولكن إذا تم تأكيده، يتم تطبيق أي تحديثات لتعريف الوظيفة في المجموعة على المهمة البعيدة المقابلة عند نشر الحزمة بعد ذلك.
databricks bundle deployment bind hello_job 6565621249
استخدم bundle deployment unbind
إذا كنت تريد إزالة الارتباط بين المهمة أو البنية الأساسية لبرنامج ربط العمليات التجارية في مجموعة ونظيرتها البعيدة في مساحة عمل.
databricks bundle deployment unbind [resource-key]
نشر مجموعة
لنشر حزمة إلى مساحة العمل البعيدة bundle deploy
، قم بتشغيل الأمر من جذر مشروع المجموعة. إذا لم يتم تحديد خيارات الأوامر، يتم استخدام الهدف الافتراضي كما هو معلن داخل ملفات تكوين المجموعة.
databricks bundle deploy
لنشر الحزمة إلى هدف معين، قم بتعيين -t
الخيار (أو --target
) مع اسم الهدف كما هو معلن داخل ملفات تكوين المجموعة. على سبيل المثال، بالنسبة إلى هدف تم الإعلان عنه باسم dev
:
databricks bundle deploy -t dev
يمكن نشر مجموعة في مساحات عمل متعددة، مثل مساحات عمل التطوير والتقسيم المرحلي والإنتاج. بشكل أساسي، الخاصية root_path
هي ما يحدد الهوية الفريدة للحزمة، والتي يتم تعيينها افتراضيا إلى ~/.bundle/${bundle.name}/${bundle.target}
. لذلك بشكل افتراضي، تتكون هوية المجموعة من هوية الموزع واسم المجموعة والاسم الهدف للحزمة. إذا كانت متطابقة عبر حزم مختلفة، فإن نشر هذه الحزم سيتداخل مع بعضها البعض.
علاوة على ذلك، يتتبع توزيع المجموعة الموارد التي يقوم بإنشائها في مساحة العمل الهدف بواسطة معرفاتها كحالة مخزنة في نظام ملفات مساحة العمل. لا يتم استخدام أسماء الموارد للربط بين توزيع مجموعة ومثيل مورد، لذلك:
- إذا لم يكن مورد في تكوين المجموعة موجودا في مساحة العمل الهدف، يتم إنشاؤه.
- إذا كان هناك مورد في تكوين المجموعة موجود في مساحة العمل الهدف، يتم تحديثه في مساحة العمل.
- إذا تمت إزالة مورد من تكوين المجموعة، تتم إزالته من مساحة العمل الهدف إذا تم نشره مسبقا.
- لا يمكن نسيان اقتران المورد بحزمة إلا إذا قمت بتغيير اسم المجموعة أو هدف المجموعة أو مساحة العمل. يمكنك تشغيل
bundle validate
لإخراج ملخص يحتوي على هذه القيم.
تشغيل مجموعة
لتشغيل مهمة أو مسار معين، استخدم bundle run
الأمر . يجب تحديد مفتاح المورد للوظيفة أو المسار المعلن داخل ملفات تكوين المجموعة. بشكل افتراضي، يتم استخدام البيئة المعلنة داخل ملفات تكوين المجموعة. على سبيل المثال، لتشغيل مهمة hello_job
في البيئة الافتراضية، قم بتشغيل الأمر التالي:
databricks bundle run hello_job
لتشغيل مهمة بمفتاح hello_job
ضمن سياق هدف معلن باسم dev
:
databricks bundle run -t dev hello_job
إذا كنت تريد إجراء تشغيل التحقق من صحة البنية الأساسية لبرنامج ربط العمليات التجارية، فاستخدم --validate-only
الخيار، كما هو موضح في المثال التالي:
databricks bundle run --validate-only my_pipeline
لتمرير معلمات المهمة، استخدم --params
الخيار متبوعا بأزواج قيم المفاتيح المفصولة بفواصل، حيث يكون المفتاح هو اسم المعلمة. على سبيل المثال، يقوم الأمر التالي بتعيين المعلمة message
باسم للوظيفة HelloWorld
hello_job
:
databricks bundle run --params message=HelloWorld hello_job
إشعار
يمكنك تمرير المعلمات إلى مهام الوظيفة باستخدام خيارات مهمة الوظيفة، ولكن --params
الخيار هو الأسلوب الموصى به لتمرير معلمات الوظيفة. يحدث خطأ إذا تم تحديد معلمات الوظيفة لوظيفة لا تحتوي على معلمات مهمة محددة أو إذا تم تحديد معلمات المهمة لوظيفة لها معلمات مهمة محددة.
لإلغاء تشغيل مهمة موجودة أو تحديث البنية الأساسية لبرنامج ربط العمليات التجارية وإعادة تشغيلها، استخدم --restart
الخيار :
databricks bundle run --restart hello_job
تدمير مجموعة
لحذف المهام والتدفقات والبيانات الاصطناعية التي تم نشرها مسبقا، قم بتشغيل bundle destroy
الأمر . يحذف الأمر التالي جميع المهام والمسارات والبيانات الاصطناعية التي تم نشرها مسبقا والتي تم تعريفها في ملفات تكوين المجموعة:
databricks bundle destroy
إشعار
تتكون هوية المجموعة من اسم المجموعة وهدف المجموعة ومساحة العمل. إذا قمت بتغيير أي من هذه ثم حاولت تدمير مجموعة قبل النشر، فسيحدث خطأ.
بشكل افتراضي، تتم مطالبتك بتأكيد الحذف الدائم للوظائف والمسارات والبيانات الاصطناعية التي تم نشرها مسبقا. لتخطي هذه المطالبات وتنفيذ الحذف الدائم التلقائي، أضف --auto-approve
الخيار إلى bundle destroy
الأمر .
الملاحظات
https://aka.ms/ContentUserFeedback.
قريبًا: خلال عام 2024، سنتخلص تدريجيًا من GitHub Issues بوصفها آلية إرسال ملاحظات للمحتوى ونستبدلها بنظام ملاحظات جديد. لمزيد من المعلومات، راجعإرسال الملاحظات وعرضها المتعلقة بـ