Bagikan melalui


Jobs API 2.0

Penting

Artikel ini mendikumentasikan versi 2.0 dari Jobs API. Namun, Databricks merekomendasikan agar Anda menggunakan Jobs API 2.2 untuk klien dan skrip baru dan yang sudah ada. Untuk informasi lebih lanjut tentang perubahan di Jobs API versi 2.2, lihat Memperbarui dari Jobs API 2.1 ke 2.2.

Jobs API memungkinkan Anda membuat, mengedit, dan menghapus pekerjaan. Ukuran maksimum permintaan yang diizinkan ke Jobs API adalah 10 MB.

Untuk mempelajari tentang fungsionalitas yang diperbarui dalam versi API Pekerjaan yang lebih baru, lihat Memperbarui dari Jobs API 2.0 ke 2.1 dan Memperbarui dari Jobs API 2.1 ke 2.2.

Peringatan

Anda tidak boleh mengodekan rahasia secara permanen atau menyimpannya dalam teks biasa. Gunakan Secrets API untuk mengelola rahasia di Databricks CLI. Gunakan Utilitas rahasia (dbutils.secrets) untuk referensi rahasia di notebook dan pekerjaan.

Catatan

Jika Anda menerima kesalahan tingkat 500 saat membuat permintaan Jobs API, Databricks merekomendasikan untuk mencoba kembali permintaan hingga 10 menit (dengan interval minimum 30 detik antara percobaan ulang).

Penting

Untuk mengakses API Databricks REST, Anda harus melakukan autentikasi.

Buat

Titik akhir Metode HTTP
2.0/jobs/create POST

Membuat pekerjaan baru.

Contoh

Contoh ini akan menghasilkan pekerjaan yang menjalankan tugas JAR pada pukul 22:15 setiap malam.

Minta

curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/create \
--data @create-job.json \
| jq .

create-job.json:

{
  "name": "Nightly model training",
  "new_cluster": {
    "spark_version": "7.3.x-scala2.12",
    "node_type_id": "Standard_D3_v2",
    "num_workers": 10
  },
  "libraries": [
    {
      "jar": "dbfs:/my-jar.jar"
    },
    {
      "maven": {
        "coordinates": "org.jsoup:jsoup:1.7.2"
      }
    }
  ],
  "timeout_seconds": 3600,
  "max_retries": 1,
  "schedule": {
    "quartz_cron_expression": "0 15 22 * * ?",
    "timezone_id": "America/Los_Angeles"
  },
  "spark_jar_task": {
    "main_class_name": "com.databricks.ComputeModels"
  }
}

Ganti:

  • <databricks-instance> dengan nama instans ruang kerja Azure Databricks, misalnya adb-1234567890123456.7.azuredatabricks.net.
  • Konten create-job.json dengan bidang yang sesuai untuk solusi Anda.

Contoh ini menggunakan file .netrc dan jq.

Respons

{
  "job_id": 1
}

Struktur permintaan

Penting

  • Saat Anda menjalankan pekerjaan di kluster pekerjaan baru, pekerjaan diperlakukan sebagai beban kerja Jobs Compute (otomatis) yang tunduk pada harga Jobs Compute.
  • Saat Anda menjalankan pekerjaan pada kluster serba guna yang ada, pekerjaan tersebut diperlakukan sebagai beban kerja All-Purpose Compute (interaktif) yang tunduk pada harga All-Purpose Compute.
Nama Bidang Jenis Deskripsi
existing_cluster_id OR new_cluster STRING OR NewCluster Jika existing_cluster_id, ID dari kluster yang ada yang akan digunakan untuk semua eksekusi pekerjaan ini. Saat menjalankan pekerjaan di kluster yang ada, Anda mungkin perlu memulai ulang kluster secara manual jika berhenti merespons. Databricks menyarankan untuk menjalankan pekerjaan pada kluster baru untuk mendapatkan keandalan yang lebih besar.

Jika new_cluster, deskripsi kluster yang akan dibuat untuk setiap eksekusi.

Jika menentukan PipelineTask, bidang ini bisa dikosongkan.
notebook_taskATAU ATAU spark_jar_task
spark_python_taskATAU ATAU spark_submit_task
pipeline_task OR run_job_task
NotebookTask ATAU SparkJarTask ATAU SparkPythonTask ATAU SparkSubmitTask OR PipelineTask OR RunJobTask Jika notebook_task, menunjukkan bahwa pekerjaan ini harus menjalankan notebook. Bidang ini mungkin tidak ditentukan bersamaan dengan spark_jar_task.

Jika spark_jar_task, menunjukkan bahwa pekerjaan ini harus menjalankan JAR.

Jika spark_python_task, menunjukkan bahwa pekerjaan ini harus menjalankan file Python.

Jika spark_submit_task, menunjukkan bahwa pekerjaan ini harus diluncurkan oleh skrip pengiriman spark.

Jika pipeline_task, menunjukkan bahwa pekerjaan ini harus menjalankan alur Delta Live Tables.

Jika run_job_task, menunjukkan bahwa pekerjaan ini harus menjalankan pekerjaan lain.
name STRING Nama opsional untuk pekerjaan tersebut. Nilai defaultnya adalah Untitled.
libraries Array Pustaka Pustaka opsional list yang hendak diinstal pada kluster untuk menjalankan pekerjaan. Nilai defaultnya adalah listkosong.
email_notifications JobEmailNotifications set opsional alamat email yang akan diberi tahu ketika proses pekerjaan ini dimulai, selesai, dan ketika pekerjaan ini dihapus. Perilaku default adalah tidak mengirim email apa pun.
webhook_notifications WebhookNotifications set opsional tujuan sistem untuk memberi tahu saat menjalankan pekerjaan ini dimulai, selesai, atau gagal.
notification_settings JobNotificationSettings Pengaturan pemberitahuan opsional yang digunakan saat mengirim pemberitahuan ke masing-masing email_notifications dan webhook_notifications untuk pekerjaan ini.
timeout_seconds INT32 Batas waktu opsional diterapkan untuk setiap eksekusi pekerjaan ini. Perilaku default adalah tidak memiliki batas waktu.
max_retries INT32 Jumlah maksimum opsional untuk mencoba kembali eksekusi yang gagal. Eksekusi dianggap tidak berhasil jika selesai dengan FAILED result_state atau
INTERNAL_ERROR
life_cycle_state. Nilai -1 berarti mencoba kembali tanpa batas waktu dan nilai 0 berarti tidak pernah mencoba kembali. Perilaku default adalah tidak pernah mencoba kembali.
min_retry_interval_millis INT32 Interval minimal opsional dalam milidetik antara awal eksekusi yang gagal dan eksekusi percobaan ulang berikutnya. Perilaku default adalah bahwa eksekusi yang gagal segera dicoba kembali.
retry_on_timeout BOOL Kebijakan opsional untuk menentukan apakah akan mencoba kembali pekerjaan saat waktu habis. Perilaku default adalah tidak mencoba kembali pada batas waktu.
schedule CronSchedule Jadwal periodik opsional untuk pekerjaan ini. Perilaku defaultnya adalah pekerjaan berjalan ketika dipicu dengan mengklik Jalankan sekarang di antarmuka pengguna Pekerjaan atau mengirim permintaan API ke runNow.
max_concurrent_runs INT32 Jumlah maksimum opsional yang diizinkan dari eksekusi pekerjaan bersamaan.

Set nilai ini jika Anda ingin dapat menjalankan beberapa pekerjaan yang sama secara bersamaan. Ini berguna, misalnya, jika Anda menjalankan pekerjaan Anda dengan jadwal yang sering dan ingin memungkinkan pelaksanaan berturut-turut saling tumpang tindih, atau jika Anda ingin memicu beberapa pelaksanaan yang berbeda berdasarkan input parameters.

Pengaturan ini hanya memengaruhi proses baru. Misalnya, misalkan konkurensi pekerjaan adalah 4 dan ada 4 eksekusi aktif bersamaan. Kemudian, mengatur konkurensi ke 3 tidak akan menghapus salah satu eksekusi aktif. Namun, sejak saat itu, eksekusi baru akan dilewati kecuali ada kurang dari 3 eksekusi aktif.

Nilai ini tidak boleh melebihi 1000. Mengatur nilai ini ke 0 menyebabkan semua eksekusi baru akan dilewati. Perilaku default adalah hanya mengizinkan 1 kali eksekusi bersamaan.

Struktur respons

Nama Bidang Jenis Deskripsi
job_id INT64 identifier kanonik untuk pekerjaan yang baru dibuat.

List

Titik akhir Metode HTTP
2.0/jobs/list GET

List semua pekerjaan.

Contoh

Minta

curl --netrc --request GET \
https://<databricks-instance>/api/2.0/jobs/list \
| jq .

Ganti <databricks-instance> dengan nama instans ruang kerja Azure Databricks, misalnya adb-1234567890123456.7.azuredatabricks.net.

Contoh ini menggunakan file .netrc dan jq.

Respons

{
  "jobs": [
    {
      "job_id": 1,
      "settings": {
        "name": "Nightly model training",
        "new_cluster": {
          "spark_version": "7.3.x-scala2.12",
          "node_type_id": "Standard_D3_v2",
          "num_workers": 10
        },
        "libraries": [
          {
            "jar": "dbfs:/my-jar.jar"
          },
          {
            "maven": {
              "coordinates": "org.jsoup:jsoup:1.7.2"
            }
          }
        ],
        "timeout_seconds": 100000000,
        "max_retries": 1,
        "schedule": {
          "quartz_cron_expression": "0 15 22 * * ?",
          "timezone_id": "America/Los_Angeles",
          "pause_status": "UNPAUSED"
        },
        "spark_jar_task": {
          "main_class_name": "com.databricks.ComputeModels"
        }
      },
      "created_time": 1457570074236
    }
  ]
}

Struktur respons

Nama Bidang Jenis Deskripsi
jobs Array Pekerjaan list pekerjaan.

Hapus

Titik akhir Metode HTTP
2.0/jobs/delete POST

Hapus pekerjaan dan kirim email ke alamat yang ditentukan dalam JobSettings.email_notifications. Tidak ada tindakan yang terjadi jika pekerjaan telah dihapus. Setelah pekerjaan dihapus, baik detail maupun riwayat penayangannya tidak terlihat di UI Atau API Jobs. Pekerjaan dijamin akan dihapus setelah menyelesaikan permintaan ini. Namun, eksekusi yang aktif sebelum penerimaan permintaan ini mungkin masih aktif. Eksekusi tersebut akan dihentikan secara asinkron.

Contoh

curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/delete \
--data '{ "job_id": <job-id> }'

Ganti:

  • <databricks-instance> dengan nama instans ruang kerja Azure Databricks, misalnya adb-1234567890123456.7.azuredatabricks.net.
  • <job-id> dengan ID pekerjaan, misalnya 123.

Contoh ini menggunakan file .netrc.

Struktur permintaan

Nama Bidang Jenis Deskripsi
job_id INT64 identifier kanonik dari tugas yang akan dihapus. Bidang ini wajib diisi.

Get

Titik akhir Metode HTTP
2.0/jobs/get GET

Ambil informasi tentang satu pekerjaan.

Contoh

Minta

curl --netrc --request GET \
'https://<databricks-instance>/api/2.0/jobs/get?job_id=<job-id>' \
| jq .

Atau:

curl --netrc --get \
https://<databricks-instance>/api/2.0/jobs/get \
--data job_id=<job-id> \
| jq .

Ganti:

  • <databricks-instance> dengan nama instans ruang kerja Azure Databricks, misalnya adb-1234567890123456.7.azuredatabricks.net.
  • <job-id> dengan ID pekerjaan, misalnya 123.

Contoh ini menggunakan file .netrc dan jq.

Respons

