تشغيل CLI (قديم)

هام

تم إيقاف هذه الوثائق وقد لا يتم تحديثها.

تنطبق هذه المعلومات على إصدارات Databricks CLI القديمة 0.18 والإصدارات أدناه. توصي Databricks باستخدام الإصدار 0.205 أو أحدث من Databricks CLI بدلا من ذلك. راجع ما هو Databricks CLI؟. للعثور على إصدار Databricks CLI الخاص بك، قم بتشغيل databricks -v.

للترحيل من Databricks CLI الإصدار 0.18 أو أقل إلى Databricks CLI الإصدار 0.205 أو أعلى، راجع ترحيل Databricks CLI.

تقوم بتشغيل مهمة Databricks بتشغيل أوامر CLI الفرعية عن طريق إلحاقها ب databricks runs ووظائف Databricks أوامر CLI الفرعية عن طريق إلحاقها ب databricks jobs. للحصول على أوامر CLI الفرعية لوظائف Databricks، راجع Jobs CLI (قديم) . معا، تستدعي هذه الأوامر الفرعية واجهة برمجة تطبيقات الوظائف وواجهة برمجة تطبيقات الوظائف 2.0.

هام

تدعم وظيفة Databricks تشغيل CLI الاستدعاءات إلى إصدارين من Databricks Jobs REST API: الإصداران 2.1 و2.0. (وظيفة تشغيل الوظيفة هي جزء من واجهة برمجة تطبيقات REST للوظائف.) يضيف الإصدار 2.1 دعما لتنسيق المهام ذات المهام المتعددة؛ راجع جدولة وتنسيق مهام سير العمل والتحديث من Jobs API 2.0 إلى 2.1. توصي Databricks باستدعاء الإصدار 2.1، ما لم يكن لديك برامج نصية قديمة تعتمد على الإصدار 2.0 ولا يمكن ترحيلها.

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

إشعار

إذا تلقيت خطأ على مستوى 500 عند إجراء مهمة تشغيل طلبات CLI، يوصي Databricks بإعادة محاولة الطلبات لمدة تصل إلى 10 دقائق (مع فاصل زمني 30 ثانية كحد أدنى بين عمليات إعادة المحاولة).

متطلبات استدعاء Jobs REST API 2.1

لإعداد وظيفة Databricks تشغل CLI (ووظائف CLI) لاستدعاء Jobs REST API 2.1، قم بما يلي:

  1. تحديث CLI إلى الإصدار 0.16.0 أو أعلى.

  2. قم بأحد الإجراءات التالية:

    • تشغيل الأمر databricks jobs configure --version=2.1. يؤدي هذا إلى إضافة الإعداد jobs-api-version = 2.1 إلى الملف ~/.databrickscfg على Unix أو Linux أو macOS أو %USERPROFILE%\.databrickscfg على Windows. ستستدعي جميع الأوامر الفرعية ل CLI (ووظائف CLI) المهام واجهة برمجة تطبيقات REST 2.1 للوظائف بشكل افتراضي.
    • أضف الإعداد jobs-api-version = 2.1 يدويا إلى الملف ~/.databrickscfg على Unix أو Linux أو macOS أو %USERPROFILE%\.databrickscfg على Windows. ستستدعي جميع الأوامر الفرعية ل CLI (ووظائف CLI) المهام واجهة برمجة تطبيقات REST 2.1 للوظائف بشكل افتراضي.
    • قم بإلحاق الخيار --version=2.1 (على سبيل المثال، databricks runs list --version=2.1) لإرشاد المهمة بتشغيل CLI لاستدعاء Jobs REST API 2.1 لهذا الاستدعاء فقط.

    إذا لم تتخذ أيا من الإجراءات السابقة، فإن المهمة تقوم بتشغيل CLI (والوظائف CLI) ستستدعي Jobs REST API 2.0 بشكل افتراضي.

متطلبات استدعاء Jobs REST API 2.0

لإعداد مهمة Databricks تشغل CLI (ووظائف CLI) لاستدعاء Jobs REST API 2.0، قم بأحد الإجراءات التالية:

  • استخدم إصدارا من Databricks CLI أقل من 0.16.0، أو
  • قم بتحديث CLI إلى الإصدار 0.16.0 أو أعلى، ثم قم بأحد الإجراءات التالية:
    • تشغيل الأمر databricks jobs configure --version=2.0. يؤدي هذا إلى إضافة الإعداد jobs-api-version = 2.0 إلى الملف ~/.databrickscfg على Unix أو Linux أو macOS أو %USERPROFILE%\.databrickscfg على Windows. ستستدعي جميع الأوامر الفرعية ل CLI (ووظائف CLI) المهام واجهة برمجة تطبيقات REST 2.0 للوظائف بشكل افتراضي.
    • أضف الإعداد jobs-api-version = 2.0 يدويا إلى الملف ~/.databrickscfg على Unix أو Linux أو macOS أو %USERPROFILE%\.databrickscfg على Windows. ستستدعي جميع الأوامر الفرعية ل CLI (ووظائف CLI) المهام واجهة برمجة تطبيقات REST 2.0 للوظائف بشكل افتراضي.
    • ألحق الخيار --version=2.1 (على سبيل المثال، databricks runs list --version=2.0) لإرشاد المهمة بتشغيل CLI لاستدعاء Jobs REST API 2.0 لهذا الاستدعاء فقط.

