Azure Databricks لمطوري Python

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

سير العمل الأساسي للبدء هو:

البرامج التعليمية

توفر البرامج التعليمية أدناه أمثلة على التعليمات البرمجية ودفاتر الملاحظات للتعرف على مهام سير العمل الشائعة. راجع استيراد دفتر ملاحظات للحصول على إرشادات حول استيراد أمثلة دفتر الملاحظات إلى مساحة العمل.

علوم البيانات التفاعلية والتعلم الآلي

هندسة البيانات

التعلم الآلي للإنتاج وعمليات التعلم الآلي

تصحيح الأخطاء في دفاتر ملاحظات Python

يوضح دفتر الملاحظات المثال كيفية استخدام مصحح أخطاء Python (pdb) في دفاتر ملاحظات Databricks. لاستخدام مصحح أخطاء Python، يجب تشغيل Databricks Runtime 11.3 LTS أو أعلى.

باستخدام Databricks Runtime 12.2 LTS وما فوق، يمكنك استخدام مستكشف المتغيرات لتعقب القيمة الحالية لمتغيرات Python في واجهة مستخدم دفتر الملاحظات. يمكنك استخدام مستكشف المتغيرات لمراقبة قيم متغيرات Python أثناء التنقل عبر نقاط التوقف.

دفتر ملاحظات مثال على مصحح أخطاء Python

الحصول على دفتر الملاحظات

إشعار

breakpoint() غير مدعوم في IPython وبالتالي لا يعمل في دفاتر ملاحظات Databricks. يمكنك استخدام import pdb; pdb.set_trace() بدلا من breakpoint().

واجهات برمجة تطبيقات Python

يمكن تشغيل تعليمة Python البرمجية التي تعمل خارج Databricks بشكل عام داخل Databricks، والعكس صحيح. إذا كان لديك تعليمة برمجية موجودة، فما عليك سوى استيرادها إلى Databricks للبدء. راجع إدارة التعليمات البرمجية باستخدام دفاتر الملاحظات ومجلدات Databricks Git أدناه للحصول على التفاصيل.

يمكن ل Databricks تشغيل كل من أحمال عمل Python أحادية الجهاز والموزعة. بالنسبة للحوسبة أحادية الجهاز، يمكنك استخدام واجهات برمجة تطبيقات Python والمكتبات كالمعتاد؛ على سبيل المثال، بانداز وscikit-learn "ستعمل فقط". بالنسبة لأحمال عمل Python الموزعة، يقدم Databricks اثنين من واجهات برمجة التطبيقات الشائعة خارج الصندوق: PySpark وPandas API على Spark.

واجهة برمجة تطبيقات PySpark

PySpark هي واجهة برمجة تطبيقات Python الرسمية ل Apache Spark وتجمع بين قوة Python وApache Spark. PySpark هو أكثر مرونة من واجهة برمجة تطبيقات Pandas على Spark ويوفر دعما وميزات واسعة لعلوم البيانات ووظائف الهندسة مثل Spark SQL وBbb وMLLib وGraphX.

واجهة برمجة تطبيقات Pandas على Spark

إشعار

يوصي مشروع Koalas مفتوح المصدر الآن بالتبديل إلى واجهة برمجة تطبيقات Pandas على Spark. تتوفر واجهة برمجة تطبيقات Pandas على Spark على المجموعات التي تقوم بتشغيل Databricks Runtime 10.0 (EoS) وما فوق. بالنسبة للمجموعات التي تقوم بتشغيل Databricks Runtime 9.1 LTS والإصدارات أدناه، استخدم Koalas بدلا من ذلك.

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

إدارة التعليمات البرمجية باستخدام دفاتر الملاحظات ومجلدات Databricks Git

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

تلميح

لإعادة تعيين حالة دفتر الملاحظات بالكامل، قد يكون من المفيد إعادة تشغيل نواة iPython. بالنسبة لمستخدمي Jupyter، يتوافق خيار "إعادة تشغيل النواة" في Jupyter مع فصل دفتر ملاحظات وإعادة إرفاقه في Databricks. لإعادة تشغيل النواة في دفتر ملاحظات Python، انقر فوق محدد الحوسبة في شريط أدوات دفتر الملاحظات وقم بالمرور فوق نظام المجموعة المرفق أو مستودع SQL في القائمة لعرض قائمة جانبية. حدد فصل وإعادة إرفاق. يؤدي ذلك إلى فصل دفتر الملاحظات عن نظام المجموعة وإعادة إرفاقه، مما يؤدي إلى إعادة تشغيل عملية Python.

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

