Bagikan melalui


Menjalankan CLI (versi lama)

Penting

Dokumentasi ini telah dihentikan dan mungkin tidak diperbarui.

Informasi ini berlaku untuk CLI Databricks warisan versi 0.18 ke bawah. Databricks merekomendasikan agar Anda menggunakan Databricks CLI versi 0.205 atau lebih baru. Lihat Apa itu Databricks CLI?. Untuk menemukan versi Databricks CLI Anda, jalankan databricks -v.

Untuk bermigrasi dari Databricks CLI versi 0.18 atau di bawahnya ke Databricks CLI versi 0.205 atau lebih tinggi, lihat migrasi CLI Databricks.

Anda menjalankan subperintah CLI untuk eksekusi pekerjaan di Databricks dengan menambahkannya ke databricks runs dan untuk pekerjaan Databricks dengan menambahkannya ke databricks jobs. Untuk sub-perintah CLI dari pekerjaan Databricks, lihat Jobs CLI (versi lama). Bersama-sama, sub-perintah ini memanggil JOBS API dan Jobs API 2.0.

Penting

CLI untuk menjalankan pekerjaan Databricks mendukung panggilan terhadap dua versi Pekerjaan Databricks REST API: versi 2.1 dan 2.0. (Fungsionalitas menjalankan tugas adalah bagian dari Jobs REST API.) Versi 2.1 menambahkan dukungan untuk pengaturan tugas dengan beberapa sub-tugas; lihat Tugas Lakeflow dan Pembaruan dari Jobs API 2.0 ke 2.1. Databricks merekomendasikan agar Anda memanggil versi 2.1, kecuali jika Anda memiliki skrip warisan yang mengandalkan versi 2.0 dan tidak dapat dimigrasikan.

Kecuali ada ketentuan lain, perilaku terprogram yang dijelaskan dalam artikel ini berlaku baik untuk versi 2.1 maupun 2.0.

Catatan

Jika Anda menerima kesalahan tingkat 500 saat membuat permintaan CLI untuk menjalankan pekerjaan, Databricks merekomendasikan agar Anda mencoba kembali permintaan sampai 10 menit (dengan interval minimum 30 detik antara percobaan ulang).

Persyaratan untuk memanggil REST API Pekerjaan 2.1

Untuk mengatur CLI pekerjaan Databricks dan CLI lainnya agar dapat mengakses Jobs REST API 2.1, lakukan hal berikut:

  1. Perbarui CLI ke versi 0.16.0 atau yang lebih baru.

  2. Lakukan salah satu hal berikut ini:

    • Jalankan perintah databricks jobs configure --version=2.1. Perintah ini menambahkan pengaturan jobs-api-version = 2.1 ke file ~/.databrickscfg di Unix, Linux, atau macOS, atau %USERPROFILE%\.databrickscfg di Windows. Semua subperintah CLI untuk menjalankan pekerjaan (dan CLI pekerjaan) akan memanggil Jobs REST API 2.1 secara default.
    • Tambahkan pengaturan jobs-api-version = 2.1 secara manual ke file ~/.databrickscfg di Unix, Linux, atau macOS, atau %USERPROFILE%\.databrickscfg di Windows. Semua subperintah CLI untuk menjalankan pekerjaan (dan CLI pekerjaan) akan memanggil Jobs REST API 2.1 secara default.
    • Tambahkan opsi --version=2.1 (misalnya, databricks runs list --version=2.1) untuk menginstruksikan CLI untuk menjalankan pekerjaan agar memanggil Jobs REST API 2.1 hanya untuk panggilan tersebut.

    Jika Anda tidak melakukan tindakan sebelumnya, eksekusi pekerjaan CLI (dan pekerjaan CLI) secara default akan memanggil Jobs REST API 2.0.

Persyaratan untuk memanggil REST API Pekerjaan 2.0