{
  "job_id": 1,
  "settings": {
    "name": "Nightly model training",
    "new_cluster": {
      "spark_version": "7.3.x-scala2.12",
      "node_type_id": "Standard_D3_v2",
      "num_workers": 10
    },
    "libraries": [
      {
        "jar": "dbfs:/my-jar.jar"
      },
      {
        "maven": {
          "coordinates": "org.jsoup:jsoup:1.7.2"
        }
      }
    ],
    "timeout_seconds": 100000000,
    "max_retries": 1,
    "schedule": {
      "quartz_cron_expression": "0 15 22 * * ?",
      "timezone_id": "America/Los_Angeles",
      "pause_status": "UNPAUSED"
    },
    "spark_jar_task": {
      "main_class_name": "com.databricks.ComputeModels"
    }
  },
  "created_time": 1457570074236
}

Struktur permintaan

Nama Bidang Jenis Deskripsi
job_id INT64 identifier kanonis dari pekerjaan untuk mendapatkan informasi terkait. Bidang ini wajib diisi.

Struktur respons

Nama Bidang Jenis Deskripsi
job_id INT64 identifier kanonikal untuk pekerjaan ini.
creator_user_name STRING Nama pengguna pembuat. Bidang ini tidak akan disertakan dalam respons jika pengguna telah dihapus.
settings JobSettings Pengaturan untuk pekerjaan ini dan semua eksekusinya. Pengaturan ini dapat diperbarui menggunakan titik akhir Reset atau Update.
created_time INT64 Waktu saat pekerjaan ini dibuat dalam milidetik zaman (milidetik sejak 1/1/1970 UTC).

Reset

Titik akhir Metode HTTP
2.0/jobs/reset POST

Menimpa semua pengaturan untuk pekerjaan tertentu. Gunakan titik akhir Update untuk update pengaturan pekerjaan sebagian.

Contoh

Permintaan contoh ini membuat pekerjaan 2 identik dengan pekerjaan 1 dalam contoh buat.

curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/reset \
--data @reset-job.json \
| jq .

reset-job.json:

{
  "job_id": 2,
  "new_settings": {
    "name": "Nightly model training",
    "new_cluster": {
      "spark_version": "7.3.x-scala2.12",
      "node_type_id": "Standard_D3_v2",
      "num_workers": 10
    },
    "libraries": [
      {
        "jar": "dbfs:/my-jar.jar"
      },
      {
        "maven": {
          "coordinates": "org.jsoup:jsoup:1.7.2"
        }
      }
    ],
    "timeout_seconds": 100000000,
    "max_retries": 1,
    "schedule": {
      "quartz_cron_expression": "0 15 22 * * ?",
      "timezone_id": "America/Los_Angeles",
      "pause_status": "UNPAUSED"
    },
    "spark_jar_task": {
      "main_class_name": "com.databricks.ComputeModels"
    }
  }
}

Ganti:

  • <databricks-instance> dengan nama instans ruang kerja Azure Databricks, misalnya adb-1234567890123456.7.azuredatabricks.net.
  • Konten reset-job.json dengan bidang yang sesuai untuk solusi Anda.

Contoh ini menggunakan file .netrc dan jq.

Struktur permintaan

Nama Bidang Jenis Deskripsi
job_id INT64 Kanonikal identifier dari pekerjaan untuk reset. Bidang ini wajib diisi.
new_settings JobSettings Pengaturan baru pekerjaan. Pengaturan ini sepenuhnya menggantikan pengaturan lama.

Perubahan pada bidang JobSettings.timeout_seconds diterapkan ke eksekusi aktif. Perubahan pada bidang lain hanya diterapkan untuk eksekusi di masa mendatang.

Update

Titik akhir Metode HTTP
2.0/jobs/update POST

Menambahkan, mengubah, atau remove pengaturan tertentu dari pekerjaan yang sudah ada. Gunakan titik akhir Reset untuk menimpa semua pengaturan tugas.

Contoh

Permintaan contoh ini menghapus pustaka dan menambahkan pengaturan pemberitahuan email ke pekerjaan 1 yang ditentukan dalam contoh buat.

curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/update \
--data @update-job.json \
| jq .

update-job.json:

{
  "job_id": 1,
  "new_settings": {
    "existing_cluster_id": "1201-my-cluster",
    "email_notifications": {
      "on_start": [ "someone@example.com" ],
      "on_success": [],
      "on_failure": []
    }
  },
  "fields_to_remove": ["libraries"]
}

Ganti:

  • <databricks-instance> dengan nama instans ruang kerja Azure Databricks, misalnya adb-1234567890123456.7.azuredatabricks.net.
  • Konten update-job.json dengan bidang yang sesuai untuk solusi Anda.

Contoh ini menggunakan file .netrc dan jq.

Struktur permintaan

Nama Bidang Jenis Deskripsi
job_id INT64 Kanonikal identifier dari pekerjaan untuk update. Bidang ini wajib diisi.
new_settings JobSettings Pengaturan baru untuk pekerjaan tersebut.

Bidang tingkat atas yang ditentukan dalam new_settings, kecuali untuk array, sepenuhnya diganti. Array digabungkan berdasarkan bidang kunci masing-masing, seperti task_key atau
job_cluster_key, dan entri array dengan kunci yang sama sepenuhnya diganti. Kecuali untuk penggabungan array, memperbarui sebagian bidang berlapis tidak didukung.

Perubahan pada bidang JobSettings.timeout_seconds diterapkan ke eksekusi aktif. Perubahan pada bidang lain hanya diterapkan untuk eksekusi di masa mendatang.
fields_to_remove Array STRING Remove kolom tingkat atas dalam pengaturan tugas. Menghapus bidang berlapis tidak didukung, kecuali untuk entri dari tasks array dan job_clusters . Misalnya, berikut ini adalah argumen yang valid untuk bidang ini:
["libraries", "schedule", "tasks/task_1", "job_clusters/Default"]

Bidang ini bersifat opsional.

Jalankan sekarang

Penting

  • Ruang kerja dibatasi hingga 1000 eksekusi tugas bersamaan. Respons 429 Too Many Requests dikembalikan saat Anda meminta eksekusi yang tidak dapat segera dimulai.
  • Jumlah pekerjaan yang dapat dibuat ruang kerja dalam satu jam dibatasi hingga 10000 (termasuk “pengiriman eksekusi”). limit ini juga memengaruhi pekerjaan yang dibuat oleh REST API dan alur kerja notebook.
  • Ruang kerja dapat berisi hingga 12000 pekerjaan yang disimpan.
  • Pekerjaan dapat berisi hingga 100 tugas.
Titik akhir Metode HTTP
2.0/jobs/run-now POST

Jalankan pekerjaan sekarang dan kembalikan run_id eksekusi yang dipicu.

Tip

Jika Anda memanggil Buat bersama dengan Jalankan sekarang, Anda dapat menggunakan Runs mengirimkan titik akhir sebagai gantinya, yang memungkinkan Anda mengirimkan beban kerja Anda secara langsung tanpa having untuk membuat pekerjaan.

Contoh

curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/run-now \
--data @run-job.json \
| jq .

run-job.json:

Contoh permintaan untuk pekerjaan notebook:

{
  "job_id": 1,
  "notebook_params": {
    "name": "john doe",
    "age": "35"
  }
}

Contoh permintaan untuk pekerjaan JAR:

{
  "job_id": 2,
  "jar_params": [ "john doe", "35" ]
}

Ganti:

  • <databricks-instance> dengan nama instans ruang kerja Azure Databricks, misalnya adb-1234567890123456.7.azuredatabricks.net.
  • Konten run-job.json dengan bidang yang sesuai untuk solusi Anda.

Contoh ini menggunakan file .netrc dan jq.

Struktur permintaan

Nama Bidang Jenis Deskripsi
job_id INT64
jar_params Array STRING list parameters untuk pekerjaan dengan tugas JAR, misalnya "jar_params": ["john doe", "35"]. parameters akan digunakan untuk memanggil fungsi utama kelas utama yang ditentukan dalam tugas Spark JAR. Jika tidak ditentukan pada run-now, akan kembali ke listyang kosong. jar_params tidak dapat ditentukan bersama dengan notebook_params. Representasi JSON dari bidang ini (yaitu {"jar_params":["john doe","35"]}) tidak dapat melebihi 10.000 byte.
notebook_params Peta ParamPair Peta dari kunci ke values untuk pekerjaan dengan tugas buku catatan, misalnya
"notebook_params": {"name": "john doe", "age": "35"}. Peta diteruskan ke notebook dan dapat diakses melalui dbutils.widgets.get fungsi.

Jika tidak ditentukan pada run-now, pelaksanaan yang dipicu menggunakan dasar tugas parameters.

Anda tidak dapat menentukan notebook_params bersama dengan jar_params.

Representasi JSON dari bidang ini (yaitu
{"notebook_params":{"name":"john doe","age":"35"}}) tidak boleh melebihi 10.000 byte.
python_params Array STRING Sebuah list dari parameters untuk pekerjaan dengan tugas-tugas Python, misalnya "python_params": ["john doe", "35"]. parameters akan diteruskan ke file Python sebagai baris perintah parameters. Jika ditentukan pada run-now, itu akan menimpa parameters yang ditentukan dalam pengaturan tugas. Representasi JSON dari bidang ini (yaitu {"python_params":["john doe","35"]}) tidak dapat melebihi 10.000 byte.
spark_submit_params Array STRING list parameters untuk pekerjaan dengan tugas pengiriman Spark, contohnya
"spark_submit_params": ["--class", "org.apache.spark.examples.SparkPi"]. parameters akan diteruskan ke skrip spark-submit sebagai baris perintah parameters. Jika ditentukan pada run-now, itu akan menimpa parameters yang ditentukan dalam pengaturan tugas. Representasi JSON dari bidang ini tidak boleh melebihi 10.000 byte.
idempotency_token STRING Token opsional yang dapat digunakan untuk menjamin idempotensi permintaan eksekusi pekerjaan. Jika sudah ada eksekusi dengan token yang disediakan, permintaan tidak akan membuat eksekusi baru. Namun, permintaan tersebut akan mengembalikan ID dari eksekusi yang ada. Jika eksekusi dengan token yang disediakan dihapus, kesalahan akan dikembalikan.

Jika Anda menentukan token idempotency, setelah gagal Anda dapat mencoba ulang hingga permintaan berhasil. Azure Databricks menjamin bahwa tepat satu eksekusi akan diluncurkan dengan token idempotensi tersebut.

Token ini harus memiliki maksimal 64 karakter.

Untuk informasi selengkapnya, lihat Cara memastikan idempotency untuk pekerjaan.

Struktur respons

Nama Bidang Jenis Deskripsi
run_id INT64 ID unik secara global dari eksekusi yang baru dipicu.
number_in_job INT64 Nomor urut eksekusi ini di antara semua eksekusi pekerjaan.

Menjalankan pengiriman

Penting

  • Ruang kerja dibatasi hingga 1000 eksekusi tugas bersamaan. Respons 429 Too Many Requests dikembalikan saat Anda meminta eksekusi yang tidak dapat segera dimulai.
  • Jumlah pekerjaan yang dapat dibuat ruang kerja dalam satu jam dibatasi hingga 10000 (termasuk “pengiriman eksekusi”). limit ini juga memengaruhi pekerjaan yang dibuat oleh REST API dan alur kerja notebook.
  • Ruang kerja dapat berisi hingga 12000 pekerjaan yang disimpan.
  • Pekerjaan dapat berisi hingga 100 tugas.
Titik akhir Metode HTTP
2.0/jobs/runs/submit POST

Mengirimkan eksekusi satu kali. Titik akhir ini memungkinkan Anda mengirimkan beban kerja secara langsung tanpa membuat pekerjaan. Gunakan jobs/runs/get API untuk memeriksa status eksekusi setelah pekerjaan dikirimkan.

Contoh

Minta

curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/runs/submit \
--data @submit-job.json \
| jq .

submit-job.json:

{
  "run_name": "my spark task",
  "new_cluster": {
    "spark_version": "7.3.x-scala2.12",
    "node_type_id": "Standard_D3_v2",
    "num_workers": 10
  },
  "libraries": [
    {
      "jar": "dbfs:/my-jar.jar"
    },
    {
      "maven": {
        "coordinates": "org.jsoup:jsoup:1.7.2"
      }
    }
  ],
  "spark_jar_task": {
    "main_class_name": "com.databricks.ComputeModels"
  }
}

