Bagikan melalui


Menjalankan CLI (warisan)

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 eksekusi pekerjaan Databricks dengan menambahkannya ke databricks runs dan subperintah CLI pekerjaan Databricks dengan menambahkannya ke databricks jobs. Untuk sub-perintah CLI pekerjaan Databricks, lihat CLI Pekerjaan (warisan). Bersama-sama, sub-perintah ini memanggil JOBS API dan Jobs API 2.0.

Penting

CLI eksekusi pekerjaan Databricks mendukung panggilan terhadap dua versi REST API Pekerjaan Databricks: versi 2.1 dan 2.0. (Fungsionalitas eksekusi pekerjaan adalah bagian dari Rest API Pekerjaan.) Versi 2.1 menambahkan dukungan untuk orkestrasi pekerjaan dengan beberapa tugas; lihat Menjadwalkan dan mengatur alur kerja dan Memperbarui 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 500 tingkat saat membuat permintaan CLI eksekusi pekerjaan, Databricks merekomendasikan agar Anda mencoba kembali permintaan hingga 10 menit (dengan interval minimum selama 30 detik antara percobaan ulang yang dilakukan).

Persyaratan untuk memanggil REST API Pekerjaan 2.1

Untuk menyiapkan CLI eksekusi pekerjaan Databricks (dan CLI pekerjaan) guna memanggil REST API Pekerjaan 2.1, lakukan hal berikut:

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

  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 eksekusi pekerjaan (dan CLI pekerjaan) akan memanggil REST API Pekerjaan 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 eksekusi pekerjaan (dan CLI pekerjaan) akan memanggil REST API Pekerjaan 2.1 secara default.
    • Tambahkan opsi --version=2.1 (misalnya, databricks runs list --version=2.1) untuk menginstruksikan agar CLI eksekusi pekerjaan memanggil REST API Pekerjaan 2.1 hanya untuk panggilan tersebut.

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

Persyaratan untuk memanggil REST API Pekerjaan 2.0

Untuk menyiapkan CLI eksekusi pekerjaan Databricks (dan CLI pekerjaan) untuk memanggil REST API Pekerjaan 2.0, lakukan salah satu dari beberapa 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 eksekusi pekerjaan (dan CLI pekerjaan) akan memanggil REST API Pekerjaan 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 eksekusi pekerjaan (dan CLI pekerjaan) akan memanggil REST API Pekerjaan 2.0 secara default.
    • Tambahkan opsi --version=2.1 (misalnya, databricks runs list --version=2.0) untuk menginstruksikan agar CLI eksekusi pekerjaan memanggil REST API Pekerjaan 2.0 hanya untuk panggilan tersebut.

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

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 mengenai eksekusi

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

Penggunaan umum

databricks runs get --run-id 2785782

Catatan penggunaan dan contoh respons CLI Pekerjaan 2.1

Lihat Menjalankan get di Memperbarui dari Jobs API 2.0 ke 2.1.

Contoh respons CLI Pekerjaan 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 output eksekusi

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 CLI Pekerjaan 2.1

Lihat Menjalankan mendapatkan output dalam Memperbarui dari Jobs API 2.0 ke 2.1.

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

Mendapatkan informasi mengenai semua eksekusi

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

Penggunaan umum

databricks runs list --output JSON

Catatan penggunaan dan contoh respons CLI Pekerjaan 2.1

Lihat Daftar eksekusi di Memperbarui dari Jobs API 2.0 ke 2.1.

Contoh respons CLI Pekerjaan 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 eksekusi yang berhubungan dengan eksekusi 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.

Mengirimkan eksekusi satu kali

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
}