إذا لم تتخذ أيا من الإجراءات السابقة، فإن المهمة تقوم بتشغيل CLI (والوظائف CLI) ستستدعي Jobs REST API 2.0 بشكل افتراضي.

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

databricks runs --help
Usage: databricks runs [OPTIONS] COMMAND [ARGS]...

  Utility to interact with jobs runs.

Options:
  -v, --version   [VERSION]
  --debug         Debug mode. Shows full stack trace on error.
  --profile TEXT  CLI connection profile to use. The default profile is
                  "DEFAULT".

  -h, --help      Show this message and exit.

Commands:
  cancel      Cancels the specified run.
  get         Gets the metadata about a run in JSON form.
  get-output  Gets the output of a run.
  list        Lists job runs.
  submit      Submits a one-time run.

إلغاء تشغيل

لعرض وثائق الاستخدام، قم بتشغيل databricks runs cancel --help.

databricks runs cancel --run-id 119
{}

الحصول على معلومات حول التشغيل

لعرض وثائق الاستخدام، قم بتشغيل databricks runs get --help.

الاستخدام العام

databricks runs get --run-id 2785782

ملاحظات استخدام الوظائف CLI 2.1 ومثال الاستجابة

راجع عمليات التشغيل التي تحصل على التحديث من واجهة برمجة تطبيقات الوظائف 2.0 إلى 2.1.

مثال استجابة Jobs CLI 2.0

{
  "job_id": 1269263,
  "run_id": 2785782,
  "number_in_job": 1111,
  "original_attempt_run_id": 2785782,
  "state": {
    "life_cycle_state": "TERMINATED",
    "result_state": "SUCCESS",
    "state_message": ""
  },
  "task": {
    "notebook_task": {
      "notebook_path": "/Users/someone@example.com/notebooks/my-notebook.ipynb"
    }
  },
  "cluster_spec": {
    "new_cluster": {
      "spark_version": "8.1.x-scala2.12",
      "node_type_id": "Standard_F16s",
      "enable_elastic_disk": true,
      "azure_attributes": {
        "availability": "ON_DEMAND_AZURE"
      },
      "num_workers": 8
    }
  },
  "cluster_instance": {
    "cluster_id": "1234-567890-abcd123",
    "spark_context_id": "1234567890123456789"
  },
  "start_time": 1620947196985,
  "setup_duration": 36000,
  "execution_duration": 119000,
  "cleanup_duration": 3000,
  "end_time": 1620947355499,
  "trigger": "ONE_TIME",
  "creator_user_name": "someone@example.com",
  "run_name": "my-notebook-run",
  "run_page_url": "https://adb-1234567890123456.7.azuredatabricks.net/?o=1234567890123456#job/1269263/run/1111",
  "run_type": "JOB_RUN",
  "attempt_number": 0
}

الحصول على إخراج تشغيل

لعرض وثائق الاستخدام، قم بتشغيل databricks runs get-output --help.

إشعار

notebook_task عند إرجاع قيمة من استدعاء إلى dbutils.notebook.exit()، يحد Databricks من القيمة التي تم إرجاعها إلى أول 5 ميغابايت من البيانات. لإرجاع نتيجة أكبر، يمكنك تخزين نتائج المهمة في خدمة تخزين سحابية.

الاستخدام العام

databricks runs get-output --run-id 2785782

ملاحظات استخدام Jobs CLI 2.1

راجع عمليات التشغيل تحصل على الإخراج في التحديث من Jobs API 2.0 إلى 2.1.

مثال استجابة Jobs CLI 2.0

