Поделиться через


Выполняет интерфейс командной строки (устаревшая версия)

Важно!

Поддержка этой документации прекращена, она может больше не обновляться.

Эта информация относится к устаревшим интерфейсам командной строки Databricks версии 0.18 и ниже. Databricks рекомендует использовать более новую версию Интерфейса командной строки Databricks версии 0.205 или более поздней. См. сведения о интерфейсе командной строки Databricks?. Чтобы найти версию интерфейса командной строки Databricks, выполните команду databricks -v.

Сведения о миграции из Databricks CLI версии 0.18 или ниже в Databricks CLI версии 0.205 или более поздней, см. в статье Databricks CLI.

Для выполнения подкоманд CLI для заданий Databricks добавьте их в databricks runs. Задание Databricks запускает подкоманды интерфейса командной строки, добавляя их в databricks jobs. Для заданий Databricks см. подразделы CLI заданий (устаревшая версия). Вместе эти подкоманда вызывают API заданий и API заданий 2.0.

Важно!

Интерфейс командной строки запуска заданий Databricks поддерживает обращение к двум версиям REST API заданий Databricks: 2.1 и 2.0 (Функции выполнения заданий являются частью REST API заданий.) Версия 2.1 добавляет поддержку оркестрации заданий с несколькими задачами; См. статью "Создание и запуск заданий Azure Databricks" и обновление с API заданий 2.0 до версии 2.1. Databricks рекомендует вызывать версию 2.1, если только у вас нет устаревших скриптов, которые используют версию 2.0 и перенос которых невозможен.

Если не указано иное, сведения об использовании программных средств, приведенные в этой статье, в равной степени актуальны для версий 2.1 и 2.0.

Примечание.

Если при выполнении запроса задания интерфейсом командной строки выдается ошибка уровня 500, то Databricks рекомендует повторить запрос в течение 10 минут (с интервалом не менее 30 секунд между запросами).

Требования для вызова Jobs REST API 2.1

Чтобы настроить и использовать CLI запуска заданий Databricks (и CLI заданий) для вызова 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 API заданий 2.1.
    • Вручную добавьте параметр jobs-api-version = 2.1 в файл ~/.databrickscfg в Unix, Linux или macOS или %USERPROFILE%\.databrickscfg в Windows. Все подкоманды CLI запуска заданий (и CLI заданий) будут вызывать по умолчанию REST API заданий 2.1.
    • Добавьте параметр --version=2.1 (например, databricks runs list --version=2.1), чтобы CLI заданий использовал REST API заданий 2.1 только для этого вызова.

    Если выполнено ни одно из описанных выше действий, то CLI заданий (и CLI запусков заданий) по умолчанию вызывает REST API заданий 2.0.

Требования для вызова Jobs REST API 2.0

Чтобы настроить CLI запуска заданий Databricks (и CLI заданий) для вызова REST API заданий 2.0, выполните указанные ниже действия.

  • Используйте версию CLI Databricks ранее 0.16.0, либо
  • Обновите интерфейс командной строки до версии 0.16.0 или более поздней, а затем выполните одно из следующих действий:
    • Выполните команду databricks jobs configure --version=2.0. Это позволит добавить параметр jobs-api-version = 2.0 в файл ~/.databrickscfg в Unix, Linux или macOS или %USERPROFILE%\.databrickscfg в Windows. Все подкоманды CLI запуска заданий (и CLI заданий) будут вызывать по умолчанию REST API заданий 2.0.
    • Вручную добавьте параметр jobs-api-version = 2.0 в файл ~/.databrickscfg в Unix, Linux или macOS или %USERPROFILE%\.databrickscfg в Windows. Все подкоманды CLI запуска заданий (и CLI заданий) будут вызывать по умолчанию REST API заданий 2.0.
    • Добавьте параметр --version=2.1 (например, databricks runs list --version=2.0), чтобы CLI заданий использовал REST API заданий 2.0 только для этого вызова.

Если выполнено ни одно из описанных выше действий, то CLI заданий (и CLI запусков заданий) по умолчанию вызывает 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 и пример ответа

См. статью "Запуски " для обновления api заданий 2.0 до версии 2.1.

Пример ответа 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

Заметки об использовании CLI заданий 2.1

См. статью "Запуски получения выходных данных " в обновлении API заданий 2.0 до версии 2.1.

Пример ответа 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 и пример ответа

См. список запусков в обновлении API заданий 2.0 до версии 2.1.

Пример ответа 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 и пример запроса

См. статью "Запуски отправки в обновлении с API заданий 2.0 до версии 2.1".

Пример запроса и ответа REST API заданий 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
}