Ganti:

  • <databricks-instance> dengan nama instans ruang kerja Azure Databricks, misalnya adb-1234567890123456.7.azuredatabricks.net.
  • Konten submit-job.json dengan bidang yang sesuai untuk solusi Anda.

Contoh ini menggunakan file .netrc dan jq.

Respons

{
  "run_id": 123
}

Struktur permintaan

Penting

  • Saat Anda menjalankan pekerjaan di kluster pekerjaan baru, pekerjaan diperlakukan sebagai beban kerja Jobs Compute (otomatis) yang tunduk pada harga Jobs Compute.
  • Saat Anda menjalankan pekerjaan pada kluster serba guna yang ada, pekerjaan tersebut diperlakukan sebagai beban kerja All-Purpose Compute (interaktif) yang tunduk pada harga All-Purpose Compute.
Nama Bidang Jenis Deskripsi
existing_cluster_id OR new_cluster STRING OR NewCluster Jika existing_cluster_id, ID dari kluster yang ada yang akan digunakan untuk semua eksekusi pekerjaan ini. Saat menjalankan pekerjaan di kluster yang ada, Anda mungkin perlu memulai ulang kluster secara manual jika berhenti merespons. Databricks menyarankan untuk menjalankan pekerjaan pada kluster baru untuk mendapatkan keandalan yang lebih besar.

Jika new_cluster, deskripsi kluster yang akan dibuat untuk setiap eksekusi.

Jika menentukan PipelineTask, bidang ini bisa dikosongkan.
notebook_taskATAU ATAU spark_jar_task
spark_python_taskATAU ATAU spark_submit_task
pipeline_task OR run_job_task
NotebookTask ATAU SparkJarTask ATAU SparkPythonTask ATAU SparkSubmitTask OR PipelineTask OR RunJobTask Jika notebook_task, menunjukkan bahwa pekerjaan ini harus menjalankan notebook. Bidang ini mungkin tidak ditentukan bersamaan dengan spark_jar_task.

Jika spark_jar_task, menunjukkan bahwa pekerjaan ini harus menjalankan JAR.

Jika spark_python_task, menunjukkan bahwa pekerjaan ini harus menjalankan file Python.

Jika spark_submit_task, menunjukkan bahwa pekerjaan ini harus diluncurkan oleh skrip pengiriman spark.

Jika pipeline_task, menunjukkan bahwa pekerjaan ini harus menjalankan alur Delta Live Tables.

Jika run_job_task, menunjukkan bahwa pekerjaan ini harus menjalankan pekerjaan lain.
run_name STRING Nama opsional untuk eksekusi. Nilai defaultnya adalah Untitled.
webhook_notifications WebhookNotifications set opsional tujuan sistem untuk memberi tahu saat menjalankan pekerjaan ini dimulai, selesai, atau gagal.
notification_settings JobNotificationSettings Pengaturan pemberitahuan opsional yang digunakan saat mengirim pemberitahuan ke masing-masing webhook_notifications untuk eksekusi ini.
libraries Array Pustaka Pustaka opsional list yang hendak diinstal pada kluster untuk menjalankan pekerjaan. Nilai defaultnya adalah listkosong.
timeout_seconds INT32 Batas waktu opsional diterapkan untuk setiap eksekusi pekerjaan ini. Perilaku default adalah tidak memiliki batas waktu.
idempotency_token STRING Token opsional yang dapat digunakan untuk menjamin idempotensi permintaan eksekusi pekerjaan. Jika sudah ada eksekusi dengan token yang disediakan, permintaan tidak akan membuat eksekusi baru. Namun, permintaan tersebut akan mengembalikan ID dari eksekusi yang ada. Jika eksekusi dengan token yang disediakan dihapus, kesalahan akan dikembalikan.

Jika Anda menentukan token idempotency, setelah gagal Anda dapat mencoba ulang hingga permintaan berhasil. Azure Databricks menjamin bahwa tepat satu eksekusi akan diluncurkan dengan token idempotensi tersebut.

Token ini harus memiliki maksimal 64 karakter.

Untuk informasi selengkapnya, lihat Cara memastikan idempotency untuk pekerjaan.

Struktur respons

Nama Bidang Jenis Deskripsi
run_id INT64 identifier resmi untuk pemrosesan yang baru dikirimkan.

Menjalankan list

Titik akhir Metode HTTP
2.0/jobs/runs/list GET

List berjalan dalam urutan menurun berdasarkan waktu mulai.

Catatan

Eksekusi akan dihapus secara otomatis setelah 60 hari. Jika ingin mereferensikannya di luar 60 hari, Anda harus menyimpan hasil eksekusi lama sebelum kedaluwarsa. Untuk mengekspor menggunakan UI, lihat Mengekspor hasil eksekusi pekerjaan. Untuk mengekspor menggunakan Jobs API, lihat Menjalankan ekspor.

Contoh

Minta

curl --netrc --request GET \
'https://<databricks-instance>/api/2.0/jobs/runs/list?job_id=<job-id>&active_only=<true-false>&offset=<offset>&limit=<limit>&run_type=<run-type>' \
| jq .

Atau:

curl --netrc --get \
https://<databricks-instance>/api/2.0/jobs/runs/list \
--data 'job_id=<job-id>&active_only=<true-false>&offset=<offset>&limit=<limit>&run_type=<run-type>' \
| jq .

Ganti:

  • <databricks-instance> dengan nama instans ruang kerja Azure Databricks, misalnya adb-1234567890123456.7.azuredatabricks.net.
  • <job-id> dengan ID pekerjaan, misalnya 123.
  • "<true-false> dengan true atau false".
  • <offset> dengan nilai offset.
  • <limit> dengan nilai limit.
  • <run-type> dengan nilai run_type.

Contoh ini menggunakan file .netrc dan jq.

Respons

{
  "runs": [
    {
      "job_id": 1,
      "run_id": 452,
      "number_in_job": 5,
      "state": {
        "life_cycle_state": "RUNNING",
        "state_message": "Performing action"
      },
      "task": {
        "notebook_task": {
          "notebook_path": "/Users/donald@duck.com/my-notebook"
        }
      },
      "cluster_spec": {
        "existing_cluster_id": "1201-my-cluster"
      },
      "cluster_instance": {
        "cluster_id": "1201-my-cluster",
        "spark_context_id": "1102398-spark-context-id"
      },
      "overriding_parameters": {
        "jar_params": ["param1", "param2"]
      },
      "start_time": 1457570074236,
      "end_time": 1457570075149,
      "setup_duration": 259754,
      "execution_duration": 3589020,
      "cleanup_duration": 31038,
      "run_duration": 3879812,
      "trigger": "PERIODIC"
    }
  ],
  "has_more": true
}

Struktur permintaan

Nama Bidang Jenis Deskripsi
active_only OR completed_only BOOL OR BOOL Jika active_only adalah true, hanya eksekusi aktif yang termasuk dalam hasil; jika tidak, akan mencantumkan eksekusi aktif dan selesai. Eksekusi aktif adalah eksekusi di PENDING, , RUNNINGatau TERMINATINGRunLifecycleState. Bidang ini tidak dapat berupa true ketika completed_only adalah true.

Jika completed_only adalah true, hanya eksekusi yang selesai yang disertakan dalam hasil; jika tidak, akan mencantumkan eksekusi yang aktif dan selesai. Bidang ini tidak dapat berupa true ketika active_only adalah true.
job_id INT64 Pekerjaan untuk menjalankan list. Jika dihilangkan, layanan Pekerjaan akan list berjalan dari semua pekerjaan.
offset INT32 offset dari jalur pertama untuk kembali, relatif terhadap jalur terbaru.
limit INT32 Jumlah eksekusi yang akan dikembalikan. Nilai ini harus lebih besar dari 0 dan kurang dari 1000. Nilai default adalah 20. Jika permintaan menentukan limit sebesar 0, layanan akan menggunakan limitmaksimum sebagai gantinya.
run_type STRING Jenis eksekusi yang akan dikembalikan. Untuk deskripsi jenis eksekusi, lihat Eksekusi.

Struktur respons

Nama Bidang Jenis Deskripsi
runs Array Eksekusi Urutan list pengulangan, dari yang paling baru dimulai hingga yang paling lama.
has_more BOOL Jika benar, eksekusi tambahan yang cocok dengan filter yang disediakan akan tersedia untuk dicantumkan.

Menjalankan get

Titik akhir Metode HTTP
2.0/jobs/runs/get GET

Mengambil metadata eksekusi.

Catatan

Eksekusi akan dihapus secara otomatis setelah 60 hari. Jika ingin mereferensikannya di luar 60 hari, Anda harus menyimpan hasil eksekusi lama sebelum kedaluwarsa. Untuk mengekspor menggunakan UI, lihat Mengekspor hasil eksekusi pekerjaan. Untuk mengekspor menggunakan Jobs API, lihat Menjalankan ekspor.

Contoh

Minta

curl --netrc --request GET \
'https://<databricks-instance>/api/2.0/jobs/runs/get?run_id=<run-id>' \
| jq .

Atau:

curl --netrc --get \
https://<databricks-instance>/api/2.0/jobs/runs/get \
--data run_id=<run-id> \
| jq .

Ganti:

  • <databricks-instance> dengan nama instans ruang kerja Azure Databricks, misalnya adb-1234567890123456.7.azuredatabricks.net.
  • <run-id> dengan ID eksekusi, misalnya 123.

Contoh ini menggunakan file .netrc dan jq.

Respons

{
  "job_id": 1,
  "run_id": 452,
  "number_in_job": 5,
  "state": {
    "life_cycle_state": "RUNNING",
    "state_message": "Performing action"
  },
  "task": {
    "notebook_task": {
      "notebook_path": "/Users/someone@example.com/my-notebook"
    }
  },
  "cluster_spec": {
    "existing_cluster_id": "1201-my-cluster"
  },
  "cluster_instance": {
    "cluster_id": "1201-my-cluster",
    "spark_context_id": "1102398-spark-context-id"
  },
  "overriding_parameters": {
    "jar_params": ["param1", "param2"]
  },
  "start_time": 1457570074236,
  "end_time": 1457570075149,
  "setup_duration": 259754,
  "execution_duration": 3589020,
  "cleanup_duration": 31038,
  "run_duration": 3879812,
  "trigger": "PERIODIC"
}

Struktur permintaan

Nama Bidang Jenis Deskripsi
run_id INT64 identifier kanonik dari eksekusi yang ingin diambil metadatanya. Bidang ini wajib diisi.

Struktur respons

