مشاركة عبر


ما هو دليل العمل الحالي الافتراضي؟

توضح هذه المقالة كيفية عمل دليل العمل الحالي الافتراضي (CWD) لتنفيذ دفتر الملاحظات والملف.

إشعار

استخدم Databricks Runtime 14.0+ وتكوينات مساحة العمل الافتراضية لمزيد من التناسق في سلوك (CWD) في جميع أنحاء مساحة العمل.

هناك سلوكان افتراضيان ل CWD للتعليمات البرمجية المنفذة محليا في دفاتر الملاحظات والملفات:

  1. ترجع CWD الدليل الذي يحتوي على دفتر الملاحظات أو البرنامج النصي الذي يتم تشغيله.
  2. يقوم CWD بإرجاع دليل يمثل وحدة تخزين سريعة الزوال المرفقة برنامج التشغيل.

يؤثر سلوك CWD هذا على جميع التعليمات البرمجية، بما في ذلك %sh التعليمات البرمجية Python أو R التي لا تستخدم Apache Spark. يتم تحديد السلوك بواسطة لغة التعليمات البرمجية وإصدار Databricks Runtime ومسار مساحة العمل وتكوين مسؤول مساحة العمل.

بالنسبة إلى تعليمة Scala البرمجية، يكون CWD هو التخزين المؤقت المرفق مع برنامج التشغيل.

بالنسبة للتعليمات البرمجية بجميع اللغات الأخرى:

  • في Databricks Runtime 14.0 وما فوق، CWD هو الدليل الذي يحتوي على دفتر الملاحظات أو البرنامج النصي قيد التشغيل. هذا صحيح بغض النظر عما إذا كانت التعليمات البرمجية في /Workspace/Repos.
  • بالنسبة لدفاتر الملاحظات التي تقوم بتشغيل Databricks Runtime 13.3 LTS والإصدارات أدناه، يعتمد CWD على ما إذا كانت التعليمات البرمجية في /Workspace/Repos:
  • بالنسبة إلى التعليمات البرمجية المنفذة في مسار خارج /Workspace/Repos، فإن CWD هو وحدة تخزين سريعة الزوال مرفقة برنامج التشغيل
  • بالنسبة للتعليمات البرمجية المنفذة في مسار في /Workspace/Repos، يعتمد CWD على إعداد تكوين المسؤول وإصدار DBR لنظام المجموعة:
    • بالنسبة لمساحات العمل التي تم enableWorkspaceFilesystem تعيينها إلى dbr8.4+ أو true، على إصدارات DBR 8.4 والإصدارات الأحدث، فإن CWD هو الدليل الذي يحتوي على دفتر الملاحظات أو البرنامج النصي قيد التشغيل. في إصدارات DBR أقل من 8.4، إنه وحدة التخزين المؤقتة المرفقة مع برنامج التشغيل
    • بالنسبة لمساحات العمل التي تم enableWorkspaceFilesystem تعيينها إلى dbr11.0+، في إصدارات DBR 11.0 والإصدارات الأحدث، فإن CWD هو الدليل الذي يحتوي على دفتر الملاحظات أو البرنامج النصي قيد التشغيل. في إصدارات DBR أقل من 11.0، إنه وحدة التخزين المؤقتة المرفقة مع برنامج التشغيل
    • بالنسبة لمساحات العمل التي تم enableWorkspaceFilesystem تعيينها إلى false، فإن CWD هو وحدة تخزين سريعة الزوال مرفقة برنامج التشغيل

الحصول على CWD في التعليمات البرمجية الخاصة بك

للحصول على مساحة العمل CWD لدفتر ملاحظات المسار الخاص بك، اتصل ب os.getcwd(). يجب استيراد الوحدة النمطية os (الوحدة النمطية الافتراضية لتفاعل نظام ملفات Python) في بداية دفتر الملاحظات باستخدام import os. على سبيل المثال:

import os
...
cwd = os.getcwd()

يمكنك أيضا تعيين CWD عن طريق الاتصال os.chdir('/path/to/dir') في بداية دفتر ملاحظات المسار. يمكنك فقط تعيين CWD عند تشغيل دفتر ملاحظات من مساحة العمل الخاصة بك مع تمكين WSFS.

كيف يؤثر هذا على أحمال العمل؟

أكبر التأثيرات على أحمال العمل لها علاقة بثبات الملف وموقعه:

  • في Databricks Runtime 13.3 LTS والإصدارات أدناه، بالنسبة للتعليمات البرمجية المنفذة في مسار خارج /Workspace/Repos، تخزن العديد من القصاصات البرمجية البيانات إلى موقع افتراضي على وحدة تخزين سريعة الزوال يتم حذفها نهائيا عند إنهاء نظام المجموعة.
  • في Databricks Runtime 14.0 والإصدارات الأحدث، ينشئ السلوك الافتراضي لهذه العمليات ملفات مساحة العمل المخزنة جنبا إلى جنب مع دفتر الملاحظات قيد التشغيل التي تستمر حتى يتم حذفها بشكل صريح.

للحصول على ملاحظات حول اختلافات الأداء والقيود الأخرى المتأصلة في ملفات مساحة العمل، راجع العمل مع ملفات مساحة العمل.

العودة إلى السلوك القديم

يمكنك تغيير دليل العمل الحالي لأي دفتر ملاحظات باستخدام أسلوب os.chdir()Python . إذا كنت تريد التأكد من أن كل دفتر ملاحظات يستخدم CWD على وحدات تخزين سريعة الزوال مرفقة برنامج التشغيل، يمكنك إضافة الأمر التالي إلى الخلية الأولى من كل دفتر ملاحظات وتشغيله قبل أي تعليمة برمجية أخرى:

import os

os.chdir("/tmp")