Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfada Bildirim temelli Otomasyon Paketlerinde iş görevlerinin nasıl tanımlanacağı hakkında bilgi sağlanır. İş görevleri hakkında bilgi için bkz. Lakeflow İşlerinde görevleri yapılandırma ve düzenleme.
Önemli
Yerel göreli yollar Git deposundaki aynı içeriğe git_source işaret etmeyebileceğinden, iş source alanı ve görev GIT alanının paketlerde kullanılması önerilmez. Paketler, dağıtılan bir işin dağıtıldığı yerel kopyayla aynı dosyalara sahip olmasını bekler.
Bunun yerine, depoyu yerel olarak kopyalayın ve paket projenizi bu depo içinde ayarlayın; böylece görevlerin kaynağı çalışma alanıdır.
Görevleri yapılandırma
Bir iş tanımının tasks anahtarında bir işin görevlerini bir demet içinde tanımlayın. Kullanılabilir görev türleri için görev yapılandırması örnekleri Görev ayarları bölümündedir. Pakette iş tanımlama hakkında bilgi için bkz. iş.
İpucu
Databricks CLI kullanarak var olan bir işin kaynak yapılandırmasını hızla oluşturmak için komutunu kullanabilirsinizbundle generate job. Bkz. paket komutları.
Görev değerlerini ayarlamak için, çoğu iş görevi türünün göreve özgü parametreleri vardır, ancak görevlere geçirilen iş parametrelerini de tanımlayabilirsiniz. Dinamik değer başvuruları , görevler arasında çalıştırılan işe özgü değerlerin geçirilmesini sağlayan iş parametreleri için desteklenir. Görev değerlerini görev türüne göre geçirme hakkında tam bilgi için bkz. Görev türüne göre ayrıntılar.
Genel iş görevi ayarlarını hedef çalışma alanı ayarlarıyla da geçersiz kılabilirsiniz. Hedef ayarlarla geçersiz kılma ifadesine bakın.
Aşağıdaki örnek yapılandırma, iki not defteri görevi olan bir işi tanımlar ve ilk görevden ikinci göreve bir görev değeri geçirir.
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, message anahtarı için bir görev değeri ayarlayan aşağıdaki kodu içerir:
# 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}")
, input_notebook.ipynb görevin yapılandırmasında ayarlanan parametresinin received_messagedeğerini alır:
# 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}")
Görev ayarları
Bu bölümde her iş görev türü için ayarlar ve örnekler yer alır.
AI Runtime görevi
Önemli
Bu özellik Genel Önizleme aşamasındadır.
AI Runtime görevi, ai_runtime_task alanı mevcut olduğunda Databricks AI Runtime üzerinde çok GPU’lu bir hesaplama iş yükü çalıştırır. Hızlandırıcı tipini ve sayısını, her düğümde çalıştırılacak komutu ve çalışma çıktısının saklandığı MLflow deneyini belirlersiniz.
Aşağıdaki anahtarlar bir AI Çalışma Zamanı görevi için mevcuttur. İlgili REST API nesne tanımı için bkz. ai_runtime_task.
Databricks CLI sürüm 1.6.0'da eklendi
| Key | Türü | Description |
|---|---|---|
deployments |
Sıra | Gerekli. Bu görev için dağıtım özellikleri. Şu anda tam olarak bir dağıtım destekleniyor (her düğümün aynı komutu çalıştırdığı tek bir giriş). Her dağıtım, şunları içeren bir nesnedir:
|
experiment |
String | Gerekli. Bu çalışma için MLflow deney adı. Eğer bu ada sahip bir deney, çağrıyı yapan kullanıcı altında zaten varsa, çalıştırma kaydı bu deneye eklenir; aksi takdirde yeni bir deney oluşturulur. Belirli bir MLflow depolama konumunu hedeflemek için mlflow_experiment_directory ayarlayın. |
mlflow_experiment_directory |
String |
experiment içinde adlandırılan MLflow deneyinin oluşturulduğu isteğe bağlı bir çalışma alanı dizini. ile /Workspacebaşlamalıdır. Bunu, varsayılan kullanıcı dizini olmayan bir servis yöneticisi olarak çalışırken ayarlayın; Düzenli kullanıcılar için deney varsayılan olarak kullanıcının ana dizinine yönelir. |
mlflow_run |
String |
experiment altında oluşturulan MLflow çalışması için isteğe bağlı bir görünen ad. Eğer atlanırsa, MLflow varsayılan bir isim oluşturur. |
Örnekler
Aşağıdaki örnek, bir işe AI Runtime görevi ekler. Görev, tek bir 8-GPU H100 düğümünde çalışır train.py ve belirtilen MLflow deneyinde çıktıyı saklar:
resources:
jobs:
my-ai-runtime-job:
name: my-ai-runtime-job
tasks:
- task_key: train-task
ai_runtime_task:
experiment: /Users/someone@example.com/my-experiment
deployments:
- command_path: /Workspace/Users/someone@example.com/train.py
compute:
accelerator_type: GPU_8xH100
accelerator_count: 8
Alert (v2) görevi
Uyarı (v2) görevi bir Databricks uyarısını değerlendirir ve alert_task alanı mevcut olduğunda abonelere bildirim gönderir. Uyarı görevleri hakkında daha fazla bilgi için bkz. İşler için SQL uyarı görevi.
Uyarı (v2) görevi için aşağıdaki anahtarlar kullanılabilir. İlgili REST API nesne tanımı için bkz. alert_task.
Databricks CLI sürüm 0.296.0'a eklendi
| Key | Türü | Description |
|---|---|---|
alert_id |
String | Değerlendirilecek uyarının kimliği. Uyarıyı tanımlamak için yalnızca alert_id veya workspace_path belirtilebilir. |
subscribers |
Sıra | Uyarı görevi tamamlandıktan sonra uyarı değerlendirme sonucu bildirimleri alacak abonelerin listesi. Abonelik sayısı 100 ile sınırlıdır. Her abone, bildirim hedefi için bir (Dize) destination_id veya çalışma alanı kullanıcı e-posta adresi için bir (Dize) user_name içeren bir nesnedir. |
warehouse_id |
String | Uyarı görevi tarafından kullanılan ambar ayarları. |
workspace_path |
String | Çalışma alanında uyarı dosyasının yolu. Yol "/Çalışma Alanı" ile başlamalı ve normalleştirilmiş bir yol olmalıdır. Uyarıyı tanımlamak için yalnızca alert_id veya workspace_path belirtilebilir. |
Örnekler
Aşağıdaki örnek bir işe uyarı görevi ekler:
resources:
jobs:
my_job:
name: my_job
tasks:
- task_key: alert_task
alert_task:
workspace_path: ./my_alert.dbalert.json
warehouse_id: 1a111111a1111aa1
Temiz oda defteri görevi
Temiz oda not defteri görevi, clean_rooms_notebook_task alanı mevcut olduğunda bir temiz oda not defteri çalıştırır. Temiz odalar hakkında bilgi için bkz. Azure Databricks Clean Rooms nedir?.
Temiz oda defteri görevi için aşağıdaki anahtarlar kullanılabilir. İlgili REST API nesne tanımı için bkz. clean_rooms_notebook_task.
Databricks CLI sürüm 0.237.0'a eklendi
| Key | Türü | Description |
|---|---|---|
clean_room_name |
String | Gerekli. Not defterinin ait olduğu temiz oda. |
etag |
String | Not defteri kaynağının güncelliğini doğrulamak için sağlama toplamı. Temiz oda varlıkları get işlemi çağrılarak getirilebilir. |
object |
Map | Temiz oda not defteri işi için kullanılacak temel parametreler. |
notebook_name |
String | Gerekli. Çalıştırılmakta olan not defterinin adı. |
Koşul görevi
condition_task, işinize if/else koşullu mantığıyla bir görev eklemenize olanak tanır. Görev, diğer görevlerin yürütülmesini denetlemek için kullanılabilecek bir koşulu değerlendirir. Koşul görevi, bir kümenin yürütülmesini gerektirmez ve yeniden denemeleri veya bildirimleri desteklemez. if/else koşulu görevi hakkında daha fazla bilgi için bkz. If/else göreviyle bir işe dallanma mantığı ekleme.
Bir koşul görevi için aşağıdaki anahtarlar kullanılabilir. İlgili REST API nesne tanımı için bkz. condition_task.
| Key | Türü | Description |
|---|---|---|
left |
String | Gerekli. Koşulun sol işleneni. Dize değeri, iş durumu veya {{job.repair_count}} veya {{tasks.task_key.values.output}} gibi bir dinamik değer başvurusu olabilir. |
op |
String | Gerekli. Karşılaştırma için kullanılacak işleç. Geçerli değerler şunlardır: EQUAL_TO, NOT_EQUAL, GREATER_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN, . LESS_THAN_OR_EQUAL |
right |
String | Gerekli. Koşulun sağ operandı. Dize değeri, iş durumu veya dinamik değer referansı olabilir. |
Örnekler
Aşağıdaki örnek, bir koşul görevi ve not defteri görevi içerir; burada not defteri görevi yalnızca iş onarımı sayısı 5'ten az olduğunda yürütülür.
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
Gösterge paneli görevi
Bu görevi bir panoyu yenilemek ve abonelere anlık görüntü göndermek için kullanırsınız. Paketlerdeki panolar ile ilgili daha fazla bilgi için pano sayfasına bakın.
Bir pano görevi için aşağıdaki anahtarlar kullanılabilir. İlgili REST API nesne tanımı için bkz. dashboard_task.
Databricks CLI sürüm 0.248.0'a eklendi
| Key | Türü | Description |
|---|---|---|
dashboard_id |
String | Gerekli. Yenilenecek gösterge panelinin tanımlayıcısı. Pano zaten mevcut olmalıdır. |
subscription |
Map | Pano anlık görüntüsünü göndermeye yönelik abonelik yapılandırması. Her abonelik nesnesi, pano yenilemesi tamamlandıktan sonra anlık görüntülerin nereye gönderileceğine ilişkin hedef ayarları belirtebilir. Bkz. abonelik. |
warehouse_id |
String | Zamanlama için panoyu yürütmek üzere kullanılacak ambar kimliği. Belirtilmezse, panonun varsayılan ambarı kullanılır. |
Örnekler
Aşağıdaki örnek, bir işe bir gösterge panosu görevi ekler. İş çalıştırıldığında, belirtilen kimliği içeren pano yenilenir.
resources:
jobs:
my-dashboard-job:
name: my-dashboard-job
tasks:
- task_key: my-dashboard-task
dashboard_task:
dashboard_id: 11111111-1111-1111-1111-111111111111
dbt görevi
Bu görevi bir veya daha fazla dbt komutu çalıştırmak için kullanırsınız. dbt hakkında daha fazla bilgi için bkz. dbt Cloud'a bağlanma.
Bir dbt görevi için aşağıdaki anahtarlar kullanılabilir. İlgili REST API nesne tanımı için bkz. dbt_task.
| Key | Türü | Description |
|---|---|---|
catalog |
String | Kullanılacak kataloğun adı. Katalog değeri yalnızca warehouse_id belirtildiğinde belirtilebilir. Bu alan dbt-databricks >= 1.1.1 gerektirir. |
commands |
Sıra | Gerekli. Sırayla yürütülecek dbt komutlarının listesi. Her komut tam bir dbt komutu olmalıdır (örneğin, dbt deps, dbt seed, dbt run, dbt test). En fazla 10 komut sağlanabilir. |
profiles_directory |
String | dbt profiles.yml dosyasını içeren dizinin yolu. Yalnızca warehouse_id belirtilmemişse belirtilebilir.
warehouse_id belirtilmezse ve bu klasör ayarlanmadıysa kök dizin kullanılır. |
project_directory |
String | dbt projesini içeren dizine giden yol. Belirtilmezse, varsayılan olarak deponun veya çalışma alanı dizininin kökünü kullanır. Databricks çalışma alanında depolanan projeler için yol mutlak olmalı ve bir eğik çizgiyle başlamalıdır. Uzak depodaki projeler için yol göreli olmalıdır. |
schema |
String | Yazılacak olan şema. Bu parametre yalnızca warehouse_id de sağlandığında kullanılır. Sağlanmazsa, varsayılan şema kullanılır. |
source |
String | dbt projesinin konum türü. Geçerli değerler: WORKSPACE ve GIT. olarak ayarlandığında WORKSPACE, proje Databricks çalışma alanından alınır.
GIT olarak ayarlandığında, proje git_source içinde tanımlanan bir Git deposundan alınır. Boşsa, görev GIT kullanır; eğer git_source tanımlıysa git_source’i kullanır, aksi takdirde ’yi kullanır. |
warehouse_id |
String | dbt komutlarını çalıştırmak için kullanılacak SQL ambarının kimliği. Belirtilmezse, varsayılan ambar kullanılır. |
Örnekler
Aşağıdaki örnek, bir işe bir dbt görevi eklemektedir. Bu dbt görevi, belirtilen dbt komutlarını çalıştırmak için belirtilen SQL ambarını kullanır.
SQL ambarının kimliğini almak için SQL ambarının ayarlar sayfasını açın, ardından Genel Bakış sekmesindeki Ad alanındaki ambarın adından sonra parantez içinde bulunan kimliği kopyalayın.
İpucu
Bildirim temelli Otomasyon Paketleri, dbt görevine sahip bir işi tanımlayan bir proje şablonunun yanı sıra dağıtılan dbt işleri için dbt profillerini de içerir dbt-sql . Bildirim temelli Otomasyon Paketleri şablonları hakkında bilgi için bkz. Varsayılan paket şablonları.
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'
Her görev için
for_each_task, işinize bir "for each" döngüsü ile görev eklemenizi sağlar. Görev, verilen her bir giriş için bir alt görev yürütür. Daha fazla bilgi için for_each_task hakkında bkz. Döngüde başka bir görevi çalıştırmak için For each görevini kullanma.
Aşağıdaki anahtarlar for_each_task için mevcut. İlgili REST API nesne tanımı için bkz. for_each_task.
| Key | Türü | Description |
|---|---|---|
concurrency |
Integer | Eşzamanlı olarak çalışabilecek en fazla görev yinelemesi sayısı. Belirtilmezse, küme ve çalışma alanı sınırlarına bağlı olarak tüm yinelemeler paralel olarak çalıştırılabilir. |
inputs |
String | Gerekli. Döngü için giriş verileri. Bu bir JSON dizesi veya dizi parametresi başvurusu olabilir. Dizideki her öğe, iç içe geçmiş görevin bir yinelemesine aktarılır. |
task |
Map | Gerekli. Her bir giriş için gerçekleştirilecek yuvalanmış görev tanımı. Bu nesne, ve görev türü (örneğin, task_key, notebook_taskvb.) dahil olmak üzere python_wheel_task tam görev belirtimini içerir. |
Örnekler
Aşağıdaki örnek, başka bir görevin değerleri üzerinde döngü yaparak bunları işleyen bir göreve for_each_task ekler.
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
JAR görevi
Bir JAR dosyasını çalıştırmak için bu görevi kullanırsınız. Yerel JAR kitaplıklarına veya bir çalışma alanındaki, Unity Kataloğu birimindeki ya da dış bulut depolama konumundaki kitaplıklara erişebilirsiniz. Bkz . JAR dosyası (Java veya Scala).
Standart erişim modunda Unity Kataloğu özellikli bir kümede Scala JAR dosyalarını derleme ve dağıtma hakkında ayrıntılı bilgi için bkz . Öğretici: Sunucusuz işlemde Scala kodunu çalıştırma.
Jar görevi için aşağıdaki anahtarlar kullanılabilir. İlgili REST API nesne tanımı için bkz. jar_task.
| Key | Türü | Description |
|---|---|---|
jar_uri |
String | Deprecated. yürütülecek JAR'ın URI'si DBFS ve bulut depolama yolları desteklenir. Bu alan kullanım dışıdır ve kullanılmamalıdır. Bunun yerine JAR bağımlılıklarını belirtmek için alanını kullanın libraries . |
main_class_name |
String | Gerekli. Yürütülecek ana yöntemi içeren sınıfın tam adı. Bu sınıf, kitaplık olarak sağlanan bir JAR içinde yer almalıdır. Kodun bir Spark bağlamı elde etmek için SparkContext.getOrCreate kullanması gerekir; aksi takdirde çalıştırmalar başarısız olur. |
parameters |
Sıra | Ana metoda geçirilen parametreler. İş çalıştırmaları hakkında bilgi içeren parametreleri ayarlamak için görev parametresi değişkenlerini kullanın. |
Örnekler
Aşağıdaki örnek, bir göreve JAR görevi ekler. JAR dosyasının yolu bir birim konumuna gider.
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
Not defteri görevi
Not defterini çalıştırmak için bu görevi kullanırsınız. İşler için bir Not Defteri Görevine bakın.
Not defteri görevi için aşağıdaki anahtarlar kullanılabilir. İlgili REST API nesne tanımı için bkz. notebook_task.
| Key | Türü | Description |
|---|---|---|
base_parameters |
Map | Bu işin her bir çalıştırması için kullanılacak olan temel parametreler.
|
notebook_path |
String | Gerekli. Databricks çalışma alanında veya uzak depoda not defterinin yolu, örneğin /Users/user.name@databricks.com/notebook_to_run. Databricks çalışma alanında depolanan not defterleri için yol mutlak olmalı ve eğik çizgiyle başlamalıdır. Uzak bir depoda depolanan not defterleri için yolun göreli olması gerekir. |
source |
String | Not defterinin konum türü. Geçerli değerler: WORKSPACE ve GIT. olarak ayarlandığında WORKSPACE, not defteri yerel Databricks çalışma alanından alınır.
GIT olarak ayarlandığında, not defteri git_source belirtilen bir Git deposundan çekilecek. Değer boşsa, GIT tanımlanmışsa git_source, aksi takdirde WORKSPACE kullanılır. |
warehouse_id |
String | Üzerinde defterin çalıştırılacağı ambar kimliği. Klasik SQL ambarları desteklenmez. Bunun yerine sunucusuz veya profesyonel SQL ambarları kullanın. SQL ambarlarının yalnızca SQL hücrelerini desteklediğini unutmayın. Not defteri SQL dışı hücreler içeriyorsa çalıştırma başarısız olur, bu nedenle bir hücrede Python (veya başka bir) kullanmanız gerekiyorsa sunucusuz kullanın. |
Örnekler
Aşağıdaki örnek, bir işe bir not defteri görevi ekler ve adlı my_job_run_idbir iş parametresi ayarlar. Dağıtılacak not defterinin yolu, bu görevin bildirildiği yapılandırma dosyasına göredir. Görev, not defterini, Azure Databricks çalışma alanında bulunduğu konumdan alır.
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}}'
Boru hattı görevi
İşlem hattını çalıştırmak için bu görevi kullanırsınız. Bkz. Spark Bildirimsel İşlem Hatları.
Boru hattı görevi için aşağıdaki anahtarlar kullanılabilir. İlgili REST API nesne tanımı için bkz. pipeline_task.
| Key | Türü | Description |
|---|---|---|
full_refresh |
Boolean | True ise işlem hattının tam yenilemesi tetiklenir ve işlem hattındaki tüm veri kümeleri tamamen yeniden derlenir. Yanlış olması veya atlanması durumunda, yalnızca artımlı veriler işlenir. Ayrıntılar için bkz İşlem hattı yenileme semantiği. |
pipeline_id |
String | Gerekli. Çalıştırılacak işlem hattının kimliği. İşlem hattı zaten mevcut olmalıdır. |
Örnekler
Aşağıdaki örnek işe bir işlem hattı görevi ekler. Bu görev belirtilen işlem hattını çalıştırır.
İpucu
İşlem hattını çalışma alanında açıp işlem hattının ayarlar sayfasının İşlem hattı ayrıntıları sekmesindeki İşlem Hattı Kimliği değerini kopyalayarak işlem hattının kimliğini alabilirsiniz.
resources:
jobs:
my-pipeline-job:
name: my-pipeline-job
tasks:
- task_key: my-pipeline-task
pipeline_task:
pipeline_id: 11111111-1111-1111-1111-111111111111
Power BI görevi
Önemli
Power BI görev türü Genel Önizleme'dedir.
Power BI anlam modelinin (eski adı veri kümesi) yenilenmesini tetiklemek için bu görevi kullanın.
Power BI görevi için aşağıdaki anahtarlar kullanılabilir. İlgili REST API nesne tanımı için bkz. power_bi_task.
Databricks CLI sürüm 0.248.0'a eklendi
| Key | Türü | Description |
|---|---|---|
connection_resource_name |
String | Gerekli. Databricks'ten Power BI'a kimlik doğrulaması için Unity Kataloğu bağlantısının adı. |
power_bi_model |
String | Gerekli. Güncelleştirilecek Power BI anlam modelinin (veri kümesi) adı. |
refresh_after_update |
Boolean | Güncelleştirme tamamlandıktan sonra Power BI anlam modelinin yenilenip yenilenmeyeceği. Varsayılan değer false'tur. |
tables |
Sıra | Power BI'a aktarılacak tabloların (her biri Harita olarak) listesi. Tablolara bakın. |
warehouse_id |
String | Power BI veri kaynağı olarak kullanılacak SQL ambarının kimliği. |
Örnekler
Aşağıdaki örnek bir bağlantıyı, güncelleştirilecek Power BI modelini ve dışarı aktaracak Databricks tablosunu belirten bir Power BI görevini tanımlar.
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'
Python-script görevi
Bu görevi bir Python dosyası çalıştırmak için kullanırsınız.
Python betik görevi için aşağıdaki anahtarlar kullanılabilir. İlgili REST API nesne tanımı için bkz. python_task.
| Key | Türü | Description |
|---|---|---|
parameters |
Sıra | Python dosyasına aktarılacak parametreler. İş çalıştırmaları hakkında bilgi içeren parametreleri ayarlamak için görev parametresi değişkenlerini kullanın. |
python_file |
String | Gerekli. Yürütülecek Python dosyasının URI'si, örneğin /Users/someone@example.com/my-script.py. Databricks çalışma alanında depolanan python dosyaları için yol mutlak olmalı ve /ile başlamalıdır. Uzak depoda depolanan dosyalar için yol göreli olmalıdır. Bu alan, değişkenler gibi dinamik değer başvurularını desteklemez. |
source |
String | Python dosyasının konum türü. Geçerli değerler: WORKSPACE ve GIT. olarak ayarlandığında WORKSPACE, dosya yerel Databricks çalışma alanından alınır.
GIT olarak ayarlandığında, dosya git_source içinde tanımlanan bir Git deposundan alınır. Değer boşsa, GIT tanımlanmışsa git_source, aksi takdirde WORKSPACE kullanılır. |
Örnekler
Aşağıdaki örnek bir iş tanımına bir Python betiği görevi ekler. Dağıtılacak Python dosyasının yolu, bu görevin bildirildiği yapılandırma dosyasına göredir. Görev, Python dosyasını Azure Databricks çalışma alanındaki dağıtılan konumundan alır.
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
Python tekerlek görevi
Python tekerleğini çalıştırmak için bu görevi kullanırsınız. Bkz. Bildirim temelli Otomasyon Paketlerini kullanarak Python tekerlek dosyası oluşturma.
Python tekerlek görevi için aşağıdaki tuşlar kullanılabilir. İlgili REST API nesne tanımı için bkz. python_wheel_task.
| Key | Türü | Description |
|---|---|---|
entry_point |
String | Gerekli. Yürütme için adlandırılmış giriş noktası: fonksiyon veya sınıf. Meta verilerinde yoksa işlevi doğrudan paketten kullanarak $packageName.$entryPoint() yürütür. |
named_parameters |
Map | Python tekerlek görevine geçirecek adlandırılmış parametreler, Anahtar sözcük bağımsız değişkenleri olarak da adlandırılır. Adlandırılmış parametre, dize anahtarı ve dize değeri olan bir anahtar-değer çiftidir. Hem parameters hem de named_parameters belirtilmemelidir. belirtilirse named_parameters , parameters giriş noktası işlevine anahtar sözcük bağımsız değişkenleri olarak geçirilir. |
package_name |
String | Gerekli. Yürütülecek Python paketinin adı. Tüm bağımlılıklar ortama yüklenmelidir. Bu işlem paket bağımlılıklarını denetlemez veya yüklemez. |
parameters |
Sıra | Python wheel paketi görevine geçirecek parametreler, aynı zamanda Konumsal argümanlar olarak da bilinir. Her parametre bir dizedir. Belirtilirse, named_parameters belirtilmemelidir. |
Örnekler
Aşağıdaki örnek bir işe Python tekerlek görevi ekler. Dağıtılacak Python tekerlek dosyasının yolu, bu görevin bildirildiği yapılandırma dosyasına göredir. Bkz. Bildirim Temelli Otomasyon Paketleri kitaplık bağımlılıkları.
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
İş görevini çalıştır
Bu görevi başka bir işi çalıştırmak için kullanırsınız.
Bir çalışma görevi için aşağıdaki anahtarlar kullanılabilir. İlgili REST API nesne tanımı için bkz. run_job_task.
| Key | Türü | Description |
|---|---|---|
job_id |
Integer | Gerekli. Çalıştırılacak işin ID'si. İş çalışma alanında zaten var olmalıdır. |
job_parameters |
Map | Çalıştırılan işe geçirilecek iş düzeyi parametreleri. Bu parametrelere işin görevleri içinden erişilebilir. |
pipeline_params |
Map | İşlem hattı görevi için parametreler. Yalnızca çalıştırılan iş bir pipeline task içeriyorsa kullanılır. Tam bir işlem hattı yenilemesi tetiklemek için full_refresh dahil edilebilir. |
Örnekler
Aşağıdaki örnekte, ilk işi çalıştıran bir çalışma görevi, ikinci işte yer alır.
Bu örnek, çalıştırılacak işin kimliğini almak için bir değiştirme kullanır. Kullanıcı arabiriminden bir işin kimliğini almak için, çalışma alanında işi açın ve işin ayarlar sayfasının İş ayrıntıları sekmesindeki İş Kimliği değerinden kimliği kopyalayın.
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}
SQL görevi
Bu görevi bir SQL dosyası, sorgu veya uyarı çalıştırmak için kullanırsınız.
Bir SQL görevi için aşağıdaki anahtarlar kullanılabilir. İlgili REST API nesne tanımı için bkz. sql_task.
| Key | Türü | Description |
|---|---|---|
alert |
Map | SQL uyarısı çalıştırma yapılandırması. Içerir:
|
dashboard |
Map | SQL panosunun yenilenmesi için yapılandırma. Içerir:
|
file |
Map | SQL dosyası çalıştırma yapılandırması. Içerir:
|
parameters |
Map | Görevin her çalıştırılmasında kullanılacak parametreler. SQL sorguları ve dosyaları söz dizimi {{parameter_key}}ile başvurarak bu parametreleri kullanabilir. İş çalıştırmaları hakkında bilgi içeren parametreleri ayarlamak için görev parametresi değişkenlerini kullanın. |
query |
Map | SQL sorgusu çalıştırma yapılandırması. Içerir:
|
warehouse_id |
String | Gerekli. SQL görevini çalıştırmak için kullanılacak SQL ambarının kimliği. SQL ambarı zaten var olmalıdır. |
Örnekler
İpucu
SQL ambarının kimliğini almak için SQL ambarının ayarlar sayfasını açın, ardından Genel Bakış sekmesindeki Ad alanındaki ambarın adından sonra parantez içinde bulunan kimliği kopyalayın.
Aşağıdaki örnek işe bir SQL dosya görevi ekler. Bu SQL dosya görevi, belirtilen SQL dosyasını çalıştırmak için belirtilen SQL ambarını kullanır.
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
Aşağıdaki örnek işe bir SQL uyarı görevi ekler. Bu SQL uyarı görevi, belirtilen SQL uyarısını yenilemek için belirtilen SQL ambarını kullanır.
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
Aşağıdaki örnek işe bir SQL sorgu görevi ekler. Bu SQL sorgusu görevi, belirtilen SQL sorgusunu çalıştırmak için belirtilen SQL ambarını kullanır.
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
Diğer görev ayarları
Aşağıdaki görev ayarları, tüm görevler için davranışları yapılandırmanıza olanak sağlar. İlgili REST API nesne tanımları için bkz. görevler.
| Key | Türü | Description |
|---|---|---|
compute |
Map | Görev düzeyi işlem yapılandırması. Her öğe şu öğeleri içerir:
|
depends_on |
Sıra | İsteğe bağlı görev bağımlılıkları listesi. Her öğe şu öğeleri içerir:
|
description |
String | Görev için isteğe bağlı bir açıklama. |
disable_auto_optimization |
Boolean | Bu görev için sunucusuz otomatik optimizasyonu devre dışı bırakıp kapatılmadığı. Sunucusuz hesaplamada, otomatik optimizasyon başarısız bir görevi tekrar deneme politikanızdaki denemelere ek olarak tekrar deneyebilir, bu yüzden görevin en fazla bir kez çalıştırılması gerekiyorsa bunu ayarlayın true . Bu ayar klasik hesaplama üzerinde hiçbir etkisi yoktur. Bkz. yeniden denemelere izin vermemek için sunucusuz işlem otomatik optimizasyonunu yapılandırma. |
email_notifications |
Map | Çalıştırmanın ne zaman başladığını, tamamlandığını veya başarısız olduğunu bildirmek için isteğe bağlı bir e-posta adresleri kümesi. Her öğe şu öğeleri içerir:
|
environment_key |
String | İşin environments yapılandırmasında tanımlanan bir ortamın anahtarı. Ortama özgü ayarları belirtmek için kullanılır. Bu alan, sunucusuz işlem kullanılırken Python betiği, Python tekerleği ve dbt görevleri için gereklidir. |
existing_cluster_id |
String | Bu görevin tüm çalıştırmaları için kullanılacak mevcut kümenin kimliği. |
health |
Map | Bu görevin sağlık izlemesi için, değerlendirilecek sağlık kurallarının listesi olan bir anahtar içeren rules isteğe bağlı belirtim. |
job_cluster_key |
String | İşin yapılandırmasında tanımlanan bir job_clusters iş kümesinin anahtarı. |
libraries |
Sıra | Görevi yürütecek kümeye yüklenecek isteğe bağlı kitaplık listesi. Her kitaplık, jar, egg, whl, pypi, maven, veya cran gibi requirements anahtarlarıyla bir eşleme olarak belirtilir. |
max_retries |
Integer | Görev başarısız olursa, yeniden deneme süresi için opsiyonel maksimum sınır belirlenebilir. Belirtilmezse, görev yeniden denenmeyecek. |
min_retry_interval_millis |
Integer | Başarısız çalıştırmanın başlangıcı ile sonraki yeniden deneme çalıştırması arasında milisaniye cinsinden isteğe bağlı en düşük aralık. Belirtilmezse, varsayılan değer 0'dır (hemen yeniden deneme). |
new_cluster |
Map | Her çalıştırma için yeni bir konfigürasyon belirtimi oluşturulacak. Bkz. küme. |
notification_settings |
Map | Bu görev için isteğe bağlı bildirim ayarları. Her öğe şu öğeleri içerir:
|
retry_on_timeout |
Boolean | Görev zaman aşımına uğradığında yeniden denenip denenmeyeceğini belirten isteğe bağlı bir ilke. Belirtilmezse, varsayılan olarak false'dur. |
run_if |
String | Görevin çalışması gerektiği durumu belirten isteğe bağlı bir değer. Geçerli değerler şunlardır:
|
task_key |
String | Gerekli. Görev için benzersiz bir ad. Bu alan, diğer görevlerin depends_on alanını kullanarak bu görevi referans alması için kullanılır. |
timeout_seconds |
Integer | Bu görevin her çalıştırması için isteğe bağlı bir süre sonu ayarlanır. 0 değeri zaman aşımı olmadığı anlamına gelir. Ayarlanmadıysa, küme yapılandırmasından varsayılan zaman aşımı kullanılır. |
webhook_notifications |
Map | Bir çalıştırma başladığında, tamamlandığında veya başarısız olduğunda bildirim almak için isteğe bağlı bir sistem hedefleri kümesi. Her öğe şu öğeleri içerir:
|