Nama Bidang Jenis Deskripsi
job_id INT64 Kanonikal identifier dari pekerjaan yang mengandung eksekusi ini.
run_id INT64 identifier eksekusi kanonis. ID ini bersifat unik di semua pekerjaan.
number_in_job INT64 Nomor urut eksekusi ini di antara semua eksekusi pekerjaan. Nilai ini dimulai dari 1.
original_attempt_run_id INT64 Jika eksekusi ini adalah percobaan ulang dari upaya eksekusi sebelumnya, bidang ini berisi run_id dari upaya awal; jika tidak, bidang ini sama dengan run_id.
state RunState Hasil dan status siklus hidup eksekusi.
schedule CronSchedule Jadwal cron yang memicu eksekusi ini jika dipicu oleh penjadwal periodik.
task JobTask Tugas yang dilakukan oleh eksekusi, jika ada.
cluster_spec ClusterSpec Snapshot dari spesifikasi kluster pekerjaan saat eksekusi ini dibuat.
cluster_instance ClusterInstance Kluster yang digunakan untuk eksekusi ini. Jika eksekusi ditentukan untuk menggunakan kluster baru, status bidang ini akan menjadi set setelah layanan Pekerjaan telah meminta kluster untuk dijalankan.
overriding_parameters RunParameters parameters digunakan untuk pelaksanaan ini.
start_time INT64 Waktu saat eksekusi ini dimulai dalam milidetik zaman (milidetik sejak 1/1/1970 UTC). Ini mungkin bukan waktu saat tugas pekerjaan mulai dijalankan, misalnya, jika pekerjaan dijadwalkan untuk berjalan pada kluster baru, ini adalah saat panggilan pembuatan kluster dilakukan.
end_time INT64 Waktu saat eksekusi ini berakhir dengan milidetik zaman (milidetik sejak 1/1/1970 UTC). Bidang ini akan diatur menjadi set hingga 0 jika pekerjaan masih berjalan.
setup_duration INT64 Waktu dalam milidetik yang diperlukan untuk membangun kluster set. Untuk eksekusi yang berjalan pada kluster baru ini adalah waktu pembuatan kluster, untuk eksekusi yang berjalan pada kluster yang ada, waktu ini harus sangat singkat. Total durasi eksekusi adalah jumlah dari setup_duration,
execution_duration, dan cleanup_duration. Bidang setup_durationset ke 0 untuk eksekusi pekerjaan multitugas. Total durasi pekerjaan multitugas yang dijalankan adalah nilai
run_duration kebun.
execution_duration INT64 Waktu dalam milidetik yang diperlukan untuk menjalankan perintah di JAR atau notebook sampai proses selesai, gagal, waktunya habis, dibatalkan, atau mengalami kesalahan yang tidak terduga. Total durasi eksekusi adalah jumlah dari setup_duration, execution_duration, dan
cleanup_duration. Bidang execution_durationset ke 0 untuk eksekusi pekerjaan multitugas. Total durasi pekerjaan multitugas yang dijalankan adalah nilai run_duration bidang .
cleanup_duration INT64 Waktu dalam milidetik yang dibutuhkan untuk menghentikan kluster dan menghapus artefak terkait. Total durasi eksekusi adalah jumlah dari setup_duration, execution_duration, dan cleanup_duration. Bidang cleanup_durationset ke 0 untuk eksekusi pekerjaan multitugas. Total durasi pekerjaan multitugas yang dijalankan adalah nilai run_duration bidang .
run_duration INT64 Waktu dalam milidetik dibutuhkan pekerjaan berjalan dan semua perbaikannya selesai. Bidang ini hanya set untuk eksekusi pekerjaan multitugas dan bukan eksekusi tugas. Durasi eksekusi tugas adalah jumlah dari
setup_duration, execution_duration, dan cleanup_duration.
trigger TriggerType Jenis pemicu yang mengaktifkan eksekusi ini.
creator_user_name STRING Nama pengguna pembuat. Bidang ini tidak akan disertakan dalam respons jika pengguna telah dihapus
run_page_url STRING URL ke halaman detail eksekusi.

Menjalankan ekspor

Titik akhir Metode HTTP
2.0/jobs/runs/export GET

Mengekspor dan mengambil tugas eksekusi pekerjaan.

Catatan

Hanya eksekusi notebook yang dapat diekspor dalam format HTML. Ekspor dari jenis lain akan gagal.

Contoh

Minta

curl --netrc --request GET \
'https://<databricks-instance>/api/2.0/jobs/runs/export?run_id=<run-id>' \
| jq .

Atau:

curl --netrc --get \
https://<databricks-instance>/api/2.0/jobs/runs/export \
--data run_id=<run-id> \
| jq .

Ganti:

  • <databricks-instance> dengan nama instans ruang kerja Azure Databricks, misalnya adb-1234567890123456.7.azuredatabricks.net.
  • <run-id> dengan ID eksekusi, misalnya 123.

Contoh ini menggunakan file .netrc dan jq.

Respons

{
  "views": [ {
    "content": "<!DOCTYPE html><html><head>Head</head><body>Body</body></html>",
    "name": "my-notebook",
    "type": "NOTEBOOK"
  } ]
}

Untuk mengekstrak notebook HTML dari respons JSON, unduh dan jalankan skrip Python ini.

Catatan

Isi notebook dalam objek __DATABRICKS_NOTEBOOK_MODEL dikodekan.

Struktur permintaan

Nama Bidang Jenis Deskripsi
run_id INT64 identifier kanonis untuk dijalankan. Bidang ini wajib diisi.
views_to_export ViewsToExport Pilih views yang akan diekspor (CODE, DASHBOARDS, atau ALL). Default ke KODE.

Struktur respons

Nama Bidang Jenis Deskripsi
views Array ViewItem Konten yang diekspor dalam format HTML (satu konten untuk setiap item tampilan).

Pembatalan eksekusi

Titik akhir Metode HTTP
2.0/jobs/runs/cancel POST

Membatalkan pekerjaan yang dijalankan. Karena proses dibatalkan secara asinkron, proses mungkin masih berjalan saat permintaan ini selesai. Eksekusi akan segera dihentikan. Jika eksekusi sudah berada di terminal life_cycle_state, metode ini adalah no-op.

Titik akhir ini memvalidasi bahwa parameter run_id valid dan untuk parameters tidak valid mengembalikan kode status HTTP 400.

Contoh

curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/runs/cancel \
--data '{ "run_id": <run-id> }'

Ganti:

  • <databricks-instance> dengan nama instans ruang kerja Azure Databricks, misalnya adb-1234567890123456.7.azuredatabricks.net.
  • <run-id> dengan ID eksekusi, misalnya 123.

Contoh ini menggunakan file .netrc.

Struktur permintaan

Nama Bidang Jenis Deskripsi
run_id INT64 identifier standar dari proses yang akan dibatalkan. Bidang ini wajib diisi.

Pembatalan semua eksekusi

Titik akhir Metode HTTP
2.0/jobs/runs/cancel-all POST

Batalkan semua eksekusi pekerjaan yang sedang berjalan. Karena proses dibatalkan secara asinkron, ini tidak mencegah proses baru dimulai.

Titik akhir ini memvalidasi bahwa parameter job_id valid dan untuk parameters tidak valid mengembalikan kode status HTTP 400.

Contoh

curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/runs/cancel-all \
--data '{ "job_id": <job-id> }'

Ganti:

  • <databricks-instance> dengan nama instans ruang kerja Azure Databricks, misalnya adb-1234567890123456.7.azuredatabricks.net.
  • <job-id> dengan ID pekerjaan, misalnya 123.

Contoh ini menggunakan file .netrc.

Struktur permintaan

Nama Bidang Jenis Deskripsi
job_id INT64 identifier kanonis dari pekerjaan untuk membatalkan semua jalannya. Bidang ini wajib diisi.

Menjalankan output get

Titik akhir Metode HTTP
2.0/jobs/runs/get-output GET

Mengambil output dan metadata dari satu tugas yang dieksekusi. Saat tugas notebook mengembalikan nilai melalui panggilan dbutils.notebook.exit(), Anda dapat menggunakan titik akhir ini untuk mengambil nilai tersebut. Azure Databricks membatasi API ini untuk mengembalikan 5 MB pertama output. Untuk mengembalikan hasil yang lebih besar, Anda dapat menyimpan hasil pekerjaan di layanan penyimpanan cloud.

Titik akhir ini memvalidasi bahwa parameter run_id valid dan untuk parameters tidak valid mengembalikan kode status HTTP 400.

Eksekusi akan dihapus secara otomatis setelah 60 hari. Jika ingin mereferensikannya di luar 60 hari, Anda harus menyimpan hasil eksekusi lama sebelum kedaluwarsa. Untuk mengekspor menggunakan UI, lihat Mengekspor hasil eksekusi pekerjaan. Untuk mengekspor menggunakan Jobs API, lihat Menjalankan ekspor.

Contoh

Minta

curl --netrc --request GET \
'https://<databricks-instance>/api/2.0/jobs/runs/get-output?run_id=<run-id>' \
| jq .

Atau:

curl --netrc --get \
https://<databricks-instance>/api/2.0/jobs/runs/get-output \
--data run_id=<run-id> \
| jq .

Ganti:

  • <databricks-instance> dengan nama instans ruang kerja Azure Databricks, misalnya adb-1234567890123456.7.azuredatabricks.net.
  • <run-id> dengan ID eksekusi, misalnya 123.

Contoh ini menggunakan file .netrc dan jq.

Respons

{
  "metadata": {
    "job_id": 1,
    "run_id": 452,
    "number_in_job": 5,
    "state": {
      "life_cycle_state": "TERMINATED",
      "result_state": "SUCCESS",
      "state_message": ""
    },
    "task": {
      "notebook_task": {
        "notebook_path": "/Users/someone@example.com/my-notebook"
      }
    },
    "cluster_spec": {
      "existing_cluster_id": "1201-my-cluster"
    },
    "cluster_instance": {
      "cluster_id": "1201-my-cluster",
      "spark_context_id": "1102398-spark-context-id"
    },
    "overriding_parameters": {
      "jar_params": ["param1", "param2"]
    },
    "start_time": 1457570074236,
    "setup_duration": 259754,
    "execution_duration": 3589020,
    "cleanup_duration": 31038,
    "run_duration": 3879812,
    "trigger": "PERIODIC"
  },
  "notebook_output": {
    "result": "the maybe truncated string passed to dbutils.notebook.exit()"
  }
}

Struktur permintaan

Nama Bidang Jenis Deskripsi
run_id INT64 identifier kanonis untuk dijalankan. Untuk pekerjaan dengan banyak tugas, ini adalah run_id tugas yang dieksekusi. Periksa Berjalan get keluaran. Bidang ini wajib diisi.

Struktur respons

Nama Bidang Jenis Deskripsi
notebook_output OR error NotebookOutput OR STRING Jika notebook_output, output dari tugas notebook, jika tersedia. Tugas notebook yang berakhir (baik berhasil maupun dengan kegagalan) tanpa panggilan
dbutils.notebook.exit() dianggap memiliki output kosong. Bidang ini akan set tetapi nilai hasilnya akan kosong.

Jika terjadi kesalahan, pesan kesalahan akan menunjukkan mengapa output tidak tersedia. Pesan tidak terstruktur, dan format yang tepat dapat berubah.
metadata jalankan Semua detail eksekusi kecuali outputnya.

Penghapusan eksekusi

Titik akhir Metode HTTP
2.0/jobs/runs/delete POST

Menghapus eksekusi non-aktif. Mengembalikan kesalahan jika eksekusi aktif.

Contoh

curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/runs/delete \
--data '{ "run_id": <run-id> }'

Ganti:

  • <databricks-instance> dengan nama instans ruang kerja Azure Databricks, misalnya adb-1234567890123456.7.azuredatabricks.net.
  • <run-id> dengan ID eksekusi, misalnya 123.

Contoh ini menggunakan file .netrc.

Struktur permintaan

Nama Bidang Jenis Deskripsi
run_id INT64 identifier kanonik dari eksekusi yang ingin diambil metadatanya.

Struktur data

Di bagian ini:

ABFSSStorageInfo

Informasi penyimpanan Azure Data Lake Storage (ADLS).

Nama Bidang Jenis Deskripsi
destination STRING Tujuan file. Contoh: abfss://...

AutoScale

Rentang yang menentukan jumlah min dan maks pekerja kluster.

Nama Bidang Jenis Deskripsi
min_workers INT32 Jumlah minimum pekerja yang dapat diskalakan kluster ke bawah ketika kurang dimanfaatkan. Ini juga merupakan jumlah awal pekerja yang akan dimiliki kluster setelah pembuatan.
max_workers INT32 Jumlah maksimum pekerja yang dapat diskalakan kluster ke atas ketika kelebihan beban. max_workers harus benar-benar lebih besar dari min_workers.

AzureAttributes

Atribut set selama pembuatan kluster yang terkait dengan Azure.

Nama Bidang Jenis Deskripsi
first_on_demand INT32 Node first_on_demand pertama dari kluster akan ditempatkan pada instans sesuai permintaan. Nilai ini harus lebih besar dari 0, jika tidak validasi pembuatan kluster gagal. Jika nilai ini lebih besar dari atau sama dengan ukuran kluster saat ini, semua node akan ditempatkan pada instans sesuai permintaan. Jika nilai ini kurang dari ukuran kluster saat ini, node first_on_demand akan ditempatkan pada instans sesuai permintaan dan sisanya akan ditempatkan pada instans ketersediaan. Nilai ini tidak memengaruhi ukuran kluster dan tidak dapat bermutasi selama masa pakai kluster.
availability AzureAvailability Jenis ketersediaan yang digunakan untuk semua node berikutnya setelah first_on_demand.
spot_bid_max_price DOUBLE Harga tawaran tertinggi yang digunakan untuk instans spot Azure. Anda dapat membuat set ini lebih besar dari atau sama dengan harga spot saat ini. Anda juga dapat set ini ke -1 (default), yang menentukan bahwa instans tidak dapat dikeluarkan berdasarkan harga. Harga instans ini akan menjadi harga saat ini untuk instans spot atau harga untuk instans standar. Anda dapat menampilkan riwayat harga dan tingkat pembatalan di portal Azure.