المجموعات والمكتبات

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

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

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

الرسوم المرئية

تحتوي دفاتر ملاحظات Azure Databricks Python على دعم مضمن للعديد من أنواع المرئيات. يمكنك أيضا استخدام المرئيات القديمة.

يمكنك أيضا تصور البيانات باستخدام مكتبات الجهات الخارجية؛ بعضها مثبت مسبقا في Databricks Runtime، ولكن يمكنك تثبيت مكتبات مخصصة أيضا. تتضمن الخيارات الشائعة ما يلي:

المهام

يمكنك أتمتة أحمال عمل Python كما هو مجدول أو مشغل إنشاء وتشغيل وظائف Azure Databricks في Databricks. يمكن للوظائف تشغيل دفاتر الملاحظات والبرامج النصية ل Python وملفات عجلة Python.

تلميح

لجدولة برنامج نصي Python بدلا من دفتر ملاحظات، استخدم spark_python_task الحقل ضمن tasks في النص الأساسي لطلب مهمة إنشاء.

التعلّم الآلي

يدعم Databricks مجموعة واسعة من أحمال عمل التعلم الآلي (ML)، بما في ذلك التعلم الآلي التقليدي على البيانات الجدولية، والتعلم العميق لرؤية الكمبيوتر ومعالجة اللغة الطبيعية، وأنظمة التوصية، وتحليلات الرسم البياني، والمزيد. للحصول على معلومات عامة حول التعلم الآلي على Databricks، راجع الذكاء الاصطناعي التعلم الآلي على Databricks.

بالنسبة لخوارزميات التعلم الآلي، يمكنك استخدام المكتبات المثبتة مسبقا في Databricks Runtime التعلم الآلي، والتي تتضمن أدوات Python الشائعة مثل scikit-learn وTensorFlow وKeras وPyTorch وApache Spark MLlib وXGBoost. يمكنك أيضا تثبيت مكتبات مخصصة.

بالنسبة لعمليات التعلم الآلي (MLOps)، يوفر Azure Databricks خدمة مدارة مصدر مفتوح مكتبة MLflow. باستخدام MLflow Tracking ، يمكنك تسجيل تطوير النموذج وحفظ النماذج بتنسيقات قابلة لإعادة الاستخدام. يمكنك استخدام سجل نموذج MLflow لإدارة وأتمتة ترقية النماذج نحو الإنتاج. تسمح الوظائف وخدمة النموذج باستضافة النماذج كوظائف دفعية ومتدفقة وكنقاط نهاية REST. لمزيد من المعلومات والأمثلة، راجع إدارة دورة حياة التعلم الآلي باستخدام MLflow أو مستندات MLflow Python API.

للبدء في أحمال عمل التعلم الآلي الشائعة، راجع الصفحات التالية:

IDEs وأدوات المطور وSDKs

بالإضافة إلى تطوير تعليمة Python البرمجية داخل دفاتر ملاحظات Azure Databricks، يمكنك التطوير خارجيا باستخدام بيئات التطوير المتكاملة (IDEs) مثل PyCharm وJupyter وVisual Studio Code. لمزامنة العمل بين بيئات التطوير الخارجية وDatabricks، هناك العديد من الخيارات:

  • التعليمات البرمجية: يمكنك مزامنة التعليمات البرمجية باستخدام Git. راجع تكامل Git مع مجلدات Databricks Git.
  • المكتبات والوظائف: يمكنك إنشاء مكتبات (مثل ملفات عجلة Python) خارجيا وتحميلها إلى Databricks. قد يتم استيراد هذه المكتبات داخل دفاتر ملاحظات Databricks، أو يمكن استخدامها لإنشاء وظائف. راجع المكتبات وإنشاء وظائف Azure Databricks وتشغيلها.
  • تنفيذ الجهاز عن بعد: يمكنك تشغيل التعليمات البرمجية من بيئة التطوير المتكامل المحلية للتطوير والاختبار التفاعليين. يمكن ل IDE الاتصال ب Azure Databricks لتنفيذ Apache Spark والحسابات الكبيرة على مجموعات Azure Databricks. راجع Databricks Connect.

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

لمزيد من المعلومات حول IDEs وأدوات المطور وSDKs، راجع أدوات المطور والإرشادات.

الموارد الإضافية