{
  "metadata": {
    "job_id": 1269263,
    "run_id": 2785782,
    "number_in_job": 1111,
    "original_attempt_run_id": 2785782,
    "state": {
      "life_cycle_state": "TERMINATED",
      "result_state": "SUCCESS",
      "state_message": ""
    },
    "task": {
      "notebook_task": {
        "notebook_path": "/Users/someone@example.com/notebooks/my-notebook.ipynb"
      }
    },
    "cluster_spec": {
      "new_cluster": {
        "spark_version": "8.1.x-scala2.12",
        "node_type_id": "Standard_F16s",
        "enable_elastic_disk": true,
        "azure_attributes": {
          "availability": "ON_DEMAND_AZURE"
        },
        "num_workers": 8
      }
    },
    "cluster_instance": {
      "cluster_id": "1234-567890-abcd123",
      "spark_context_id": "1234567890123456789"
    },
    "start_time": 1620947196985,
    "setup_duration": 36000,
    "execution_duration": 119000,
    "cleanup_duration": 3000,
    "end_time": 1620947355499,
    "trigger": "ONE_TIME",
    "creator_user_name": "someone@example.com",
    "run_name": "my-notebook-run",
    "run_page_url": "https://adb-1234567890123456.7.azuredatabricks.net/?o=1234567890123456#job/1269263/run/1111",
    "run_type": "JOB_RUN",
    "attempt_number": 0
  },
  "notebook_output": {}
}

الحصول على معلومات حول جميع عمليات التشغيل

لعرض وثائق الاستخدام، قم بتشغيل databricks runs list --help.

الاستخدام العام

databricks runs list --output JSON

ملاحظات استخدام الوظائف CLI 2.1 ومثال الاستجابة

راجع قائمة عمليات التشغيل في التحديث من Jobs API 2.0 إلى 2.1.

مثال استجابة Jobs CLI 2.0

{
  "runs": [
    {
      "job_id": 1269263,
      "run_id": 2785782,
      "number_in_job": 1111,
      "original_attempt_run_id": 2785782,
      "state": {
         "life_cycle_state": "TERMINATED",
         "result_state": "SUCCESS",
         "state_message": ""
      },
      "task": {
        "notebook_task": {
          "notebook_path": "/Users/someone@example.com/notebooks/my-notebook.ipynb"
        }
      },
      "cluster_spec": {
        "new_cluster": {
          "spark_version": "8.1.x-scala2.12",
          "node_type_id": "Standard_F16s",
          "enable_elastic_disk": true,
          "azure_attributes": {
            "availability": "ON_DEMAND_AZURE"
          },
          "num_workers": 8
        }
      },
      "cluster_instance": {
        "cluster_id": "1234-567890-abcd123",
        "spark_context_id": "1234567890123456789"
      },
      "start_time": 1620947196985,
      "setup_duration": 36000,
      "execution_duration": 119000,
      "cleanup_duration": 3000,
      "end_time": 1620947355499,
      "trigger": "ONE_TIME",
      "creator_user_name": "someone@example.com",
      "run_name": "my-notebook-run",
      "run_page_url": "https://adb-1234567890123456.7.azuredatabricks.net/?o=1234567890123456#job/1269263/run/1111",
      "run_type": "JOB_RUN",
      "attempt_number": 0
    },
    ...
  ],
  "has_more": false
}

إذا تم has_more إرجاع true، تتوفر معلومات حول عمليات التشغيل الإضافية. --offset استخدم الخيار لإرجاع معلومات حول عمليات التشغيل المتعلقة بأحدث تشغيل. على سبيل المثال، لإرجاع المعلومات بدءا من التشغيل العاشر الأحدث، حدد --offset 10.

--limit استخدم الخيار لإرجاع معلومات حول عدد ثابت من عمليات التشغيل. على سبيل المثال، لإرجاع معلومات لما يصل إلى 5 عمليات تشغيل تالية، حدد --limit 5. يمكنك تحديد ما يصل إلى 1000 تشغيل. إذا لم يتم تحديده، يكون الافتراضي هو 20.

إرسال تشغيل لمرة واحدة

لعرض وثائق الاستخدام، قم بتشغيل databricks runs submit --help.

الاستخدام العام

databricks runs submit --json-file submit-run.json

ملاحظات استخدام الوظائف REST API 2.1 ومثال الطلب

راجع إرسال عمليات التشغيل في التحديث من واجهة برمجة تطبيقات الوظائف 2.0 إلى 2.1.

مثال على الطلب والاستجابة لواجهة برمجة تطبيقات REST للوظائف 2.0

submit-run.json:

{
  "run_name": "my-spark-run",
  "new_cluster": {
    "spark_version": "8.1.x-scala2.12",
    "node_type_id": "Standard_F16s",
    "enable_elastic_disk": true,
    "azure_attributes": {
      "availability": "ON_DEMAND_AZURE"
    },
    "num_workers": 8
  },
  "libraries": [
    {
      "jar": "dbfs:/my-jar.jar"
    },
    {
      "maven": {
        "coordinates": "org.jsoup:jsoup:1.7.2"
      }
    }
  ],
  "spark_jar_task": {
    "main_class_name": "com.databricks.ComputeModels"
  }
}
{
  "run_id": 123
}