AzureAvailability

Perilaku jenis ketersediaan instans Azure.

Jenis Deskripsi
SPOT_AZURE Penggunaan instans spot.
ON_DEMAND_AZURE Penggunaan instans sesuai permintaan.
SPOT_WITH_FALLBACK_AZURE Sebaiknya gunakan instans spot, tetapi kembalikan ke instans sesuai permintaan jika instans spot tidak dapat diperoleh (misalnya, jika harga spot Azure terlalu tinggi atau di luar kuota). Tidak berlaku untuk ketersediaan pool.

ClusterInstance

Pengidentifikasi untuk kluster dan konteks Spark yang digunakan oleh eksekusi. Kedua values ini secara bersama-sama mengidentifikasi konteks pelaksanaan untuk semua waktu.

Nama Bidang Jenis Deskripsi
cluster_id STRING identifier kanonis untuk kluster yang digunakan selama operasi. Bidang ini selalu tersedia untuk dijalankan pada kluster yang ada. Untuk kluster baru, eksekusi akan tersedia setelah kluster dibuat. Nilai ini dapat digunakan untuk melihat log dengan menelusurinya ke /#setting/sparkui/$cluster_id/driver-logs. Log akan terus tersedia setelah proses selesai.

Respons tidak akan menyertakan bidang ini jika identifier belum tersedia.
spark_context_id STRING identifier kanonis untuk konteks Spark yang digunakan oleh operasi. Bidang ini akan diisi setelah eksekusi dimulai. Nilai ini dapat digunakan untuk melihat Spark UI dengan menelusurinya ke /#setting/sparkui/$cluster_id/$spark_context_id. Ui Spark akan terus tersedia setelah proses selesai.

Respons tidak akan menyertakan bidang ini jika identifier belum tersedia.

ClusterLogConf

Jalur ke log kluster.

Nama Bidang Jenis Deskripsi
dbfs Lokasi DBFS dari log kluster. Tujuan harus disediakan. Misalnya: { "dbfs" : { "destination" : "dbfs:/home/cluster_log" } }

ClusterSpec

Penting

  • Saat Anda menjalankan pekerjaan di kluster pekerjaan baru, pekerjaan diperlakukan sebagai beban kerja Jobs Compute (otomatis) yang tunduk pada harga Jobs Compute.
  • Saat Anda menjalankan pekerjaan pada kluster serba guna yang ada, pekerjaan tersebut diperlakukan sebagai beban kerja All-Purpose Compute (interaktif) yang tunduk pada harga All-Purpose Compute.
Nama Bidang Jenis Deskripsi
existing_cluster_id OR new_cluster STRING OR NewCluster Jika existing_cluster_id, ID dari kluster yang ada yang akan digunakan untuk semua eksekusi pekerjaan ini. Saat menjalankan pekerjaan di kluster yang ada, Anda mungkin perlu memulai ulang kluster secara manual jika berhenti merespons. Databricks menyarankan untuk menjalankan pekerjaan pada kluster baru untuk mendapatkan keandalan yang lebih besar.

Jika new_cluster, deskripsi kluster yang akan dibuat untuk setiap eksekusi.

Jika menentukan PipelineTask, bidang ini bisa dikosongkan.
libraries Array Pustaka Pustaka opsional list yang hendak diinstal pada kluster untuk menjalankan pekerjaan. Nilai defaultnya adalah listkosong.

ClusterTag

Definisi tag kluster.

Jenis Deskripsi
STRING Kunci dari tag. Kunci harus:

- Panjangnya antara 1 dan 512 karakter
- Tidak berisi karakter apa pun <>%*&+?\\/
- Tidak dimulai dengan azure, microsoft, atau windows
STRING Nilai dari tag. Panjang nilai harus kurang dari atau sama dengan 256 karakter UTF-8.

CronSchedule

Nama Bidang Jenis Deskripsi
quartz_cron_expression STRING Ekspresi Cron menggunakan sintaks Quartz yang menjelaskan jadwal untuk suatu pekerjaan. Lihat Cron Trigger untuk mengetahui detailnya. Bidang ini wajib diisi.
timezone_id STRING ID timezone Java. Jadwal untuk pekerjaan akan ditetapkan berdasarkan timezoneini. Lihat Java TimeZone untuk detailnya. Bidang ini wajib diisi.
pause_status STRING Tunjukkan apakah jadwal ini dijeda atau tidak. Baik "DIJEDA" maupun "TIDAK DIJEDA".

DbfsStorageInfo

Informasi penyimpanan DBFS.

Nama Bidang Jenis Deskripsi
destination STRING Tujuan DBFS. Contoh: dbfs:/my/path

FileStorageInfo

Informasi penyimpanan file.

Catatan

Jenis lokasi ini hanya tersedia untuk klaster set menggunakan Databricks Container Services.

Nama Bidang Jenis Deskripsi
destination STRING Tujuan file. Contoh: file:/my/file.sh

InitScriptInfo

Jalur menuju skrip init.

Untuk petunjuk tentang penggunaan skrip init dengan Databricks Container Services, lihat Menggunakan skrip init.

Catatan

Jenis penyimpanan file (nama bidang: file) hanya tersedia untuk kluster set dengan menggunakan Databricks Container Services. Lihat FileStorageInfo.

Nama Bidang Jenis Deskripsi
workspace ATAU dbfs (tidak digunakan lagi)

ATAU abfss
WorkspaceStorageInfo

DbfsStorageInfo (tidak digunakan lagi)

ABFSSStorageInfo
Lokasi ruang kerja skrip init. Tujuan harus disediakan. Contohnya,
{ "workspace" : { "destination" : "/Users/someone@domain.com/init_script.sh" } }

(Tidak digunakan lagi) Lokasi DBFS skrip init. Tujuan harus disediakan. Contohnya,
{ "dbfs" : { "destination" : "dbfs:/home/init_script" } }

Lokasi Azure Data Lake Storage (ADLS) skrip init. Tujuan harus disediakan. Misalnya: { "abfss": { "destination" : "abfss://..." } }

Pekerjaan

Nama Bidang Jenis Deskripsi
job_id INT64 identifier kanonikal untuk pekerjaan ini.
creator_user_name STRING Nama pengguna pembuat. Bidang ini tidak akan disertakan dalam respons jika pengguna telah dihapus.
run_as STRING Nama pengguna untuk pekerjaan yang akan dijalankan. run_as didasarkan pada pengaturan tugas saat ini, dan set kepada pembuat tugas jika kontrol akses tugas dinonaktifkan, atau izin is_owner jika kontrol akses tugas diaktifkan.
settings JobSettings Pengaturan untuk pekerjaan ini dan semua eksekusinya. Pengaturan ini dapat diperbarui menggunakan metode resetJob ini.
created_time INT64 Waktu saat pekerjaan ini dibuat dalam milidetik zaman (milidetik sejak 1/1/1970 UTC).

JobEmailNotifications

Penting

Bidang on_start, on_success, dan on_failure hanya menerima karakter Latin (karakter ASCII set). Menggunakan karakter non-ASCII akan mengembalikan kesalahan. Contoh karakter non-ASCII yang tidak valid adalah bahasa Tionghoa, kanji Jepang, dan emoji.

Nama Bidang Jenis Deskripsi
on_start Array STRING list alamat email yang akan diberi tahu saat proses dimulai. Jika tidak ditentukan pada pembuatan tugas, reset, atau update, maka list kosong, dan pemberitahuan tidak dikirim.
on_success Array STRING list alamat email yang akan diberi tahu saat eksekusi berhasil diselesaikan. Eksekusi dianggap berhasil diselesaikan jika berakhir dengan TERMINATEDlife_cycle_state dan SUCCESSFULresult_state. Jika tidak ditentukan pada pembuatan tugas, reset, atau update, maka list kosong, dan pemberitahuan tidak dikirim.
on_failure Array STRING list alamat email yang akan diberi tahu saat proses gagal. Eksekusi dianggap gagal jika berakhir dengan INTERNAL_ERROR
life_cycle_state atau SKIPPED, FAILED, atau TIMED_OUT result_state. Jika ini tidak ditentukan pada pembuatan pekerjaan, resetatau update, dan list kosong, maka pemberitahuan tidak dikirim.
on_duration_warning_threshold_exceeded Array STRING list alamat email yang akan diberi tahu ketika durasi eksekusi melebihi ambang batas yang ditentukan untuk metrik RUN_DURATION_SECONDS di bidang health. Jika tidak ada aturan untuk RUN_DURATION_SECONDS metrik yang ditentukan di health bidang untuk pekerjaan, pemberitahuan tidak dikirim.
no_alert_for_skipped_runs BOOL Jika benar, jangan kirim email ke recipients yang ditentukan di on_failure jika proses dilewati.
Nama Bidang Jenis Deskripsi
on_start Array Webhook list tujuan sistem opsional yang akan diberi tahu saat sebuah proses dimulai. Jika tidak ditentukan pada pembuatan tugas, reset, atau update, maka list kosong, dan pemberitahuan tidak dikirim. Maksimal 3 tujuan dapat ditentukan untuk on_start properti .
on_success Array Webhook Destinasi sistem opsional list yang akan diberi tahu saat proses selesai dengan sukses. Eksekusi dianggap berhasil diselesaikan jika berakhir dengan TERMINATEDlife_cycle_state dan SUCCESSFULresult_state. Jika tidak ditentukan pada pembuatan tugas, reset, atau update, maka list kosong, dan pemberitahuan tidak dikirim. Maksimal 3 tujuan dapat ditentukan untuk on_success properti .
on_failure Array Webhook Tujuan sistem opsional list yang akan diberi tahu ketika proses selesai dengan kegagalan. Eksekusi dianggap gagal jika berakhir dengan INTERNAL_ERROR
life_cycle_state atau SKIPPED, FAILED, atau TIMED_OUT result_state. Jika ini tidak ditentukan pada pembuatan pekerjaan, resetatau update, dan list kosong, maka pemberitahuan tidak dikirim. Maksimal 3 tujuan dapat ditentukan untuk on_failure properti .
on_duration_warning_threshold_exceeded Array Webhook Sistem tujuan opsional list akan diberi tahu ketika durasi suatu proses melebihi ambang batas yang ditentukan untuk metrik RUN_DURATION_SECONDS di bidang health. Maksimal 3 tujuan dapat ditentukan untuk on_duration_warning_threshold_exceeded properti .

JobNotificationSettings

Nama Bidang Jenis Deskripsi
no_alert_for_skipped_runs BOOL Jika true, jangan mengirim pemberitahuan ke recipients yang ditentukan dalam on_failure jika eksekusi dilewati.
no_alert_for_canceled_runs BOOL Jika benar, jangan mengirim pemberitahuan ke recipients yang ditentukan dalam on_failure jika eksekusi dibatalkan.
alert_on_last_attempt BOOL Jika benar, jangan mengirim pemberitahuan ke recipients yang ditentukan dalam on_start untuk percobaan ulang dan jangan mengirim pemberitahuan ke recipients yang ditentukan dalam on_failure hingga eksekusi percobaan ulang terakhir.

JobSettings

Penting

  • Saat Anda menjalankan pekerjaan di kluster pekerjaan baru, pekerjaan diperlakukan sebagai beban kerja Jobs Compute (otomatis) yang tunduk pada harga Jobs Compute.
  • Saat Anda menjalankan pekerjaan pada kluster serba guna yang ada, pekerjaan tersebut diperlakukan sebagai beban kerja All-Purpose Compute (interaktif) yang tunduk pada harga All-Purpose Compute.

Pengaturan untuk pekerjaan. Pengaturan ini dapat diperbarui menggunakan metode resetJob ini.