Untuk mengatur CLI untuk menjalankan pekerjaan Databricks (dan CLI pekerjaan) agar memanggil Jobs REST API 2.0, lakukan salah satu hal berikut:

  • Gunakan versi CLI Databricks di bawah versi 0.16.0, atau
  • Perbarui CLI ke versi 0.16.0 atau yang lebih baru, lalu lakukan salah satu hal berikut ini:
    • Jalankan perintah databricks jobs configure --version=2.0. Perintah ini menambahkan pengaturan jobs-api-version = 2.0 ke file ~/.databrickscfg di Unix, Linux, atau macOS, atau %USERPROFILE%\.databrickscfg di Windows. Semua subperintah CLI untuk pelaksanaan pekerjaan (dan CLI pekerjaan) akan menggunakan Jobs REST API 2.0 secara default.
    • Tambahkan pengaturan jobs-api-version = 2.0 secara manual ke file ~/.databrickscfg di Unix, Linux, atau macOS, atau %USERPROFILE%\.databrickscfg di Windows. Semua subperintah CLI untuk pelaksanaan pekerjaan (dan CLI pekerjaan) akan menggunakan Jobs REST API 2.0 secara default.
    • Tambahkan opsi --version=2.1 (misalnya, databricks runs list --version=2.0) untuk menginstruksikan CLI menjalankan tugas agar memanggil Jobs REST API 2.0 hanya untuk panggilan tersebut.

Jika Anda tidak melakukan tindakan sebelumnya, eksekusi pekerjaan CLI (dan pekerjaan CLI) secara default akan memanggil Jobs REST API 2.0.

Subperintah dan penggunaan umum

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.

Membatalkan eksekusi

Untuk menampilkan dokumentasi penggunaan, jalankan databricks runs cancel --help.

databricks runs cancel --run-id 119
{}

Mendapatkan informasi tentang menjalankan

Untuk menampilkan dokumentasi penggunaan, jalankan databricks runs get --help.

Penggunaan umum

databricks runs get --run-id 2785782

Catatan penggunaan Jobs CLI 2.1 dan contoh respons

Lihat Runs mendapatkan pada pembaruan dari Jobs API 2.0 ke 2.1.

Contoh respons 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
}

Mendapatkan hasil dari menjalankan

Untuk menampilkan dokumentasi penggunaan, jalankan databricks runs get-output --help.

Catatan

Saat notebook_task menampilkan nilai dari panggilan ke dbutils.notebook.exit(), Databricks membatasi nilai yang ditampilkan ke 5 MB data pertama. Untuk menampilkan hasil yang lebih besar, Anda dapat menyimpan hasil pekerjaan di layanan penyimpanan cloud.

Penggunaan umum

databricks runs get-output --run-id 2785782

Catatan Penggunaan Jobs CLI 2.1

Lihat Eksekusi yang menampilkan output di pembaruan dari Jobs API 2.0 ke 2.1.

Contoh respons 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": {}
}

Dapatkan informasi tentang semua proses

Untuk menampilkan dokumentasi penggunaan, jalankan databricks runs list --help.

Penggunaan umum

databricks runs list --output JSON

Catatan penggunaan Jobs CLI 2.1 dan contoh respons

Lihat daftar Eksekusi di pembaruan dari Jobs API 2.0 ke 2.1.

Contoh respons 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
}

Jika has_more menampilkan true, ada informasi mengenai eksekusi tambahan. Gunakan opsi --offset untuk menampilkan informasi mengenai pelaksanaan yang berhubungan dengan pelaksanaan terbaru. Misalnya, untuk menampilkan informasi dimulai dari sepuluh eksekusi terbaru, tentukan --offset 10.

Gunakan opsi --limit untuk menampilkan informasi mengenai jumlah tetap eksekusi. Misalnya, untuk menampilkan informasi hingga 5 eksekusi berikutnya, tentukan --limit 5. Anda dapat menentukan maksimal 1000 eksekusi. Jika tidak ditentukan, jumlah defaultnya adalah 20.

Menjalankan sekali

Untuk menampilkan dokumentasi penggunaan, jalankan databricks runs submit --help.

Penggunaan umum

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

Catatan penggunaan REST API Pekerjaan 2.1 dan contoh permintaan

Lihat Menjalankan pengiriman dalam Memperbarui dari Jobs API 2.0 ke 2.1.

Contoh permintaan dan respons REST API Pekerjaan 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
}