Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Halaman ini menyediakan informasi tentang cara menentukan tugas pekerjaan di Bundel Otomatisasi Deklaratif. Untuk informasi tentang tugas pekerjaan, lihat Mengonfigurasi dan mengedit tugas di Pekerjaan Lakeflow.
Penting
Bidang pekerjaan git_source dan bidang tugas source yang disetel menjadi GIT tidak direkomendasikan untuk bundel, karena jalur relatif lokal mungkin tidak menunjuk ke konten yang sama di repositori Git. Bundel mengharapkan bahwa tugas yang disebarkan memiliki file yang sama dengan salinan lokal dari asal penyebarannya.
Sebagai gantinya, kloning repositori secara lokal dan siapkan proyek bundel Anda dalam repositori ini, sehingga sumber tugas berada di dalam ruang kerja.
Mengonfigurasi tugas
Tentukan tugas untuk pekerjaan yang berada dalam satu bundel di kunci tasks untuk definisi pekerjaan. Contoh konfigurasi tugas untuk jenis tugas yang tersedia ada di bagian Pengaturan tugas . Untuk informasi tentang menentukan tugas dalam satu paket, lihat tugas.
Tips
Untuk menghasilkan konfigurasi sumber daya dengan cepat untuk pekerjaan yang ada menggunakan Databricks CLI, Anda dapat menggunakan perintah bundle generate job. Lihat perintah bundel.
Untuk mengatur nilai tugas, sebagian besar jenis tugas pekerjaan memiliki parameter khusus tugas, tetapi Anda juga dapat menentukan parameter pekerjaan yang diteruskan ke tugas. Referensi nilai dinamis didukung untuk parameter pekerjaan, yang memungkinkan pengoperan nilai yang khusus untuk menjalankan pekerjaan di antara tugas. Untuk informasi lengkap tentang cara meneruskan nilai tugas menurut jenis tugas, lihat Detail menurut jenis tugas.
Anda juga dapat mengganti pengaturan tugas pekerjaan secara umum dengan pengaturan untuk ruang kerja target. Lihat Mengambil alih dengan pengaturan target.
Contoh konfigurasi berikut menentukan pekerjaan dengan dua tugas buku catatan, dan meneruskan nilai tugas dari tugas pertama ke tugas kedua.
resources:
jobs:
pass_task_values_job:
name: pass_task_values_job
tasks:
# Output task
- task_key: output_value
notebook_task:
notebook_path: ../src/output_notebook.ipynb
# Input task
- task_key: input_value
depends_on:
- task_key: output_value
notebook_task:
notebook_path: ../src/input_notebook.ipynb
base_parameters:
received_message: '{{tasks.output_value.values.message}}'
output_notebook.ipynb berisi kode berikut, yang menetapkan nilai tugas untuk message kunci:
# Databricks notebook source
# This first task sets a simple output value.
message = "Hello from the first task"
# Set the message to be used by other tasks
dbutils.jobs.taskValues.set(key="message", value=message)
print(f"Produced message: {message}")
Objek input_notebook.ipynb mengambil nilai dari parameter received_message, yang diatur dalam konfigurasi untuk tugas:
# This notebook receives the message as a parameter.
dbutils.widgets.text("received_message", "")
received_message = dbutils.widgets.get("received_message")
print(f"Received message: {received_message}")
Pengaturan tugas
Bagian ini berisi pengaturan dan contoh untuk setiap jenis tugas pekerjaan.
Tugas peringatan (v2)
Tugas peringatan (v2) mengevaluasi peringatan Databricks dan mengirim pemberitahuan kepada pelanggan terdaftar saat alert_task bidang ada. Untuk informasi selengkapnya tentang tugas pemberitahuan, lihat Tugas pemberitahuan SQL untuk pekerjaan.
Kunci berikut tersedia untuk tugas notifikasi (v2). Untuk definisi objek REST API yang sesuai, lihat alert_task.
Ditambahkan dalam Databricks CLI versi 0.299.0
| Key | Tipe | Description |
|---|---|---|
alert_id |
String | ID peringatan yang akan dievaluasi. Hanya satu dari alert_id atau workspace_path yang dapat ditentukan untuk mengidentifikasi pemberitahuan. |
subscribers |
Urutan | Daftar pelanggan untuk menerima notifikasi hasil evaluasi peringatan setelah tugas peringatan selesai. Jumlah langganan dibatasi hingga 100. Setiap pelanggan adalah objek dengan salah satu dari: destination_id (String) untuk tujuan pemberitahuan, atau user_name (String) untuk alamat email pengguna ruang kerja. |
warehouse_id |
String | Pengaturan gudang yang digunakan oleh tugas peringatan. |
workspace_path |
String | Jalur ke file pemberitahuan di ruang kerja. Jalur harus dimulai dengan "/Ruang Kerja" dan harus berupa jalur yang dinormalisasi. Hanya satu dari alert_id atau workspace_path yang dapat ditentukan untuk mengidentifikasi pemberitahuan. |
Examples
Contoh berikut menambahkan tugas notifikasi ke pekerjaan:
resources:
jobs:
my_job:
name: my_job
tasks:
- task_key: alert_task
alert_task:
workspace_path: ./my_alert.dbalert.json
warehouse_id: 1a111111a1111aa1
Membersihkan tugas buku catatan kamar
Tugas buku catatan ruang bersih menjalankan buku catatan tersebut ketika bidang clean_rooms_notebook_task ada. Untuk informasi tentang kamar bersih, lihat Apa itu Azure Databricks Clean Rooms?.
Kunci berikut tersedia untuk tugas buku catatan ruang bersih. Untuk definisi objek REST API yang sesuai, lihat clean_rooms_notebook_task.
Ditambahkan dalam Databricks CLI versi 0.237.0
| Key | Tipe | Description |
|---|---|---|
clean_room_name |
String | Dibutuhkan. Ruang bersih tempat buku catatan berada. |
etag |
String | Checksum untuk memvalidasi kesegaran sumber daya notebook. Ini dapat diambil dengan memanggil aset kamar bersih mendapatkan operasi. |
object |
Map | Parameter dasar yang akan digunakan untuk pekerjaan buku catatan cleanroom. |
notebook_name |
String | Dibutuhkan. Nama notebook yang sedang dijalankan. |
Tugas kondisi
condition_task memungkinkan Anda menambahkan tugas dengan logika kondisi if/else ke proyek Anda. Tugas mengevaluasi kondisi yang dapat digunakan untuk mengontrol eksekusi tugas lain. Tugas kondisi tidak memerlukan kluster untuk dijalankan dan tidak mendukung percobaan ulang atau pemberitahuan. Untuk informasi selengkapnya tentang tugas kondisi if/else, lihat Menambahkan logika pencabangan ke pekerjaan dengan tugas If/else.
Kunci berikut tersedia untuk tugas berbasis kondisi. Untuk definisi objek REST API yang sesuai, lihat condition_task.
Ditambahkan dalam Databricks CLI versi 0.229.0 atau yang lebih baru
| Key | Tipe | Description |
|---|---|---|
left |
String | Dibutuhkan. Operan kiri dalam konteks kondisi. Dapat berupa nilai string atau status pekerjaan atau referensi nilai dinamis seperti {{job.repair_count}} atau {{tasks.task_key.values.output}}. |
op |
String | Dibutuhkan. Operator yang digunakan untuk perbandingan. Nilai yang valid adalah: EQUAL_TO, , NOT_EQUALGREATER_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN, LESS_THAN_OR_EQUAL. |
right |
String | Dibutuhkan. Operan kanan kondisi. Dapat berupa nilai string atau status pekerjaan atau referensi nilai dinamis. |
Examples
Contoh berikut berisi tugas bersyarat dan tugas buku catatan, di mana tugas buku catatan hanya dijalankan jika jumlah perbaikan tugas kurang dari 5.
resources:
jobs:
my-job:
name: my-job
tasks:
- task_key: condition_task
condition_task:
op: LESS_THAN
left: '{{job.repair_count}}'
right: '5'
- task_key: notebook_task
depends_on:
- task_key: condition_task
outcome: 'true'
notebook_task:
notebook_path: ../src/notebook.ipynb
Tugas Dashboard
Anda menggunakan tugas ini untuk me-refresh dasbor dan mengirim rekam jepret ke pelanggan. Untuk informasi selengkapnya tentang dasbor dalam bundel, lihat dasbor.
Kunci berikut tersedia untuk tugas dasbor. Untuk definisi objek REST API yang sesuai, lihat dashboard_task.
Ditambahkan dalam Databricks CLI versi 0.248.0
| Key | Tipe | Description |
|---|---|---|
dashboard_id |
String | Dibutuhkan. Pengidentifikasi dasbor yang akan diperbarui. Dasbor harus sudah ada. |
subscription |
Map | Konfigurasi langganan untuk mengirim rekam jepret dasbor. Setiap objek langganan dapat menentukan pengaturan tujuan tempat mengirim rekam jepret setelah refresh dasbor selesai. Lihat langganan. |
warehouse_id |
String | ID gudang untuk menjalankan dasbor sesuai jadwal. Jika tidak ditentukan, gudang bawaan dari dasbor akan digunakan. |
Examples
Contoh berikut menambahkan tugas dashboard ke sebuah job. Saat pekerjaan dijalankan, dasbor dengan ID yang ditentukan di-refresh.
resources:
jobs:
my-dashboard-job:
name: my-dashboard-job
tasks:
- task_key: my-dashboard-task
dashboard_task:
dashboard_id: 11111111-1111-1111-1111-111111111111
tugas dbt
Anda menggunakan tugas ini untuk menjalankan satu atau beberapa perintah dbt. Untuk informasi selengkapnya tentang dbt, lihat Menyambungkan ke dbt Cloud.
Kunci berikut tersedia untuk tugas dbt. Untuk definisi objek REST API yang sesuai, lihat dbt_task.
Ditambahkan dalam Databricks CLI versi 0.229.0 atau yang lebih baru
| Key | Tipe | Description |
|---|---|---|
catalog |
String | Nama katalog yang akan digunakan. Nilai katalog hanya dapat ditentukan jika warehouse_id ditentukan. Bidang ini memerlukan dbt-databricks >= 1.1.1. |
commands |
Urutan | Dibutuhkan. Daftar perintah dbt untuk dijalankan secara berurutan. Setiap perintah harus berupa perintah dbt lengkap (misalnya, dbt deps, , dbt seeddbt run, dbt test). Maksimum hingga 10 perintah dapat disediakan. |
profiles_directory |
String | Jalur ke direktori yang berisi file profiles.yml dbt. Hanya dapat ditentukan jika warehouse_id tidak ditentukan. Jika tidak ada warehouse_id yang dispesifikasikan dan folder ini tidak diatur, maka direktori akar akan digunakan. |
project_directory |
String | Jalur ke direktori yang berisi proyek dbt. Jika tidak ditentukan, secara otomatis ke direktori induk repositori atau ruang kerja. Untuk proyek yang disimpan di ruang kerja Databricks, jalur harus absolut dan dimulai dengan tanda garis miring. Untuk proyek di repositori jarak jauh, jalur harus relatif. |
schema |
String | Skema yang akan menjadi tujuan penulisan. Parameter ini hanya digunakan ketika warehouse_id juga disediakan. Jika tidak disediakan, skema default digunakan. |
source |
String | Jenis lokasi proyek dbt. Nilai yang berlaku adalah WORKSPACE atau GIT. Ketika disetel ke WORKSPACE, proyek akan diambil dari ruang kerja Databricks. Ketika diatur ke GIT, proyek akan diambil dari repositori Git yang ditentukan dalam git_source. Jika kosong, tugas akan menggunakan GIT jika git_source ditentukan dan WORKSPACE sebaliknya. |
warehouse_id |
String | ID gudang SQL yang digunakan untuk menjalankan perintah dbt. Jika tidak ditentukan, gudang default akan digunakan. |
Examples
Contoh berikut menambahkan tugas dbt ke proyek. Tugas dbt ini menggunakan gudang SQL yang ditentukan untuk menjalankan perintah dbt yang ditentukan.
Untuk mendapatkan ID gudang SQL, buka halaman pengaturan gudang SQL, lalu salin ID yang ditemukan di tanda kurung setelah nama gudang di bidang Nama pada tab Gambaran Umum .
Tips
Bundel Otomatisasi Deklaratif mengandung templat proyek dbt-sql yang menentukan pekerjaan dengan tugas dbt, serta profil dbt untuk pekerjaan dbt yang disebarkan. Untuk informasi tentang templat Bundel Otomatisasi Deklaratif, lihat Templat bundel default.
resources:
jobs:
my-dbt-job:
name: my-dbt-job
tasks:
- task_key: my-dbt-task
dbt_task:
commands:
- 'dbt deps'
- 'dbt seed'
- 'dbt run'
project_directory: /Users/someone@example.com/Testing
warehouse_id: 1a111111a1111aa1
libraries:
- pypi:
package: 'dbt-databricks>=1.0.0,<2.0.0'
Untuk setiap tugas
for_each_task memungkinkan Anda menambahkan tugas dengan loop foreach ke pekerjaan Anda. Tugas menjalankan tugas bertumpuk untuk setiap input yang diberikan. Untuk informasi selengkapnya tentang for_each_task, lihat Menggunakan tugas For each untuk menjalankan tugas lain dalam perulangan.
Kunci berikut tersedia untuk for_each_task. Untuk definisi objek REST API yang sesuai, lihat for_each_task.
Ditambahkan dalam Databricks CLI versi 0.229.0 atau yang lebih baru
| Key | Tipe | Description |
|---|---|---|
concurrency |
Integer | Jumlah maksimum perulangan tugas yang dapat berjalan bersamaan. Jika tidak ditentukan, semua iterasi dapat berjalan secara paralel tunduk pada batas kluster dan ruang kerja. |
inputs |
String | Dibutuhkan. Data masukan untuk perulangan. Ini bisa berupa string JSON atau referensi ke parameter array. Setiap elemen dalam array akan diteruskan ke satu iterasi tugas berlapis. |
task |
Map | Dibutuhkan. Definisi tugas berlapis yang akan dijalankan untuk setiap input. Objek ini berisi spesifikasi tugas lengkap termasuk task_key dan jenis tugas (misalnya, notebook_task, python_wheel_task, dll.). |
Examples
Contoh berikut menambahkan for_each_task ke tugas, yang mana ia mengulangi nilai-nilai dari tugas lain dan memprosesnya.
resources:
jobs:
my_job:
name: my_job
tasks:
- task_key: generate_countries_list
notebook_task:
notebook_path: ../src/generate_countries_list.ipnyb
- task_key: process_countries
depends_on:
- task_key: generate_countries_list
for_each_task:
inputs: '{{tasks.generate_countries_list.values.countries}}'
task:
task_key: process_countries_iteration
notebook_task:
notebook_path: ../src/process_countries_notebook.ipnyb
Tugas JAR
Anda menggunakan tugas ini untuk menjalankan file JAR. Anda dapat mereferensikan pustaka JAR lokal atau yang ada di ruang kerja, volume Katalog Unity, atau lokasi penyimpanan cloud eksternal. Lihat file JAR (Java atau Scala).
Untuk detail tentang cara mengkompilasi dan menyebarkan file JAR Scala pada kluster yang mendukung Katalog Unity dalam mode akses standar, lihat Tutorial: Menjalankan kode Scala pada komputasi tanpa server.
Kunci berikut tersedia untuk tugas JAR. Untuk definisi objek REST API yang sesuai, lihat jar_task.
Ditambahkan dalam Databricks CLI versi 0.229.0 atau yang lebih baru
| Key | Tipe | Description |
|---|---|---|
jar_uri |
String | Deprecated. URI JAR yang akan dijalankan. Jalur penyimpanan DBFS dan cloud didukung. Bidang ini tidak digunakan lagi dan tidak boleh digunakan. Sebagai gantinya, gunakan bidang libraries untuk menentukan dependensi JAR. |
main_class_name |
String | Dibutuhkan. Nama lengkap kelas yang berisi metode utama yang akan dijalankan. Kelas ini harus terkandung dalam file JAR yang disediakan sebagai pustaka. Kode harus digunakan SparkContext.getOrCreate untuk mendapatkan konteks Spark; jika tidak, eksekusi pekerjaan gagal. |
parameters |
Urutan | Parameter diteruskan ke metode utama. Gunakan variabel parameter tugas untuk mengatur parameter yang berisi informasi tentang eksekusi pekerjaan. |
Examples
Contoh berikut menambahkan tugas JAR ke pekerjaan. Jalur untuk JAR menuju lokasi volume.
resources:
jobs:
my-jar-job:
name: my-jar-job
tasks:
- task_key: my-jar-task
spark_jar_task:
main_class_name: org.example.com.Main
libraries:
- jar: /Volumes/main/default/my-volume/my-project-0.1.0-SNAPSHOT.jar
Tugas buku catatan
Anda menggunakan tugas ini untuk menjalankan buku catatan. Lihat Tugas Notebook untuk pekerjaan.
Kunci berikut ini tersedia untuk tugas buku catatan. Untuk definisi objek REST API yang sesuai, lihat notebook_task.
Ditambahkan dalam Databricks CLI versi 0.229.0 atau yang lebih baru
| Key | Tipe | Description |
|---|---|---|
base_parameters |
Map | Parameter dasar yang digunakan untuk setiap eksekusi pekerjaan ini.
|
notebook_path |
String | Dibutuhkan. Jalur buku catatan di ruang kerja Databricks atau repositori jarak jauh, misalnya /Users/user.name@databricks.com/notebook_to_run. Untuk notebook yang disimpan di ruang kerja Databricks, jalur harus absolut dan dimulai dengan garis miring. Untuk notebook yang disimpan di repositori jarak jauh, jalur harus relatif. |
source |
String | Jenis lokasi buku catatan. Nilai yang berlaku adalah WORKSPACE atau GIT. Jika diatur ke WORKSPACE, notebook akan diambil dari ruang kerja Databricks lokal. Ketika diatur ke GIT, notebook akan diambil dari repositori Git yang ditentukan dalam git_source. Jika nilai kosong, tugas akan menggunakan GIT jika git_source ditentukan dan akan menggunakan WORKSPACE jika tidak. |
warehouse_id |
String | ID gudang tempat menjalankan notebook. Gudang SQL klasik tidak didukung. Gunakan gudang SQL tanpa server atau pro sebagai gantinya. Perhatikan bahwa gudang SQL hanya mendukung sel SQL. Jika buku catatan berisi sel non-SQL, eksekusi akan gagal, jadi jika Anda perlu menggunakan Python (atau lainnya) dalam sel, gunakan tanpa server. |
Examples
Contoh berikut menambahkan tugas buku catatan ke pekerjaan dan mengatur parameter pekerjaan bernama my_job_run_id. Jalur untuk notebook yang akan disebarkan relatif terhadap berkas konfigurasi di mana tugas ini dideklarasikan. Proses mengambil buku catatan dari lokasi tempat penyebarannya di dalam ruang kerja Azure Databricks.
resources:
jobs:
my-notebook-job:
name: my-notebook-job
tasks:
- task_key: my-notebook-task
notebook_task:
notebook_path: ./my-notebook.ipynb
parameters:
- name: my_job_run_id
default: '{{job.run_id}}'
Tugas alur
Anda menggunakan tugas ini untuk menjalankan alur. Lihat Alur Deklaratif Lakeflow Spark.
Kunci berikut tersedia untuk tugas pipeline. Untuk definisi objek REST API yang sesuai, lihat pipeline_task.
Ditambahkan dalam Databricks CLI versi 0.229.0 atau yang lebih baru
| Key | Tipe | Description |
|---|---|---|
full_refresh |
Boolean | Apabila bernilai benar, penyegaran penuh pada jalur pemrosesan akan dipicu, yang akan menghitung ulang semua dataset dalam jalur pemrosesan. Jika salah atau dihilangkan, hanya data tambahan yang diproses. Untuk detailnya, lihat Semantik penyegaran pipeline. |
pipeline_id |
String | Dibutuhkan. ID alur yang akan dijalankan. Alur harus sudah ada. |
Examples
Contoh berikut menambahkan tugas alur ke pekerjaan. Tugas ini menjalankan jalur pemrosesan yang ditentukan.
Tips
Anda bisa mendapatkan ID alur dengan membuka alur di ruang kerja dan menyalin nilai ID Alur pada tab Detail alur dari halaman pengaturan alur.
resources:
jobs:
my-pipeline-job:
name: my-pipeline-job
tasks:
- task_key: my-pipeline-task
pipeline_task:
pipeline_id: 11111111-1111-1111-1111-111111111111
Tugas Power BI
Penting
Tipe tugas Power BI ada di Pratinjau Umum.
Gunakan tugas ini untuk memicu refresh model semantik Power BI (sebelumnya dikenal sebagai himpunan data).
Kunci berikut ini tersedia untuk tugas Power BI. Untuk definisi objek REST API yang sesuai, lihat power_bi_task.
Ditambahkan dalam Databricks CLI versi 0.248.0
| Key | Tipe | Description |
|---|---|---|
connection_resource_name |
String | Dibutuhkan. Nama koneksi Unity Catalog untuk mengautentikasi dari Databricks ke Power BI. |
power_bi_model |
String | Dibutuhkan. Nama model semantik Power BI (himpunan data) yang akan diperbarui. |
refresh_after_update |
Boolean | Apakah akan me-refresh model semantik Power BI setelah pembaruan selesai. Secara default diatur ke false. |
tables |
Urutan | Daftar tabel (masing-masing sebagai Peta) yang akan diekspor ke Power BI. Lihat tabel. |
warehouse_id |
String | ID gudang SQL untuk digunakan sebagai sumber data Power BI. |
Examples
Contoh berikut menentukan tugas Power BI, yang menentukan koneksi, model Power BI untuk diperbarui, dan tabel Databricks untuk diekspor.
resources:
jobs:
my_job:
name: my_job
tasks:
- task_key: power_bi_task
power_bi_task:
connection_resource_name: 'connection_name'
power_bi_model:
workspace_name: 'workspace_name'
model_name: 'model_name'
storage_mode: 'DIRECT_QUERY'
authentication_method: 'OAUTH'
overwrite_existing: false
refresh_after_update: false
tables:
- catalog: 'main'
schema: 'tpch'
name: 'customers'
storage_mode: 'DIRECT_QUERY'
warehouse_id: '1a111111a1111aa1'
Tugas Pembuatan Skrip Python
Anda menggunakan tugas ini untuk menjalankan file Python.
Kunci berikut tersedia untuk tugas skrip Python. Untuk definisi objek REST API yang sesuai, lihat python_task.
Ditambahkan dalam Databricks CLI versi 0.229.0 atau yang lebih baru
| Key | Tipe | Description |
|---|---|---|
parameters |
Urutan | Parameter yang akan diteruskan ke file Python. Gunakan variabel parameter tugas untuk mengatur parameter yang berisi informasi tentang eksekusi pekerjaan. |
python_file |
String | Dibutuhkan. URI file Python yang akan dijalankan, misalnya /Users/someone@example.com/my-script.py. Untuk file python yang disimpan di ruang kerja Databricks, jalur harus absolut dan dimulai dengan /. Untuk file yang disimpan dalam repositori jarak jauh, jalur harus relatif. Bidang ini tidak mendukung referensi nilai dinamis seperti variabel. |
source |
String | Jenis lokasi file Python. Nilai yang berlaku adalah WORKSPACE atau GIT. Ketika diatur ke WORKSPACE, file akan diambil dari ruang kerja Databricks lokal. Ketika diatur ke GIT, file akan diambil dari repositori Git yang ditentukan dalam git_source. Jika nilai kosong, tugas akan menggunakan GIT jika git_source ditentukan dan akan menggunakan WORKSPACE jika tidak. |
Examples
Contoh berikut menambahkan tugas skrip Python ke pekerjaan. Jalur untuk file Python yang akan disebarkan relatif terhadap file konfigurasi tempat tugas ini dideklarasikan. Tugas ini mengambil file Python dari lokasi yang sudah dideploy di ruang kerja Azure Databricks.
resources:
jobs:
my-python-script-job:
name: my-python-script-job
tasks:
- task_key: my-python-script-task
spark_python_task:
python_file: ./my-script.py
Tugas roda Python
Anda menggunakan tugas ini untuk menjalankan roda Python. Lihat Membuat file roda Python menggunakan Bundel Otomatisasi Deklaratif.
Kunci berikut tersedia untuk tugas roda Python. Untuk definisi objek REST API yang sesuai, lihat python_wheel_task.
Ditambahkan dalam Databricks CLI versi 0.229.0 atau yang lebih baru
| Key | Tipe | Description |
|---|---|---|
entry_point |
String | Dibutuhkan. Titik masuk bernama untuk dijalankan: fungsi atau kelas. Jika tidak ada dalam metadata paket, itu menjalankan fungsi dari paket langsung menggunakan $packageName.$entryPoint(). |
named_parameters |
Map | Parameter bernama untuk diteruskan ke tugas roda Python, juga dikenal sebagai argumen Kata Kunci. Parameter bernama adalah pasangan kunci-nilai di mana kunci dan nilainya berupa string. Keduanya parameters dan named_parameters tidak dapat ditentukan. Jika named_parameters ditentukan, parameters diteruskan sebagai argumen kata kunci ke fungsi titik masuk. |
package_name |
String | Dibutuhkan. Nama paket Python yang akan dijalankan. Semua dependensi harus diinstal di lingkungan. Ini tidak memeriksa atau menginstal dependensi paket apa pun. |
parameters |
Urutan | Parameter yang akan diteruskan ke tugas roda Python, juga dikenal sebagai argumen Posisional. Setiap parameter adalah string. Jika ditentukan, named_parameters tidak boleh ditentukan. |
Examples
Contoh berikut menambahkan tugas roda Python ke pekerjaan. Jalur untuk file wheel Python yang akan disebarkan adalah relatif terhadap file konfigurasi di mana tugas ini dideklarasikan. Lihat Dependensi pustaka Bundel Otomatisasi Deklaratif.
resources:
jobs:
my-python-wheel-job:
name: my-python-wheel-job
tasks:
- task_key: my-python-wheel-task
python_wheel_task:
entry_point: run
package_name: my_package
libraries:
- whl: ./my_package/dist/my_package-*.whl
Jalankan tugas pekerjaan
Anda menggunakan tugas ini untuk menjalankan pekerjaan lain.
Kunci berikut tersedia untuk tugas menjalankan pekerjaan. Untuk definisi objek REST API yang sesuai, lihat run_job_task.
Ditambahkan dalam Databricks CLI versi 0.229.0 atau yang lebih baru
| Key | Tipe | Description |
|---|---|---|
job_id |
Integer | Dibutuhkan. ID pekerjaan yang akan dijalankan. Pekerjaan harus sudah ada di ruang kerja. |
job_parameters |
Map | Parameter tingkat pekerjaan untuk diteruskan ke pekerjaan yang sedang dijalankan. Parameter ini dapat diakses dalam tugas pekerjaan. |
pipeline_params |
Map | Parameter untuk tugas alur pemrosesan. Digunakan hanya jika pekerjaan yang dijalankan berisi tugas alur. Dapat menyertakan full_refresh untuk memicu refresh penuh sebuah pipa. |
Examples
Contoh berikut berisi tugas menjalankan pekerjaan di pekerjaan kedua yang memicu pekerjaan pertama.
Contoh ini menggunakan substitusi untuk mengambil ID tugas yang akan dijalankan. Untuk mendapatkan ID pekerjaan dari UI, buka pekerjaan di ruang kerja dan salin ID dari nilai ID Pekerjaan di tab Detail pekerjaan di halaman pengaturan pekerjaan.
resources:
jobs:
my-first-job:
name: my-first-job
tasks:
- task_key: my-first-job-task
new_cluster:
spark_version: '13.3.x-scala2.12'
node_type_id: 'i3.xlarge'
num_workers: 2
notebook_task:
notebook_path: ./src/test.py
my_second_job:
name: my-second-job
tasks:
- task_key: my-second-job-task
run_job_task:
job_id: ${resources.jobs.my-first-job.id}
Tugas SQL
Anda menggunakan tugas ini untuk menjalankan file, kueri, atau pemberitahuan SQL.
Kunci berikut tersedia untuk tugas SQL. Untuk definisi objek REST API yang sesuai, lihat sql_task.
Ditambahkan dalam Databricks CLI versi 0.229.0 atau yang lebih baru
| Key | Tipe | Description |
|---|---|---|
alert |
Map | Konfigurasi untuk menjalankan pemberitahuan SQL. Berisi:
|
dashboard |
Map | Konfigurasi untuk me-refresh dasbor SQL. Berisi:
|
file |
Map | Konfigurasi untuk menjalankan file SQL. Berisi:
|
parameters |
Map | Parameter yang akan digunakan untuk setiap eksekusi tugas ini. Kueri dan file SQL dapat menggunakan parameter ini dengan mereferensikannya dengan sintaks {{parameter_key}}. Gunakan variabel parameter tugas untuk mengatur parameter yang berisi informasi tentang eksekusi pekerjaan. |
query |
Map | Konfigurasi untuk menjalankan kueri SQL. Berisi:
|
warehouse_id |
String | Dibutuhkan. ID gudang SQL yang akan digunakan untuk menjalankan tugas SQL. Gudang SQL harus sudah ada. |
Examples
Tips
Untuk mendapatkan ID gudang SQL, buka halaman pengaturan gudang SQL, lalu salin ID yang ditemukan di tanda kurung setelah nama gudang di bidang Nama pada tab Gambaran Umum .
Contoh berikut menambahkan tugas file SQL ke pekerjaan. Tugas file SQL ini menggunakan gudang SQL yang ditentukan untuk menjalankan file SQL yang ditentukan.
resources:
jobs:
my-sql-file-job:
name: my-sql-file-job
tasks:
- task_key: my-sql-file-task
sql_task:
file:
path: /Users/someone@example.com/hello-world.sql
source: WORKSPACE
warehouse_id: 1a111111a1111aa1
Contoh berikut menambahkan tugas pemberitahuan SQL ke pekerjaan. Tugas pemberitahuan SQL ini menggunakan gudang SQL yang ditentukan untuk me-refresh pemberitahuan SQL yang ditentukan.
resources:
jobs:
my-sql-file-job:
name: my-sql-alert-job
tasks:
- task_key: my-sql-alert-task
sql_task:
warehouse_id: 1a111111a1111aa1
alert:
alert_id: 11111111-1111-1111-1111-111111111111
Contoh berikut menambahkan tugas kueri SQL ke pekerjaan. Tugas kueri SQL ini menggunakan gudang SQL yang ditentukan untuk menjalankan kueri SQL yang ditentukan.
resources:
jobs:
my-sql-query-job:
name: my-sql-query-job
tasks:
- task_key: my-sql-query-task
sql_task:
warehouse_id: 1a111111a1111aa1
query:
query_id: 11111111-1111-1111-1111-111111111111
Pengaturan tugas lainnya
Pengaturan tugas berikut memungkinkan Anda mengonfigurasi perilaku untuk semua tugas. Untuk definisi objek REST API yang sesuai, lihat tugas.
| Key | Tipe | Description |
|---|---|---|
compute |
Map | Konfigurasi komputasi tingkat tugas. Setiap item berisi:
|
depends_on |
Urutan | Daftar dependensi tugas opsional. Setiap item berisi:
|
description |
String | Deskripsi opsional untuk tugas tersebut. |
disable_auto_optimization |
Boolean | Apakah akan menonaktifkan pengoptimalan otomatis untuk tugas ini. Jika true, pengoptimalan otomatis seperti eksekusi kueri adaptif akan dinonaktifkan. |
email_notifications |
Map | Sekumpulan alamat email opsional untuk diberi tahu saat eksekusi dimulai, selesai, atau gagal. Setiap item berisi:
|
environment_key |
String | Kunci lingkungan yang ditentukan dalam konfigurasi pekerjaan environments . Digunakan untuk menentukan pengaturan khusus lingkungan. Bidang ini diperlukan untuk skrip Python, roda Python, dan tugas dbt saat menggunakan komputasi tanpa server. |
existing_cluster_id |
String | ID kluster yang ada yang akan digunakan untuk semua eksekusi tugas ini. |
health |
Map | Spesifikasi opsional untuk pemantauan kesehatan tugas ini yang menyertakan rules kunci, yang merupakan daftar aturan kesehatan untuk dievaluasi. |
job_cluster_key |
String | Kunci kluster pekerjaan yang ditentukan dalam konfigurasi pekerjaan job_clusters . |
libraries |
Urutan | Daftar pustaka opsional yang akan diinstal pada kluster yang akan menjalankan tugas. Setiap pustaka ditentukan sebagai peta dengan kunci seperti jar, , egg, whlpypi, maven, cran, atau requirements. |
max_retries |
Integer | Jumlah maksimum opsional untuk mencoba kembali tugas jika gagal. Jika tidak ditentukan, tugas tidak akan dicoba kembali. |
min_retry_interval_millis |
Integer | Interval minimal opsional dalam milidetik antara awal eksekusi yang gagal dan eksekusi coba lagi berikutnya. Jika tidak ditentukan, defaultnya adalah 0 (coba lagi segera). |
new_cluster |
Map | Spesifikasi untuk kluster baru yang akan dibuat untuk setiap eksekusi tugas ini. Lihat kluster. |
notification_settings |
Map | Pengaturan pemberitahuan opsional untuk tugas ini. Setiap item berisi:
|
retry_on_timeout |
Boolean | Kebijakan opsional untuk menentukan apakah akan mencoba kembali tugas ketika waktu habis. Jika tidak ditentukan, default ke false. |
run_if |
String | Nilai opsional yang menunjukkan kondisi di mana tugas harus dijalankan. Nilai yang valid adalah:
|
task_key |
String | Dibutuhkan. Nama unik untuk tugas tersebut. Bidang ini digunakan untuk merujuk ke tugas ini dari tugas lain menggunakan bidang depends_on. |
timeout_seconds |
Integer | Batas waktu opsional diterapkan ke setiap eksekusi tugas ini. Nilai 0 berarti tidak ada batas waktu. Jika tidak diatur, batas waktu default dari konfigurasi kluster digunakan. |
webhook_notifications |
Map | Sekumpulan tujuan sistem opsional untuk diberi tahu saat eksekusi dimulai, selesai, atau gagal. Setiap item berisi:
|