Nama Bidang Jenis Deskripsi
existing_cluster_id OR new_cluster STRING OR NewCluster Jika existing_cluster_id, ID dari kluster yang ada yang akan digunakan untuk semua eksekusi pekerjaan ini. Saat menjalankan pekerjaan di kluster yang ada, Anda mungkin perlu memulai ulang kluster secara manual jika berhenti merespons. Databricks menyarankan untuk menjalankan pekerjaan pada kluster baru untuk mendapatkan keandalan yang lebih besar.

Jika new_cluster, deskripsi kluster yang akan dibuat untuk setiap eksekusi.

Jika menentukan PipelineTask, bidang ini bisa dikosongkan.
notebook_taskATAU ATAU spark_jar_task
spark_python_taskATAU ATAU spark_submit_task
pipeline_task OR run_job_task
NotebookTask ATAU SparkJarTask ATAU SparkPythonTask ATAU SparkSubmitTask OR PipelineTask OR RunJobTask Jika notebook_task, menunjukkan bahwa pekerjaan ini harus menjalankan notebook. Bidang ini mungkin tidak ditentukan bersamaan dengan spark_jar_task.

Jika spark_jar_task, menunjukkan bahwa pekerjaan ini harus menjalankan JAR.

Jika spark_python_task, menunjukkan bahwa pekerjaan ini harus menjalankan file Python.

Jika spark_submit_task, menunjukkan bahwa pekerjaan ini harus diluncurkan oleh skrip pengiriman spark.

Jika pipeline_task, menunjukkan bahwa pekerjaan ini harus menjalankan alur Delta Live Tables.

Jika run_job_task, menunjukkan bahwa pekerjaan ini harus menjalankan pekerjaan lain.
name STRING Nama opsional untuk pekerjaan tersebut. Nilai defaultnya adalah Untitled.
libraries Array Pustaka Pustaka opsional list yang hendak diinstal pada kluster untuk menjalankan pekerjaan. Nilai defaultnya adalah listkosong.
email_notifications JobEmailNotifications set opsional alamat email yang akan diberi tahu ketika jalannya pekerjaan ini dimulai atau selesai serta ketika pekerjaan ini dihapus. Perilaku default adalah tidak mengirim email apa pun.
webhook_notifications WebhookNotifications set opsional tujuan sistem untuk memberi tahu saat menjalankan pekerjaan ini dimulai, selesai, atau gagal.
notification_settings JobNotificationSettings Pengaturan pemberitahuan opsional yang digunakan saat mengirim pemberitahuan ke masing-masing email_notifications dan webhook_notifications untuk pekerjaan ini.
timeout_seconds INT32 Batas waktu opsional diterapkan untuk setiap eksekusi pekerjaan ini. Perilaku default adalah tidak memiliki batas waktu.
max_retries INT32 Jumlah maksimum opsional untuk mencoba kembali eksekusi yang gagal. Eksekusi dianggap tidak berhasil jika selesai dengan FAILED result_state atau
INTERNAL_ERROR
life_cycle_state. Nilai -1 berarti mencoba kembali tanpa batas waktu dan nilai 0 berarti tidak pernah mencoba kembali. Perilaku default adalah tidak pernah mencoba kembali.
min_retry_interval_millis INT32 Interval minimal opsional dalam milidetik di antara upaya. Perilaku default adalah bahwa eksekusi yang gagal segera dicoba kembali.
retry_on_timeout BOOL Kebijakan opsional untuk menentukan apakah akan mencoba kembali pekerjaan saat waktu habis. Perilaku default adalah tidak mencoba kembali pada batas waktu.
schedule CronSchedule Jadwal periodik opsional untuk pekerjaan ini. Perilaku default adalah bahwa pekerjaan hanya akan berjalan ketika dipicu dengan mengklik "Jalankan Sekarang" di UI Jobs atau mengirim permintaan API ke
runNow.
max_concurrent_runs INT32 Jumlah maksimum opsional yang diizinkan dari eksekusi pekerjaan bersamaan.

Set nilai ini jika Anda ingin dapat menjalankan beberapa pekerjaan yang sama secara bersamaan. Ini berguna, misalnya, jika Anda menjalankan pekerjaan Anda dengan jadwal yang sering dan ingin memungkinkan pelaksanaan berturut-turut saling tumpang tindih, atau jika Anda ingin memicu beberapa pelaksanaan yang berbeda berdasarkan input parameters.

Pengaturan ini hanya memengaruhi proses baru. Misalnya, misalkan konkurensi pekerjaan adalah 4 dan ada 4 eksekusi aktif bersamaan. Kemudian, mengatur konkurensi ke 3 tidak akan menghapus salah satu eksekusi aktif. Namun, sejak saat itu, eksekusi baru akan dilewati kecuali ada kurang dari 3 eksekusi aktif.

Nilai ini tidak boleh melebihi 1000. Mengatur nilai ini ke 0 menyebabkan semua eksekusi baru akan dilewati. Perilaku default adalah hanya mengizinkan 1 kali eksekusi bersamaan.
health JobsHealthRules Aturan kesehatan set opsional yang ditentukan untuk pekerjaan tersebut.

JobTask

Nama Bidang Jenis Deskripsi
notebook_taskATAU ATAU spark_jar_task
spark_python_taskATAU ATAU spark_submit_task
pipeline_task OR run_job_task
NotebookTask ATAU SparkJarTask ATAU SparkPythonTask ATAU SparkSubmitTask OR PipelineTask OR RunJobTask Jika notebook_task, menunjukkan bahwa pekerjaan ini harus menjalankan notebook. Bidang ini mungkin tidak ditentukan bersamaan dengan spark_jar_task.

Jika spark_jar_task, menunjukkan bahwa pekerjaan ini harus menjalankan JAR.

Jika spark_python_task, menunjukkan bahwa pekerjaan ini harus menjalankan file Python.

Jika spark_submit_task, menunjukkan bahwa pekerjaan ini harus diluncurkan oleh skrip pengiriman spark.

Jika pipeline_task, menunjukkan bahwa pekerjaan ini harus menjalankan alur Delta Live Tables.

Jika run_job_task, menunjukkan bahwa pekerjaan ini harus menjalankan pekerjaan lain.

JobsHealthRule

Nama Bidang Jenis Deskripsi
metric STRING Menentukan metrik kesehatan yang sedang dievaluasi untuk aturan kesehatan tertentu. values yang valid RUN_DURATION_SECONDS.
operator STRING Menentukan operator yang digunakan untuk membandingkan nilai metrik kesehatan dengan ambang yang ditentukan. values yang valid GREATER_THAN.
value INT32 Menentukan nilai ambang batas yang harus dipenuhi metrik kesehatan untuk mematuhi aturan kesehatan.

JobsHealthRules

Nama Bidang Jenis Deskripsi
rules Array JobsHealthRule set opsional dari aturan kesehatan yang dapat ditentukan untuk pekerjaan.

Pustaka

Nama Bidang Jenis Deskripsi
jarATAU ATAU egg ATAU whl
pypiATAU ATAU mavencran
STRING OR STRING OR STRING OR PythonPyPiLibrary OR MavenLibrary OR RCranLibrary Jika jar, URI JAR yang akan diinstal. URI DBFS dan ADLS (abfss) didukung. Misalnya: { "jar": "dbfs:/mnt/databricks/library.jar" } atau
{ "jar": "abfss://<container-path>/library.jar" }. Jika ADLS digunakan, pastikan bahwa kluster memiliki akses baca di pustaka.

Jika egg, URI egg yang akan diinstal. URI DBFS dan ADLS didukung. Misalnya: { "egg": "dbfs:/my/egg" } atau
{ "egg": "abfss://<container-path>/egg" }.

Jika whl, URI wheel atau zip yang wheels akan diinstal. URI DBFS dan ADLS didukung. Misalnya: { "whl": "dbfs:/my/whl" } atau
{ "whl": "abfss://<container-path>/whl" }. Jika ADLS digunakan, pastikan bahwa kluster memiliki akses baca di pustaka. wheel Juga nama file perlu menggunakan konvensi yang benar. Jika zip wheels harus diinstal, akhiran nama file harus .wheelhouse.zip.

Jika pypi, spesifikasi pustaka PyPI yang akan diinstal. Menentukan bidang repo bersifat opsional dan jika tidak ditentukan, indeks pip default digunakan. Contohnya:
{ "package": "simplejson", "repo": "https://my-repo.com" }

Jika maven, spesifikasi pustaka Maven yang akan diinstal. Contohnya:
{ "coordinates": "org.jsoup:jsoup:1.7.2" }

Jika cran, spesifikasi pustaka CRAN yang akan diinstal.

MavenLibrary

Nama Bidang Jenis Deskripsi
coordinates STRING Koordinat Maven bergaya Gradle. Misalnya: org.jsoup:jsoup:1.7.2. Bidang ini wajib diisi.
repo STRING Repositori Maven sebagai tempat untuk menginstal paket Maven. Jika dihilangkan, baik Maven Central Repository dan Spark Packages akan dicari.
exclusions Array STRING List dependensi yang dikecualikan. Misalnya: ["slf4j:slf4j", "*:hadoop-client"].

Pengecualian dependensi Maven: https://maven.apache.org/guides/introduction/introduction-to-optional-and-excludes-dependencies.html.

NewCluster

Nama Bidang Jenis Deskripsi
num_workers OR autoscale INT32 OR Skala Otomatis Jika num_workers, jumlah node pekerja yang seharusnya dimiliki oleh kluster ini. Kluster memiliki satu Spark Driver dan num_workers Executors dengan total num_workers + 1 node Spark.

Catatan: Saat membaca properti kluster, bidang ini mencerminkan jumlah pekerja yang diinginkan daripada jumlah pekerja saat ini yang sebenarnya. Contohnya, jika kluster diubah ukurannya dari 5 menjadi 10 pekerja, bidang ini akan langsung diperbarui untuk mencerminkan ukuran target 10 pekerja, sedangkan pekerja yang terdaftar di spark_info secara bertahap akan meningkat dari 5 ke 10 saat node baru disediakan.

Jika skala otomatis, parameters diperlukan untuk secara otomatis meningkatkan dan menurunkan skala kluster berdasarkan beban.
spark_version STRING Versi Spark dari kluster. versi Spark yang tersedia dapat diambil dengan menggunakan panggilan 2.0/clusters/spark-versions. Bidang ini wajib diisi.
spark_conf SparkConfPair Objek yang berisi set pasangan kunci-nilai konfigurasi Spark opsional yang dapat ditentukan oleh pengguna. Anda juga dapat meneruskan string opsi JVM tambahan ke driver dan eksekutor melalui
masing-masing spark.driver.extraJavaOptions dan spark.executor.extraJavaOptions.

Contoh konf Spark:
{"spark.speculation": true, "spark.streaming.ui.retainedBatches": 5} atau
{"spark.driver.extraJavaOptions": "-verbose:gc -XX:+PrintGCDetails"}
node_type_id STRING Bidang ini mengkodekan, melalui satu nilai, sumber daya yang tersedia untuk masing-masing node Spark di kluster ini. Misalnya, simpul Spark dapat disediakan dan dioptimalkan untuk beban kerja yang intensif memori atau komputasi. list jenis node yang tersedia dapat diambil dengan menggunakan panggilan GET 2.0/clusters/list-node-types. Bidang ini, instance_pool_id bidang, atau kebijakan kluster yang menentukan ID jenis node atau ID kumpulan instans, diperlukan.
driver_node_type_id STRING Jenis node dari driver Spark. Bidang ini bersifat opsional; jika tidak diatur, jenis node pengemudi adalah set dengan nilai yang sama seperti node_type_id yang ditentukan di atas.
custom_tags ClusterTag Objek yang berisi tag set untuk sumber daya klaster. Databricks mengetag semua sumber daya kluster (seperti VM) dengan tag ini selain dengan default_tags.

Catatan:

- Tag tidak didukung pada jenis simpul warisan seperti komputasi yang dioptimalkan dan dioptimalkan memori
- Databricks memungkinkan paling banyak 45 tag kustom
cluster_log_conf ClusterLogConf Konfigurasi untuk pengiriman log Spark ke tujuan penyimpanan jangka panjang. Hanya satu tujuan yang dapat ditentukan untuk satu kluster. Jika konf diberikan, log akan dikirimkan ke tujuan setiap 5 mins. Tujuan log driver adalah <destination>/<cluster-id>/driver, sedangkan tujuan log eksekutor adalah <destination>/<cluster-id>/executor.
init_scripts Larik dari InitScriptInfo Konfigurasi untuk penyimpanan skrip init. Skrip dapat ditentukan berapa pun jumlahnya. Skrip dijalankan secara berurutan dalam urutan yang disediakan. Jika cluster_log_conf ditentukan, log skrip init dikirimkan ke
<destination>/<cluster-id>/init_scripts.
spark_env_vars SparkEnvPair Objek yang berisi set pasangan nilai kunci variabel lingkungan opsional yang ditentukan pengguna. Pasangan nilai kunci dari formulir (X, Y) diekspor apa adanya (yaitu,
export X='Y') sembari meluncurkan driver dan pekerja.

Untuk menentukan tambahan set dari SPARK_DAEMON_JAVA_OPTS, kami sarankan untuk menambahkannya ke $SPARK_DAEMON_JAVA_OPTS seperti yang ditunjukkan dalam contoh berikut. Ini untuk memastikan agar semua variabel lingkungan terkelola databricks default juga disertakan.

Contoh variabel lingkungan Spark:
{"SPARK_WORKER_MEMORY": "28000m", "SPARK_LOCAL_DIRS": "/local_disk0"} atau
{"SPARK_DAEMON_JAVA_OPTS": "$SPARK_DAEMON_JAVA_OPTS -Dspark.shuffle.service.enabled=true"}
enable_elastic_disk BOOL Penskalaan Otomatis Penyimpanan Lokal: ketika diaktifkan, kluster ini akan secara dinamis memperoleh ruang disk tambahan ketika pekerja Spark-nya kekurangan ruang disk. Lihat Mengaktifkan penyimpanan lokal penskalaan otomatis untuk detailnya.
driver_instance_pool_id STRING ID opsional dari kumpulan instans yang akan digunakan untuk node driver. Anda juga harus menentukan instance_pool_id. Lihat API Kumpulan Instans untuk detailnya.
instance_pool_id STRING ID opsional dari pool instans yang digunakan untuk node kluster. Jika driver_instance_pool_id ada,
instance_pool_id hanya digunakan untuk node pekerja. Jika tidak, ini digunakan untuk node driver dan node pekerja. Lihat API Kumpulan Instans untuk detailnya.

NotebookOutput

Nama Bidang Jenis Deskripsi
result STRING Nilai diteruskan ke dbutils.notebook.exit(). Azure Databricks membatasi API ini untuk mengembalikan nilai 1 MB pertama. Untuk hasil yang lebih besar, pekerjaan Anda dapat menyimpan hasilnya di layanan penyimpanan cloud. Bidang ini akan absen jika dbutils.notebook.exit() tidak pernah dipanggil.
truncated BOOLEAN Apakah hasilnya dipotong atau tidak.

NotebookTask

Semua sel output tunduk pada ukuran 8 MB. Jika output sel memiliki ukuran yang lebih besar, sisa eksekusi akan dibatalkan dan eksekusi akan ditandai sebagai gagal. Dalam hal ini, beberapa output konten dari sel lain mungkin juga hilang.

Jika Anda memerlukan bantuan untuk menemukan sel yang berada di luar limit, jalankan buku catatan ini dengan kluster serba guna dan gunakan teknik penyimpanan otomatis buku catatan tersebut .

Nama Bidang Jenis Deskripsi
notebook_path STRING Jalur mutlak notebook yang akan dijalankan di ruang kerja Azure Databricks. Jalur ini harus dimulai dengan garis miring. Bidang ini wajib diisi.
revision_timestamp LONG Stempel waktu revisi notebook.
base_parameters Peta ParamPair Basis parameters yang akan digunakan untuk menjalankan setiap tugas ini. Jika eksekusi dimulai oleh panggilan ke run-now dengan parameters ditentukan, dua peta parameters akan digabungkan. Jika kunci yang sama ditentukan dalam base_parameters dan dalam run-now, nilai dari run-now akan digunakan.

Gunakan referensi nilai dinamis apa? hingga setparameters yang berisi informasi tentang pelaksanaan pekerjaan.

Jika notebook memerlukan parameter yang tidak ditentukan dalam base_parameters tugas atau penggantian run-nowparameters, maka nilai default dari notebook tersebut akan digunakan.

Ambil parameters ini di notebook menggunakan dbutils.widgets.get.

ParamPair

parameters berbasis nama untuk pekerjaan yang menjalankan tugas buku catatan.

Penting

Bidang dalam struktur data ini hanya menerima karakter Latin (karakter ASCII set). Menggunakan karakter non-ASCII akan mengembalikan kesalahan. Contoh karakter non-ASCII yang tidak valid adalah bahasa Tionghoa, kanji Jepang, dan emoji.

Jenis Deskripsi
STRING Nama parameter. Teruskan ke dbutils.widgets.get untuk mengambil nilai.
STRING Nilai parameter.

PipelineTask

Nama Bidang Jenis Deskripsi
pipeline_id STRING Nama lengkap tugas alur Delta Live Tables untuk dijalankan.

PythonPyPiLibrary

Nama Bidang Jenis Deskripsi
package STRING Nama paket PyPI untuk yang akan diinstal. Spesifikasi versi opsional yang sama juga didukung. Contoh: simplejson dan simplejson==3.8.0. Bidang ini wajib diisi.
repo STRING Paket dapat ditemukan di repositori where. Jika tidak ditentukan, indeks pip default digunakan.

RCranLibrary

Nama Bidang Jenis Deskripsi
package STRING Nama paket CRAN yang akan diinstal. Bidang ini wajib diisi.
repo STRING Paket dapat ditemukan di repositori where. Jika tidak ditentukan, repositori CRAN default digunakan.

Eksekusi

Semua informasi tentang eksekusi kecuali untuk output-nya. Output dapat diambil secara terpisah dengan metode getRunOutput.

Nama Bidang Jenis Deskripsi
job_id INT64 Kanonikal identifier dari pekerjaan yang mengandung eksekusi ini.
run_id INT64 identifier eksekusi kanonis. ID ini bersifat unik di semua pekerjaan.
creator_user_name STRING Nama pengguna pembuat. Bidang ini tidak akan disertakan dalam respons jika pengguna telah dihapus.
number_in_job INT64 Nomor urut eksekusi ini di antara semua eksekusi pekerjaan. Nilai ini dimulai dari 1.
original_attempt_run_id INT64 Jika eksekusi ini adalah percobaan ulang dari upaya eksekusi sebelumnya, bidang ini berisi run_id dari upaya awal; jika tidak, bidang ini sama dengan run_id.
state RunState Hasil dan status siklus hidup eksekusi.
schedule CronSchedule Jadwal cron yang memicu eksekusi ini jika dipicu oleh penjadwal periodik.
task JobTask Tugas yang dilakukan oleh eksekusi, jika ada.
cluster_spec ClusterSpec Snapshot dari spesifikasi kluster pekerjaan saat eksekusi ini dibuat.
cluster_instance ClusterInstance Kluster yang digunakan untuk eksekusi ini. Jika eksekusi ditentukan untuk menggunakan kluster baru, status bidang ini akan menjadi set setelah layanan Pekerjaan telah meminta kluster untuk dijalankan.
overriding_parameters RunParameters parameters digunakan untuk pelaksanaan ini.
start_time INT64 Waktu saat eksekusi ini dimulai dalam milidetik zaman (milidetik sejak 1/1/1970 UTC). Ini mungkin bukan waktu saat tugas pekerjaan mulai dijalankan, misalnya, jika pekerjaan dijadwalkan untuk berjalan pada kluster baru, ini adalah saat panggilan pembuatan kluster dilakukan.
setup_duration INT64 Waktu yang diperlukan untuk mengaktifkan kluster set dalam milidetik. Untuk eksekusi yang berjalan pada kluster baru ini adalah waktu pembuatan kluster, untuk eksekusi yang berjalan pada kluster yang ada, waktu ini harus sangat singkat.
execution_duration INT64 Waktu dalam milidetik yang diperlukan untuk menjalankan perintah di JAR atau notebook sampai proses selesai, gagal, waktunya habis, dibatalkan, atau mengalami kesalahan yang tidak terduga.
cleanup_duration INT64 Waktu dalam milidetik yang dibutuhkan untuk menghentikan kluster dan menghapus artefak terkait. Total durasi eksekusi adalah jumlah setup_duration, execution_duration, dan cleanup_duration.
end_time INT64 Waktu saat eksekusi ini berakhir dengan milidetik zaman (milidetik sejak 1/1/1970 UTC). Bidang ini akan diatur menjadi set hingga 0 jika pekerjaan masih berjalan.
trigger TriggerType Jenis pemicu yang mengaktifkan eksekusi ini.
run_name STRING Nama opsional untuk eksekusi. Nilai defaultnya adalah Untitled. Panjang maksimum yang diizinkan adalah 4096 byte dalam pengodean UTF-8.
run_page_url STRING URL ke halaman detail eksekusi.
run_type STRING Jenis eksekusi.

- JOB_RUN - Eksekusi pekerjaan normal. Eksekusi yang dibuat dengan Jalankan sekarang.
- WORKFLOW_RUN - Eksekusi alur kerja. Eksekusi yang dibuat dengan dbutils.notebook.run.
- SUBMIT_RUN - Kirimkan eksekusi. Eksekusi yang dibuat dengan Jalankan sekarang.
attempt_number INT32 Nomor urut dari upaya eksekusi ini untuk eksekusi pekerjaan yang dipicu. Upaya awal eksekusi memiliki attempt_number 0. Jika upaya eksekusi awal gagal, dan pekerjaan memiliki kerbijakan percobaan kembali (max_retries> 0), eksekusi berikutnya dibuat dengan original_attempt_run_id ID upaya asli dan peningkatan attempt_number. Eksekusi dicoba kembali hanya hingga berhasil, dan maksimum attempt_number sama dengan nilai max_retries untuk pekerjaan tersebut.

RunJobTask

Nama Bidang Jenis Deskripsi
job_id INT32 Nomor identifier yang unik dari pekerjaan yang dijalankan. Bidang ini wajib diisi.

RunLifeCycleState

Status siklus hidup dari eksekusi. Transisi status yang diizinkan adalah:

  • QUEUED ->PENDING
  • PENDING - Apa>RUNNING yang>TERMINATING kau bisa?>TERMINATED
  • PENDING ->SKIPPED
  • PENDING ->INTERNAL_ERROR
  • RUNNING ->INTERNAL_ERROR
  • TERMINATING ->INTERNAL_ERROR
Provinsi Deskripsi
QUEUED Eksekusi telah dipicu tetapi diantrekan karena mencapai salah satu batas berikut:

- Eksekusi aktif bersamaan maksimum di ruang kerja.
- Tugas bersamaan Run Job maksimum berjalan di ruang kerja.
- Eksekusi pekerjaan bersamaan maksimum.

Pekerjaan atau eksekusi harus mengaktifkan antrean sebelum dapat mencapai status ini.
PENDING Eksekusi telah dipicu. Jika eksekusi maksimum pekerjaan bersamaan yang dikonfigurasi sudah tercapai, eksekusi akan segera beralih ke status SKIPPED tanpa menyiapkan sumber daya apa pun. Jika tidak, persiapan kluster dan eksekusi sedang dalam proses.
RUNNING Tugas eksekusi ini sedang dijalankan.
TERMINATING Tugas eksekusi ini telah selesai, dan kluster dan konteks eksekusi sedang dibersihkan.
TERMINATED Tugas eksekusi ini telah selesai, dan kluster dan konteks eksekusi telah dibersihkan. Status ini adalah terminal.
SKIPPED Eksekusi ini dibatalkan karena eksekusi sebelumnya dari pekerjaan yang sama sudah aktif. Status ini adalah terminal.
INTERNAL_ERROR Status luar biasa yang menunjukkan kegagalan dalam layanan Jobs, seperti kegagalan jaringan dalam jangka waktu yang lama. Jika menjalankan pada kluster baru berakhir di status INTERNAL_ERROR, layanan Jobs menghentikan kluster sesegera mungkin. Status ini adalah terminal.

RunParameters

Parameters untuk proses ini. Hanya satu dari jar_params, python_params, atau notebook_params yang harus ditentukan dalam permintaan run-now, tergantung pada jenis tugas pekerjaan. Pekerjaan dengan tugas Spark JAR atau tugas Python mengambil listparametersberbasis posisi , dan pekerjaan dengan tugas notebook mengambil peta nilai kunci.

Nama Bidang Jenis Deskripsi
jar_params Array STRING list parameters untuk pekerjaan yang mencakup tugas Spark JAR, misalnya "jar_params": ["john doe", "35"]. parameters akan digunakan untuk memanggil fungsi utama kelas utama yang ditentukan dalam tugas Spark JAR. Jika tidak ditentukan pada run-now, akan kembali ke listyang kosong. jar_params tidak dapat ditentukan bersama dengan notebook_params. Representasi JSON dari bidang ini (yaitu {"jar_params":["john doe","35"]}) tidak dapat melebihi 10.000 byte.

Gunakan referensi nilai dinamis apa? hingga setparameters yang berisi informasi tentang pelaksanaan pekerjaan.
notebook_params Peta ParamPair Peta dari kunci ke values untuk pekerjaan dengan tugas buku catatan, misalnya
"notebook_params": {"name": "john doe", "age": "35"}. Peta diteruskan ke notebook dan dapat diakses melalui dbutils.widgets.get fungsi.

Jika tidak ditentukan pada run-now, pelaksanaan yang dipicu menggunakan dasar tugas parameters.

notebook_params tidak dapat ditentukan bersamaan dengan jar_params.

Gunakan referensi nilai dinamis apa? hingga setparameters yang berisi informasi tentang pelaksanaan pekerjaan.

Representasi JSON dari bidang ini (yaitu
{"notebook_params":{"name":"john doe","age":"35"}}) tidak boleh melebihi 10.000 byte.
python_params Array STRING Sebuah list dari parameters untuk pekerjaan dengan tugas-tugas Python, misalnya "python_params": ["john doe", "35"]. parameters diteruskan ke file Python sebagai baris perintah parameters. Jika ditentukan pada run-now, itu akan menimpa parameters yang ditentukan dalam pengaturan tugas. Representasi JSON dari bidang ini (yaitu {"python_params":["john doe","35"]}) tidak dapat melebihi 10.000 byte.

Gunakan referensi nilai dinamis apa? hingga setparameters yang berisi informasi tentang pelaksanaan pekerjaan.

Ini parameters hanya menerima karakter Latin (karakter ASCII set). Menggunakan karakter non-ASCII akan mengembalikan kesalahan. Contoh karakter non-ASCII yang tidak valid adalah bahasa Tionghoa, kanji Jepang, dan emoji.
spark_submit_params Array STRING list parameters untuk pekerjaan dengan tugas pengiriman Spark, contohnya
"spark_submit_params": ["--class", "org.apache.spark.examples.SparkPi"]. parameters diteruskan ke skrip spark-submit sebagai baris perintah parameters. Jika ditentukan pada run-now, itu akan menimpa parameters yang ditentukan dalam pengaturan tugas. Representasi JSON dari bidang ini (yaitu {"python_params":["john doe","35"]}) tidak dapat melebihi 10.000 byte.

Gunakan referensi nilai dinamis apa? hingga setparameters yang berisi informasi tentang pelaksanaan pekerjaan.

Ini parameters hanya menerima karakter Latin (karakter ASCII set). Menggunakan karakter non-ASCII akan mengembalikan kesalahan. Contoh karakter non-ASCII yang tidak valid adalah bahasa Tionghoa, kanji Jepang, dan emoji.

RunResultState

Status hasil dari eksekusi.

  • Jika life_cycle_state = TERMINATED: jika eksekusi memiliki tugas, hasilnya dijamin tersedia, dan menunjukkan hasil tugas.
  • Jika life_cycle_state = PENDING, RUNNING, atau SKIPPED, status hasil tidak tersedia.
  • Jika life_cycle_state = TERMINATING atau lifecyclestate = INTERNAL_ERROR: status hasil tersedia jika eksekusi memiliki tugas dan berhasil memulainya.

Setelah tersedia, status hasil tidak pernah berubah.

Provinsi Deskripsi
SUCCESS Tugas berhasil diselesaikan.
FAILED Tugas selesai dengan kesalahan.
TIMEDOUT Eksekusi dihentikan setelah mencapai batas waktu.
CANCELED Eksekusi dibatalkan atas permintaan pengguna.

RunState

Nama Bidang Jenis Deskripsi
life_cycle_state RunLifeCycleState Deskripsi lokasi eksekusi saat ini dalam siklus hidup eksekusi. Bidang ini selalu tersedia dalam respons.
result_state RunResultState Status hasil dari eksekusi. Jika tidak tersedia, respons tidak akan menyertakan bidang ini. Lihat RunResultState untuk detail tentang ketersediaan result_state.
user_cancelled_or_timedout BOOLEAN Apakah eksekusi dibatalkan secara manual oleh pengguna atau oleh penjadwal karena eksekusi habis waktunya.
state_message STRING Pesan deskriptif untuk status saat ini. Bidang ini tidak terstruktur, dan format pastinya dapat berubah.

SparkConfPair

Pasangan kunci-nilai konfigurasi Spark.

Jenis Deskripsi
STRING Nama properti konfigurasi.
STRING Nilai properti konfigurasi.

SparkEnvPair

Pasangan kunci-nilai variabel lingkungan Spark.

Penting

Saat menentukan variabel lingkungan dalam kluster pekerjaan, bidang dalam struktur data ini hanya menerima karakter Latin (karakter ASCII set). Menggunakan karakter non-ASCII akan mengembalikan kesalahan. Contoh karakter non-ASCII yang tidak valid adalah bahasa Tionghoa, kanji Jepang, dan emoji.

Jenis Deskripsi
STRING Nama variabel lingkungan.
STRING Nilai variabel lingkungan.

SparkJarTask

Nama Bidang Jenis Deskripsi
jar_uri STRING Tidak digunakan lagi sejak 04/2016. Berikan jar melalui bidang libraries sebagai gantinya. Sebagai contoh, lihat Buat.
main_class_name STRING Nama lengkap kelas yang berisi metode utama yang akan dijalankan. Kelas ini harus terkandung dalam JAR yang disediakan sebagai pustaka.

Kode harus menggunakan SparkContext.getOrCreate untuk mendapatkan konteks Spark; jika tidak, pekerjaan akan gagal.
parameters Array STRING Parameters diteruskan ke metode utama.

Gunakan referensi nilai dinamis apa? hingga setparameters yang berisi informasi tentang pelaksanaan pekerjaan.

SparkPythonTask

Nama Bidang Jenis Deskripsi
python_file STRING URI file Python yang akan dieksekusi. Hanya jalur DBFS yang didukung. Bidang ini wajib diisi.
parameters Array STRING Baris perintah parameters diteruskan ke file Python.

Gunakan referensi nilai dinamis apa? hingga setparameters yang berisi informasi tentang pelaksanaan pekerjaan.

SparkSubmitTask

Penting

  • Anda dapat memanggil tugas pengiriman Spark hanya pada kluster baru.
  • Dalam spesifikasi new_cluster, libraries dan spark_conf tidak didukung. Sebagai gantinya, gunakan --jars dan --py-files untuk menambahkan pustaka Java dan Python dan --conf untuk set konfigurasi Spark.
  • master, deploy-mode, dan executor-cores secara otomatis dikonfigurasi oleh Azure Databricks; Anda tidak dapat menentukannya di parameters.
  • Secara default, pekerjaan pengiriman Spark menggunakan semua memori yang tersedia (tidak termasuk memori cadangan untuk layanan Azure Databricks). Anda dapat set--driver-memory, dan --executor-memory ke nilai yang lebih kecil untuk menyisakan ruang untuk penggunaan off-heap.
  • Argumen --jars, --py-files, --files mendukung jalur DBFS.

Misalnya, dengan asumsi JAR diunggah ke DBFS, Anda dapat menjalankan SparkPi dengan mengatur parametersberikut.

{
  "parameters": [
    "--class",
    "org.apache.spark.examples.SparkPi",
    "dbfs:/path/to/examples.jar",
    "10"
  ]
}
Nama Bidang Jenis Deskripsi
parameters Array STRING Baris perintah parameters diteruskan ke pengiriman "spark submit".

Gunakan referensi nilai dinamis apa? hingga setparameters yang berisi informasi tentang pelaksanaan pekerjaan.

TriggerType

Ini adalah jenis pemicu yang dapat mengaktifkan eksekusi.

Jenis Deskripsi
PERIODIC Jadwal yang secara berkala memicu eksekusi, seperti penjadwal cron.
ONE_TIME Pemicu satu kali yang mengaktifkan eksekusi tunggal. Hal ini terjadi saat Anda memicu satu eksekusi sesuai permintaan melalui UI atau API.
RETRY Menunjukkan eksekusi yang dipicu sebagai coba lagi dari eksekusi yang sebelumnya gagal. Ini terjadi ketika Anda meminta untuk menjalankan kembali pekerjaan jika terjadi kegagalan.

ViewItem

Konten yang diekspor dalam format HTML. Misalnya, jika tampilan yang akan diekspor adalah dasbor, satu string HTML dikembalikan untuk setiap dasbor.

Nama Bidang Jenis Deskripsi
content STRING Konten tampilan.
name STRING Nama item tampilan. Dalam kasus tampilan kode, nama notebook. Dalam kasus tampilan dasbor, nama dasbor.
type ViewType Jenis item tampilan.

ViewType

Jenis Deskripsi
NOTEBOOK Item tampilan notebook.
DASHBOARD Item tampilan dasbor.

ViewsToExport

Lihat untuk mengekspor: baik kode, semua dasbor, maupun semua.

Jenis Deskripsi
CODE Tampilan kode notebook.
DASHBOARDS Dasbor views dari buku catatan.
ALL Semua buku catatan views.

Webhook

Nama Bidang Jenis Deskripsi
id STRING Identifier mereferensikan tujuan pemberitahuan sistem. Bidang ini wajib diisi.

WebhookNotifications

Nama Bidang Jenis Deskripsi
on_start Array Webhook list tujuan sistem opsional yang akan diberi tahu saat sebuah proses dimulai. Jika tidak ditentukan pada pembuatan tugas, reset, atau update, maka list kosong, dan pemberitahuan tidak dikirim. Maksimal 3 tujuan dapat ditentukan untuk on_start properti .
on_success Array Webhook Destinasi sistem opsional list yang akan diberi tahu saat proses selesai dengan sukses. Eksekusi dianggap berhasil diselesaikan jika berakhir dengan TERMINATEDlife_cycle_state dan SUCCESSFULresult_state. Jika tidak ditentukan pada pembuatan tugas, reset, atau update, maka list kosong, dan pemberitahuan tidak dikirim. Maksimal 3 tujuan dapat ditentukan untuk on_success properti .
on_failure Array Webhook Tujuan sistem opsional list yang akan diberi tahu ketika proses selesai dengan kegagalan. Eksekusi dianggap gagal jika berakhir dengan INTERNAL_ERROR
life_cycle_state SKIPPEDatau , FAILED, atau TIMED_OUTresult_state. Jika ini tidak ditentukan pada pembuatan pekerjaan, resetatau update, dan list kosong, maka pemberitahuan tidak dikirim. Maksimal 3 tujuan dapat ditentukan untuk on_failure properti .
on_duration_warning_threshold_exceeded Array Webhook Sistem tujuan opsional list akan diberi tahu ketika durasi suatu proses melebihi ambang batas yang ditentukan untuk metrik RUN_DURATION_SECONDS di bidang health. Maksimal 3 tujuan dapat ditentukan untuk on_duration_warning_threshold_exceeded properti .

WorkspaceStorageInfo

Informasi penyimpanan ruang kerja.

Nama Bidang Jenis Deskripsi
destination STRING Tujuan file. Contoh: /Users/someone@domain.com/init_script.sh