API pro Pracovní Úlohy 2.0
Důležité
Tento článek popisuje verzi 2.0 rozhraní API úloh. Databricks však doporučuje používat rozhraní API pro úlohy 2.2 pro nové a existující klienty a skripty. Podrobnosti o změnách ve verzi 2.2 rozhraní API úloh najdete v tématu Aktualizace z rozhraní API úloh 2.1 na 2.2.
Rozhraní API pro úlohy umožňuje vytvářet, upravovat a odstraňovat úlohy. Maximální povolená velikost požadavku na rozhraní API pro úlohy je 10 MB.
Informace o aktualizovaných funkcích v novějších verzích rozhraní API úloh najdete v tématu Aktualizace z rozhraní API úloh 2.0 na verzi 2.1 a Aktualizace z rozhraní API úloh 2.1 na verzi 2.2.
Varování
Tajné kódy byste nikdy neměli pevně zakódovat ani je ukládat ve formátu prostého textu. Pro správu tajemství v Databricks CLI použijte Secrets API. Pomocí nástroje Tajné kódy (dbutils.secrets) můžete odkazovat na tajné kódy v poznámkových blocích a úlohách.
Poznámka:
Pokud se při provádění požadavků rozhraní API úloh zobrazí chyba na úrovni 500, doporučuje Databricks opakovat žádosti po dobu až 10 minut (s minimálním 30sekundovým intervalem mezi opakováními).
Důležité
Pokud chcete získat přístup k rozhraním REST API služby Databricks, musíte použít ověřování.
Vytvářet
Koncový bod | Metoda HTTP |
---|---|
2.0/jobs/create |
POST |
Vytvořte novou úlohu.
Příklad
Tento příklad vytvoří úlohu, která spustí JAR úkol v 10:15 každou noc.
Žádost
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"
}
}
Nahrazení:
-
<databricks-instance>
s názvem instance pracovního prostoru Azure Databricks, napříkladadb-1234567890123456.7.azuredatabricks.net
. - Obsah
create-job.json
s poli, která jsou vhodná pro vaše řešení.
Tento příklad používá soubor .netrc a jq.
Odpověď
{
"job_id": 1
}
Struktura požadavku
Důležité
- Při spuštění úlohy v novém clusteru úloh se tato úloha považuje za automatizovanou úlohu (Jobs Compute) a podléhá cenám za výpočetní úlohy (Jobs Compute).
- Když spustíte úlohu ve stávajícím všestranném clusteru, považuje se za výpočetní úlohu všestranného využití (interaktivní) podle cenové politiky pro všestranné výpočty.
Název pole | Typ | Popis |
---|---|---|
existing_cluster_id NEBO new_cluster |
STRING OR NewCluster |
Pokud existing_cluster_id, ID existujícího clusteru, který se použije pro všechna spuštění této úlohy. Při spouštění úloh v existujícím clusteru možná budete muset cluster restartovat ručně, pokud přestane reagovat. Pro větší spolehlivost doporučujeme provozovat úkoly v nových clusterech. Pokud new_cluster, popis clusteru, který se vytvoří pro každé spuštění. Pokud zadáte PipelineTask, může být toto pole prázdné. |
notebook_task NEBO spark_jar_task spark_python_task NEBO spark_submit_task pipeline_task NEBO run_job_task |
NotebookTask NEBO SparkJarTask NEBO SparkPythonTask NEBO SparkSubmitTask NEBO PipelineTask NEBO RunJobTask | Pokud jde o notebook_task, znamená to, že tato úloha má spustit poznámkový blok. Toto pole nesmí být zadáno ve spojení s spark_jar_task. Pokud spark_jar_task, znamená to, že by tato úloha měla spustit soubor JAR. Pokud spark_python_task, znamená to, že by tato úloha měla spustit soubor Pythonu. Je-li spark_submit_task, znamená to, že tuto úlohu by měl spustit skript odeslání pro Spark. Pokud pipeline_task, znamená to, že by tato úloha měla spustit kanál DLT. Pokud run_job_task, znamená to, že by tato úloha měla spustit jinou úlohu. |
name |
STRING |
Volitelný název úlohy. Výchozí hodnota je Untitled . |
libraries |
Pole knihovny | Volitelný seznam knihoven, které se mají nainstalovat do clusteru, který spustí úlohu. Výchozí hodnota je prázdný seznam. |
email_notifications |
OznámeníPracíEmailem | Volitelná sada e-mailových adres upozorňována na spuštění a dokončení této úlohy a po odstranění této úlohy. Výchozí chování je neodesílat žádné e-maily. |
webhook_notifications |
WebhookNotifications | Volitelná sada systémových destinací, které upozorňují na začátek, dokončení nebo selhání této úlohy. |
notification_settings |
Nastavení oznámení o práci | Volitelná nastavení oznámení, která se používají při odesílání oznámení pro každé email_notifications a webhook_notifications v rámci této úlohy. |
timeout_seconds |
INT32 |
Volitelný časový limit použitý pro každé spuštění této úlohy. Výchozí chování nemá žádný časový limit. |
max_retries |
INT32 |
Volitelný maximální počet opakování neúspěšného spuštění. Spuštění je považováno za neúspěšné, pokud se dokončí ve stavu FAILED result_state neboINTERNAL_ERROR life_cycle_state . Hodnota -1 znamená opakování na neomezenou dobu a hodnota 0 znamená nikdy opakovat. Výchozí chování je nikdy nezopakovat. |
min_retry_interval_millis |
INT32 |
Volitelný minimální interval v milisekundách mezi spuštěním neúspěšného spuštění a následným opakovaným spuštěním. Výchozí chování je, že neúspěšná spuštění se okamžitě opakují. |
retry_on_timeout |
BOOL |
Volitelná politika určující, jestli se má úloha opakovat, když vyprší časový limit. Výchozí chování je neopakovat úlohu při vypršení časového limitu. |
schedule |
CronSchedule | Volitelný pravidelný plán pro tuto úlohu. Výchozí chování je, že se úloha spustí při aktivaci kliknutím na Spustit nyní v uživatelském rozhraní úloh nebo odesláním požadavku rozhraní API na runNow . |
max_concurrent_runs |
INT32 |
Volitelný parametr pro maximální povolený počet současně běžících úloh. Tuto hodnotu nastavte, pokud chcete mít možnost souběžně spouštět více spuštění stejné úlohy. To je užitečné například v případě, že svou úlohu spouštíte podle častého plánu a chcete povolit, aby se po sobě překrývala, nebo pokud chcete zahájit několik spuštění, která se liší svými vstupními parametry. Toto nastavení má vliv jenom na nová spuštění. Předpokládejme například, že souběžnost úlohy je 4 a existují 4 současná souběžná spuštění. Nastavení souběžnosti na 3 nezpůsobí zastavení žádných aktivních spuštění. Od té doby se však nová spuštění přeskočí, pokud nejsou méně než 3 aktivní spuštění. Tato hodnota nesmí překročit 1 000. Nastavení této hodnoty na 0 způsobí přeskočení všech nových spuštění. Výchozí chování je povolit pouze 1 souběžné spuštění. |
Struktura odpovědi
Název pole | Typ | Popis |
---|---|---|
job_id |
INT64 |
Kanonický identifikátor nově vytvořené úlohy. |
seznam
Koncový bod | Metoda HTTP |
---|---|
2.0/jobs/list |
GET |
Zobrazit seznam všech úloh
Příklad
Žádost
curl --netrc --request GET \
https://<databricks-instance>/api/2.0/jobs/list \
| jq .
Nahraďte <databricks-instance>
názvem instance pracovního prostoru Azure Databricks, například .
Tento příklad používá soubor .netrc a jq.
Odpověď
{
"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
}
]
}
Struktura odpovědi
Název pole | Typ | Popis |
---|---|---|
jobs |
Pole úlohy | Seznam úloh. |
Vymazat
Koncový bod | Metoda HTTP |
---|---|
2.0/jobs/delete |
POST |
Odstraňte úlohu a odešlete e-mail na adresy zadané v JobSettings.email_notifications
. Pokud byla úloha již odstraněna, nedojde k žádné akci. Po odebrání úlohy se v uživatelském rozhraní úloh ani v rozhraní API nezobrazí její podrobnosti ani historie spuštění. Po splnění této žádosti je zaručeno, že úloha bude odstraněna. Spuštění, která byla aktivní před přijetím tohoto požadavku, však mohou být stále aktivní. Budou ukončeny asynchronně.
Příklad
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/delete \
--data '{ "job_id": <job-id> }'
Nahrazení:
s názvem instance pracovního prostoru Azure Databricks , například . -
<job-id>
s ID úlohy, například123
.
Tento příklad používá soubor .netrc .
Struktura požadavku
Název pole | Typ | Popis |
---|---|---|
job_id |
INT64 |
Kanonický identifikátor úlohy, kterou chcete odstranit. Toto pole je povinné. |
získat
Koncový bod | Metoda HTTP |
---|---|
2.0/jobs/get |
GET |
Načtěte informace o jedné úloze.
Příklad
Žádost
curl --netrc --request GET \
'https://<databricks-instance>/api/2.0/jobs/get?job_id=<job-id>' \
| jq .
Nebo:
curl --netrc --get \
https://<databricks-instance>/api/2.0/jobs/get \
--data job_id=<job-id> \
| jq .
Nahrazení:
-
<databricks-instance>
s názvem instance pracovního prostoru Azure Databricks, napříkladadb-1234567890123456.7.azuredatabricks.net
. -
<job-id>
s ID úlohy, například123
.
Tento příklad používá soubor .netrc a jq.
Odpověď
{
"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
}
Struktura požadavku
Název pole | Typ | Popis |
---|---|---|
job_id |
INT64 |
Kanonický identifikátor úlohy, pro načtení informací o ní. Toto pole je povinné. |
Struktura odpovědi
Název pole | Typ | Popis |
---|---|---|
job_id |
INT64 |
Standardní identifikátor pro tuto práci. |
creator_user_name |
STRING |
Uživatelské jméno tvůrce. Pokud byl uživatel odstraněn, toto pole se do odpovědi nezahrne. |
settings |
JobSettings | Nastavení pro tuto úlohu a všechna jeho provádění. Tato nastavení je možné aktualizovat pomocí koncových bodů Reset nebo Update. |
created_time |
INT64 |
Čas vytvoření této úlohy v milisekundách epochy (milisekundy od 1. 1. 1970 UTC). |
resetování
Koncový bod | Metoda HTTP |
---|---|
2.0/jobs/reset |
POST |
Přepište všechna nastavení pro určitou úlohu. Pomocí koncového bodu aktualizace aktualizujte nastavení úlohy částečně.
Příklad
V tomto příkladu požadavku je úloha 2 identická s úlohou 1 v příkladu vytvoření .
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"
}
}
}
Nahrazení:
-
<databricks-instance>
s názvem instance pracovního prostoru Azure Databricks, napříkladadb-1234567890123456.7.azuredatabricks.net
. - Obsah
reset-job.json
s poli, která jsou vhodná pro vaše řešení.
Tento příklad používá soubor .netrc a jq.
Struktura požadavku
Název pole | Typ | Popis |
---|---|---|
job_id |
INT64 |
Kanonický identifikátor úlohy, která se má resetovat. Toto pole je povinné. |
new_settings |
JobSettings | Nová nastavení úlohy. Tato nastavení zcela nahrazují stará nastavení. Změny v poli JobSettings.timeout_seconds se použijí na aktivní procesy. Změny v jiných polích se použijí pouze pro budoucí zpracování. |
aktualizace
Koncový bod | Metoda HTTP |
---|---|
2.0/jobs/update |
POST |
Přidejte, změňte nebo odeberte konkrétní nastavení existující úlohy. Pomocí koncového bodu resetování přepište všechna nastavení úlohy.
Příklad
Tento příklad požadavku odebere knihovny a přidá nastavení e-mailových oznámení do úlohy 1, jak je definováno v příkladu create.
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"]
}
Nahrazení:
s názvem instance pracovního prostoru Azure Databricks , například . - Obsah
update-job.json
s poli, která jsou vhodná pro vaše řešení.
Tento příklad používá soubor .netrc a jq.
Struktura požadavku
Název pole | Typ | Popis |
---|---|---|
job_id |
INT64 |
Kanonický identifikátor úlohy, která se má aktualizovat. Toto pole je povinné. |
new_settings |
JobSettings | Nová nastavení pro úlohu. Pole nejvyšší úrovně specifikovaná v new_settings , kromě polí (arrays), jsou zcela nahrazena. Pole se sloučí na základě příslušných klíčových polí, například task_key nebojob_cluster_key a položky pole se stejným klíčem jsou zcela nahrazeny. S výjimkou slučování polí není podporována částečná aktualizace vnořených polí.Změny v poli JobSettings.timeout_seconds se použijí na aktivní procesy. Změny v jiných polích se použijí pouze pro další budoucí spouštění. |
fields_to_remove |
Jedno pole STRING |
Odeberte pole nejvyšší úrovně v nastavení úlohy. Odebrání vnořených polí není podporováno, s výjimkou položek z polí tasks a job_clusters . Toto je například platný argument pro toto pole:["libraries", "schedule", "tasks/task_1", "job_clusters/Default"] Toto pole je nepovinné. |
Spustit nyní
Důležité
- Pracovní prostor je omezený na 1 000 souběžných spuštění úloh. Když si vyžádáte spuštění, které nejde zahájit okamžitě, vrátí se odpověď
429 Too Many Requests
. - Počet úloh, které může pracovní prostor za hodinu vytvořit, je limitován na 10 000 (zahrnuje „odesílání úloh“). Tento limit má vliv také na úlohy vytvořené rozhraním REST API a pracovními postupy poznámkových bloků.
- Pracovní prostor může obsahovat až 12000 uložených úloh.
- Úloha může obsahovat až 100 úkolů.
Koncový bod | Metoda HTTP |
---|---|
2.0/jobs/run-now |
POST |
Spusťte nyní úlohu a vraťte run_id
spuštěného běhu.
Tip
Pokud vyvoláte Vytvořit společně s Spustit nyní, můžete místo toho použít koncový bod Runs submit, který vám umožní odeslat pracovní zátěž přímo bez nutnosti vytvářet úlohu.
Příklad
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/run-now \
--data @run-job.json \
| jq .
run-job.json
:
Příklad požadavku na úlohu poznámkového bloku:
{
"job_id": 1,
"notebook_params": {
"name": "john doe",
"age": "35"
}
}
Příklad požadavku na úlohu JAR:
{
"job_id": 2,
"jar_params": ["john doe", "35"]
}
Nahrazení:
-
<databricks-instance>
s názvem instance pracovního prostoru Azure Databricks, napříkladadb-1234567890123456.7.azuredatabricks.net
. - Obsah
run-job.json
s poli vhodnými pro vaše řešení.
Tento příklad používá soubor .netrc a jq.
Struktura požadavku
Název pole | Typ | Popis |
---|---|---|
job_id |
INT64 |
|
jar_params |
Pole STRING |
Seznam parametrů pro úlohy s JAR úlohami, například "jar_params": ["john doe", "35"] . Parametry se použijí k vyvolání hlavní funkce hlavní třídy zadané v úloze Spark JAR. Pokud není zadáno u run-now , použije se jako výchozí prázdný seznam. jar_params nelze zadat ve spojení s notebook_params. Reprezentace json tohoto pole (tj. {"jar_params":["john doe","35"]} ) nesmí překročit 10 000 bajtů. |
notebook_params |
Mapa města ParamPair | Mapa klíčů a hodnot pro úlohy s úkolem v poznámkovém bloku, např."notebook_params": {"name": "john doe", "age": "35"} . Mapa se předá do poznámkového bloku a je přístupná prostřednictvím funkce dbutils.widgets.get .Pokud není zadané při run-now , aktivované spuštění používá základní parametry úlohy.Nelze zadat notebook_params ve spojení s jar_params. Reprezentace tohoto pole ve formátu JSON (tj. {"notebook_params":{"name":"john doe","age":"35"}} ) nesmí překročit 10 000 bajtů. |
python_params |
Pole STRING |
Seznam parametrů pro úlohy s Pythonovými úlohami, např. "python_params": ["john doe", "35"] Parametry se předají souboru Pythonu jako parametry příkazového řádku. Pokud je zadáno run-now , přepíše parametry zadané v nastavení úlohy. Reprezentace json tohoto pole (tj. {"python_params":["john doe","35"]} ) nesmí překročit 10 000 bajtů. |
spark_submit_params |
Pole prvků STRING |
Seznam parametrů pro úlohy s úlohou odeslání Sparku, např."spark_submit_params": ["--class", "org.apache.spark.examples.SparkPi"] . Parametry se předají skriptu spark-submit jako parametry příkazového řádku. Pokud je zadáno run-now , přepíše parametry zadané v nastavení úlohy. Reprezentace JSON tohoto pole nesmí překročit 10 000 bajtů. |
idempotency_token |
STRING |
Volitelný token, který zaručuje idempotenci požadavků na spuštění úloh. Pokud již existuje spuštění s poskytnutým tokenem, požadavek nevytvoří nové spuštění, ale místo toho vrátí ID existujícího spuštění. Pokud se odstraní spuštění s poskytnutým tokenem, vrátí se chyba. Pokud zadáte token idempotency, můžete při selhání opakovat, dokud požadavek nebude úspěšný. Azure Databricks zaručuje, že s tímto tokenem idempotence se spustí jediný běh. Tento token musí mít maximálně 64 znaků. Další informace viz Jak zajistit idempotenci úloh. |
Struktura odpovědi
Název pole | Typ | Popis |
---|---|---|
run_id |
INT64 |
Globálně jedinečné ID nově spuštěného běhu. |
number_in_job |
INT64 |
Číslo pořadí tohoto spuštění ve všech spuštěních úlohy. |
Odeslat spuštění
Důležité
- Pracovní prostor je omezený na 1 000 souběžných spuštění úloh. Když si vyžádáte spuštění, které nejde zahájit okamžitě, vrátí se odpověď
429 Too Many Requests
. - Počet úloh, které může pracovní prostor za hodinu vytvořit, je limitován na 10 000 (zahrnuje „odesílání úloh“). Tento limit má vliv také na úlohy vytvořené rozhraním REST API a pracovními postupy poznámkových bloků.
- Pracovní prostor může obsahovat až 12000 uložených úloh.
- Úloha může obsahovat až 100 úkolů.
Koncový bod | Metoda HTTP |
---|---|
2.0/jobs/runs/submit |
POST |
Odešlete jednorázový úkol. Tento koncový bod umožňuje odeslat úlohu přímo bez vytvoření úlohy.
jobs/runs/get
Pomocí rozhraní API zkontrolujte stav spuštění po odeslání úlohy.
Příklad
Žádost
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"
}
}
Nahrazení:
-
<databricks-instance>
s názvem instance pracovního prostoru Azure Databricks, napříkladadb-1234567890123456.7.azuredatabricks.net
. - Obsah
submit-job.json
s poli, které jsou vhodné pro vaše řešení.
Tento příklad používá soubor .netrc a jq.
Odpověď
{
"run_id": 123
}
Struktura požadavku
Důležité
- Při spuštění úlohy v novém clusteru úloh se tato úloha považuje za automatizovanou výpočetní úlohu Jobs Compute, která podléhá cenám za Jobs Compute.
- Když spustíte úlohu ve stávajícím všestranném clusteru, považuje se za výpočetní úlohu všestranného využití (interaktivní) podle cenové politiky pro všestranné výpočty.
Název pole | Typ | Popis |
---|---|---|
existing_cluster_id NEBO new_cluster |
STRING OR NewCluster |
Pokud existing_cluster_id, ID existujícího clusteru, který se použije pro všechna spuštění této úlohy. Při spouštění úloh v existujícím clusteru možná budete muset cluster restartovat ručně, pokud přestane reagovat. Pro zajištění vyšší spolehlivosti doporučujeme spouštět úlohy na nových clusterech. Pokud new_cluster, popis clusteru, který se vytvoří pro každé spuštění. Pokud zadáte PipelineTask, může být toto pole prázdné. |
notebook_task NEBO spark_jar_task spark_python_task NEBO spark_submit_task pipeline_task NEBO run_job_task |
NotebookTask NEBO SparkJarTask NEBO SparkPythonTask NEBO SparkSubmitTask NEBO PipelineTask NEBO RunJobTask | Pokud jde o notebook_task, znamená to, že tato úloha má spustit poznámkový blok. Toto pole nesmí být zadáno ve spojení s spark_jar_task. Pokud spark_jar_task, znamená to, že by tato úloha měla spustit soubor JAR. Pokud spark_python_task, znamená to, že by tato úloha měla spustit soubor Pythonu. Je-li spark_submit_task, znamená to, že tuto úlohu by měl spustit skript odeslání pro Spark. Pokud pipeline_task, znamená to, že by tato úloha měla spustit kanál DLT. Pokud run_job_task, znamená to, že by tato úloha měla spustit jinou úlohu. |
run_name |
STRING |
Volitelný název pro běh. Výchozí hodnota je Untitled . |
webhook_notifications |
WebhookNotifications | Volitelná sada systémových destinací, které upozorňují na začátek, dokončení nebo selhání této úlohy. |
notification_settings |
Nastavení oznámení o práci | Volitelná nastavení oznámení, jež se používají při odesílání oznámení každému z webhook_notifications během tohoto spuštění. |
libraries |
Pole knihovny | Volitelný seznam knihoven, které se mají nainstalovat do clusteru, který spustí úlohu. Výchozí hodnota je prázdný seznam. |
timeout_seconds |
INT32 |
U každého spuštění této úlohy je použit volitelný časový limit. Výchozí chování nemá žádný časový limit. |
idempotency_token |
STRING |
Volitelný token, který zaručuje idempotenci požadavků na spuštění úloh. Pokud již existuje spuštění s poskytnutým tokenem, požadavek nevytvoří nové spuštění, ale místo toho vrátí ID existujícího spuštění. Pokud se odstraní spuštění s poskytnutým tokenem, vrátí se chyba. Pokud zadáte token idempotency, můžete při selhání opakovat, dokud požadavek nebude úspěšný. Azure Databricks zaručuje, že s daným tokenem idempotence se spustí přesně jen jeden proces. Tento token musí mít maximálně 64 znaků. Další informace naleznete v tématu Jak zajistit idempotenci úloh. |
Struktura odpovědi
Název pole | Typ | Popis |
---|---|---|
run_id |
INT64 |
Kanonický identifikátor nově odeslaného procesu. |
seznam běhů
Koncový bod | Metoda HTTP |
---|---|
2.0/jobs/runs/list |
GET |
Seřaďte běhy v sestupném pořadí podle času spuštění.
Poznámka:
Běhy se automaticky odeberou po 60 dnech. Pokud chcete odkazovat na ně po dobu delší než 60 dnů, měli byste před vypršením jejich platnosti uložit staré výsledky spuštění. Pokud chcete exportovat pomocí uživatelského rozhraní, podívejte se na výsledky spuštění úlohy exportu. Pokud chcete exportovat pomocí rozhraní API úloh, přečtěte si téma Spuštění exportu.
Příklad
Žádost
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 .
Nebo:
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 .
Nahrazení:
-
<databricks-instance>
pomocí názvu instance pracovního prostoru Azure Databricks, napříkladadb-1234567890123456.7.azuredatabricks.net
. -
<job-id>
s ID úlohy, například123
. - "
<true-false>
strue
nebofalse
". - s
<offset>
offset
hodnotou. - s
<limit>
limit
hodnotou. - s
<run-type>
run_type
hodnotou.
Tento příklad používá soubor .netrc a jq.
Odpověď
{
"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
}
Struktura požadavku
Název pole | Typ | Popis |
---|---|---|
active_only NEBO completed_only |
BOOL NEBO BOOL |
Pokud je active_only true , zahrnují se pouze aktivní spuštění do výsledků; pokud ne, zobrazí se seznam aktivních i dokončených spuštění. Aktivní spuštění je spuštění ve stavu PENDING , RUNNING nebo TERMINATING RunLifecycleState. Toto pole nemůže být true , pokud je dokončeno pouze true .Pokud je completed_only true , do výsledků se zahrnou jenom dokončená spuštění. V opačném případě jsou zahrnuty jak aktivní, tak dokončená spuštění. Toto pole nemůže být true , pokud je active_only true . |
job_id |
INT64 |
Práce, pro kterou chcete zobrazit běhy. Pokud je tato možnost vynechána, služba Úlohy zobrazí seznam spuštění ze všech úloh. |
offset |
INT32 |
Posunutí prvního spuštění, které se má vrátit ve vztahu k nejnovějšímu spuštění. |
limit |
INT32 |
Počet běhů, které se mají vrátit. Tato hodnota by měla být větší než 0 a menší než 1 000. Výchozí hodnota je 20. Pokud požadavek určuje limit 0, služba místo toho použije maximální limit. |
run_type |
STRING |
Typ výsledků, které se mají vrátit. Popis typů spuštění najdete v tématu Spuštění. |
Struktura odpovědi
Název pole | Typ | Popis |
---|---|---|
runs |
Pole spustit | Seznam spuštění, od nejnovějších po nejméně. |
has_more |
BOOL |
Pokud je to pravda, další spuštění odpovídající zadanému filtru jsou k dispozici pro zobrazení. |
Běhy probíhají
Koncový bod | Metoda HTTP |
---|---|
2.0/jobs/runs/get |
GET |
Načtěte metadata spuštění.
Poznámka:
Běhy se automaticky odeberou po 60 dnech. Pokud chcete odkazovat na ně po dobu delší než 60 dnů, měli byste před vypršením jejich platnosti uložit staré výsledky spuštění. Pokud chcete exportovat pomocí uživatelského rozhraní, podívejte se na výsledky spuštění úlohy exportu. Chcete-li exportovat pomocí rozhraní API úloh, podívejte se na Runs export.
Příklad
Žádost
curl --netrc --request GET \
'https://<databricks-instance>/api/2.0/jobs/runs/get?run_id=<run-id>' \
| jq .
Nebo:
curl --netrc --get \
https://<databricks-instance>/api/2.0/jobs/runs/get \
--data run_id=<run-id> \
| jq .
Nahrazení:
-
<databricks-instance>
s názvem instance pracovního prostoru Azure Databricks, napříkladadb-1234567890123456.7.azuredatabricks.net
. -
<run-id>
s ID spuštění, například123
.
Tento příklad používá soubor .netrc a jq.
Odpověď
{
"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"
}
Struktura požadavku
Název pole | Typ | Popis |
---|---|---|
run_id |
INT64 |
Kanonický identifikátor spuštění, pro který se mají načíst metadata. Toto pole je povinné. |
Struktura odpovědi
Název pole | Typ | Popis |
---|---|---|
job_id |
INT64 |
Kanonický identifikátor úlohy, která toto spuštění obsahuje. |
run_id |
INT64 |
Kanonický identifikátor spuštění. Tento identifikátor je jedinečný pro všechny běhy všech úloh. |
number_in_job |
INT64 |
Pořadové číslo tohoto spuštění mezi všemi ostatními spuštěními úlohy. Tato hodnota začíná na 1. |
original_attempt_run_id |
INT64 |
Pokud se jedná o opakování předchozího pokusu o spuštění, obsahuje toto pole run_id původního pokusu; jinak je to stejné jako run_id. |
state |
RunState | Výsledek a stavy životního cyklu procesu. |
schedule |
CronSchedule | Plán cron, který toto spuštění aktivoval, pokud ho aktivoval pravidelný plánovač. |
task |
JobTask | Úloha prováděná spuštěním, pokud nějaká existuje. |
cluster_spec |
ClusterSpec | Snímek specifikace úlohy clusteru z doby vytvoření tohoto spuštění. |
cluster_instance |
Klusterová instance | Cluster použitý pro toto spuštění. Pokud je spuštění určeno k použití nového clusteru, toto pole bude nastaveno, jakmile služba úloh požádá o cluster pro spuštění. |
overriding_parameters |
RunParameters | Parametry použité pro spuštění tohoto běhu. |
start_time |
INT64 |
Čas, kdy bylo toto spuštění zahájeno, ve formátu epochálních milisekund (milisekundy od časové epochy 1. 1. 1970 UTC). Nemusí se jednat o okamžik spuštění úlohy; například pokud je úloha naplánována k běhu na novém clusteru, jedná se o čas, kdy je vydáno volání na vytvoření clusteru. |
end_time |
INT64 |
Čas ukončení tohoto běhu v epoch milisekundách (milisekundy od 1. 1. 1970 UTC). Pokud je úloha stále spuštěná, bude toto pole nastaveno na hodnotu 0. |
setup_duration |
INT64 |
Doba v milisekundách trvala nastavení clusteru. U běhů, které běží na nových clusterech, je to čas vytvoření clusteru; pro běhy, které běží na existujících clusterech, by měl tento čas být velmi krátký. Celková doba trvání běhu je součet setup_duration execution_duration , a cleanup_duration . Pole setup_duration je nastaveno na hodnotu 0 pro spuštění úloh s více úkoly. Celková doba trvání víceúlohové úlohy je hodnotarun_duration pole. |
execution_duration |
INT64 |
Čas v milisekundách, který trvalo provedení příkazů v JAR souboru nebo poznámkovém bloku, dokud nebyly dokončeny, selhaly, vypršel časový limit, byly zrušeny nebo došlo k neočekávané chybě. Celková doba trvání běhu je součet setup_duration , execution_duration , acleanup_duration . Pole execution_duration je nastaveno na hodnotu 0 pro spuštění úloh s více úkoly. Celková doba trvání víceúkolové úlohy je hodnota pole run_duration . |
cleanup_duration |
INT64 |
Doba v milisekundách, která byla potřebná k ukončení clusteru a k vyčištění všech přidružených artefaktů. Celková doba trvání běhu je součet setup_duration , execution_duration a cleanup_duration . Pole cleanup_duration je nastaveno na hodnotu 0 pro spuštění úloh s více úkoly. Celková doba trvání víceúkolové úlohy je hodnota pole run_duration . |
run_duration |
INT64 |
Doba v milisekundách, kterou trval běh úlohy a dokončení všech jejích oprav. Toto pole je nastaveno pouze pro spuštění úloh s více úkoly a nikoli pro jednotlivá spuštění úkolů. Doba trvání spuštění úlohy je součet všech částí.setup_duration , execution_duration a cleanup_duration . |
trigger |
Typ spouště | Typ spouštěče, který toto spuštění aktivoval. |
creator_user_name |
STRING |
Uživatelské jméno tvůrce. Pokud byl uživatel odstraněn, toto pole se do odpovědi nezahrne. |
run_page_url |
STRING |
Adresa URL na stránku s podrobnostmi běhu. |
Spuštění exportu
Koncový bod | Metoda HTTP |
---|---|
2.0/jobs/runs/export |
GET |
Exportujte a získejte úkol spuštění úlohy.
Poznámka:
Exportovat je možné pouze běhy poznámkového bloku ve formátu HTML. Export jiných typů provozu selže.
Příklad
Žádost
curl --netrc --request GET \
'https://<databricks-instance>/api/2.0/jobs/runs/export?run_id=<run-id>' \
| jq .
Nebo:
curl --netrc --get \
https://<databricks-instance>/api/2.0/jobs/runs/export \
--data run_id=<run-id> \
| jq .
Nahrazení:
-
<databricks-instance>
s názvem instance pracovního prostoru Azure Databricks, napříkladadb-1234567890123456.7.azuredatabricks.net
. -
<run-id>
s ID spuštění, například123
.
Tento příklad používá soubor .netrc a jq.
Odpověď
{
"views": [
{
"content": "<!DOCTYPE html><html><head>Head</head><body>Body</body></html>",
"name": "my-notebook",
"type": "NOTEBOOK"
}
]
}
Pokud chcete extrahovat poznámkový blok HTML z odpovědi JSON, stáhněte a spusťte tento skript Pythonu.
Poznámka:
Tělo poznámkového bloku v objektu __DATABRICKS_NOTEBOOK_MODEL
je kódované.
Struktura požadavku
Název pole | Typ | Popis |
---|---|---|
run_id |
INT64 |
Kanonický identifikátor běhu. Toto pole je povinné. |
views_to_export |
Pohledy k exportu | Jaká zobrazení chcete exportovat (KÓD, ŘÍDICÍ PANELY nebo VŠE). Výchozí hodnota je CODE. |
Struktura odpovědi
Název pole | Typ | Popis |
---|---|---|
views |
Pole položek ViewItem | Exportovaný obsah ve formátu HTML (jeden pro každou položku zobrazení). |
Běhy se ruší
Koncový bod | Metoda HTTP |
---|---|
2.0/jobs/runs/cancel |
POST |
Zrušte spuštění úlohy. Vzhledem k tomu, že je spuštění zrušeno asynchronně, může být spuštění stále aktivní, i když je tento požadavek dokončen. Běh bude brzy ukončen. Pokud je spuštění již v terminálu life_cycle_state
, tato metoda je no-op.
Tento koncový bod ověří platnost parametru run_id
a pro neplatné parametry vrátí stavový kód HTTP 400.
Příklad
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/runs/cancel \
--data '{ "run_id": <run-id> }'
Nahrazení:
-
<databricks-instance>
s názvem instance pracovního prostoru Azure Databricks, napříkladadb-1234567890123456.7.azuredatabricks.net
. -
<run-id>
s ID spuštění, například123
.
Tento příklad používá soubor .netrc .
Struktura požadavku
Název pole | Typ | Popis |
---|---|---|
run_id |
INT64 |
Kanonický identifikátor běžícího procesu, který chcete zrušit. Toto pole je povinné. |
Běhy zruší všechno
Koncový bod | Metoda HTTP |
---|---|
2.0/jobs/runs/cancel-all |
POST |
Zrušte všechna aktivní spuštění úlohy. Vzhledem k tomu, že je spuštění zrušeno asynchronně, to nebrání zahájení nových spouštění.
Tento koncový bod ověří platnost parametru job_id
a pro neplatné parametry vrátí stavový kód HTTP 400.
Příklad
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/runs/cancel-all \
--data '{ "job_id": <job-id> }'
Nahrazení:
-
<databricks-instance>
s názvem instance pracovního prostoru Azure Databricks, napříkladadb-1234567890123456.7.azuredatabricks.net
. -
<job-id>
s ID úlohy, například123
.
Tento příklad používá soubor .netrc .
Struktura požadavku
Název pole | Typ | Popis |
---|---|---|
job_id |
INT64 |
Kanonický identifikátor úlohy, který slouží ke zrušení všech jejích spuštění. Toto pole je povinné. |
Výstupy běhů se zobrazují
Koncový bod | Metoda HTTP |
---|---|
2.0/jobs/runs/get-output |
GET |
Načtěte výstup a metadata jednoho běhu úlohy. Když úloha v poznámkovém bloku vrátí hodnotu prostřednictvím volání dbutils.notebook.exit(), můžete tuto hodnotu načíst pomocí tohoto koncového bodu. Azure Databricks omezuje toto rozhraní API tak, aby vrátilo prvních 5 MB výstupu. Pokud chcete vrátit větší výsledek, můžete výsledky úloh uložit do služby cloudového úložiště.
Tento koncový bod ověří platnost parametru run_id
a pro neplatné parametry vrátí stavový kód HTTP 400.
Záznamy se automaticky odeberou po 60 dnech. Pokud chcete odkazovat na ně po dobu delší než 60 dnů, měli byste před vypršením jejich platnosti uložit staré výsledky spuštění. Pokud chcete exportovat pomocí uživatelského rozhraní, podívejte se na výsledky spuštění úlohy exportu. Pokud chcete exportovat pomocí rozhraní Jobs API, viz Spuštění exportu.
Příklad
Žádost
curl --netrc --request GET \
'https://<databricks-instance>/api/2.0/jobs/runs/get-output?run_id=<run-id>' \
| jq .
Nebo:
curl --netrc --get \
https://<databricks-instance>/api/2.0/jobs/runs/get-output \
--data run_id=<run-id> \
| jq .
Nahrazení:
-
<databricks-instance>
s názvem instance pracovního prostoru Azure Databricks, napříkladadb-1234567890123456.7.azuredatabricks.net
. -
<run-id>
s ID spuštění, například123
.
Tento příklad používá soubor .netrc a jq.
Odpověď
{
"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()"
}
}
Struktura požadavku
Název pole | Typ | Popis |
---|---|---|
run_id |
INT64 |
Kanonický identifikátor běhu. U úlohy s více úkoly se jedná o run_id spuštění úlohy. Podívejte se na Výstupy spuštění. Toto pole je povinné. |
Struktura odpovědi
Název pole | Typ | Popis |
---|---|---|
notebook_output NEBO error |
NotebookOutput OR STRING |
Pokud notebook_output, výstup úlohy poznámkového bloku( pokud je k dispozici). Úloha poznámkového bloku, která se ukončí (úspěšně nebo se selháním) bez volánídbutils.notebook.exit() se považuje za prázdný výstup. Toto pole se nastaví, ale jeho výsledná hodnota bude prázdná.Pokud dojde k chybě, zobrazí se chybová zpráva označující, proč výstup není k dispozici. Zpráva je nestrukturovaná a její přesný formát se může změnit. |
metadata |
Spustit | Všechny podrobnosti o spuštění s výjimkou jeho výstupu. |
Spuštěné úlohy se odstraní
Koncový bod | Metoda HTTP |
---|---|
2.0/jobs/runs/delete |
POST |
Smazat neaktivní běh. Vrátí chybu, pokud je běh aktivní.
Příklad
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/runs/delete \
--data '{ "run_id": <run-id> }'
Nahrazení:
-
<databricks-instance>
s názvem instance pracovního prostoru Azure Databricks, jako napříkladadb-1234567890123456.7.azuredatabricks.net
. -
<run-id>
s ID spuštění, například123
.
Tento příklad používá soubor .netrc .
Struktura požadavku
Název pole | Typ | Popis |
---|---|---|
run_id |
INT64 |
Kanonický identifikátor spuštění, pro který se mají načíst metadata. |
Datové struktury
V této části:
- ABFSSStorageInfo
- Automatické škálování
- AzureAttributes
- Dostupnost Azure
- Klusterová instance
- ClusterLogConf
- ClusterSpec
- ClusterTag
- CronSchedule
- DbfsStorageInfo
- FileStorageInfo
- InitScriptInfo
- Práce
- OznámeníPracíEmailem
- Nastavení oznámení o práci
- JobSettings
- JobTask
- JobsHealthRule
- Pravidla zdraví při práci
- Knihovna
- MavenLibrary
- NewCluster
- NotebookOutput
- Úkol pro notebook
- ParamPair
- PipelineTask
- PythonPyPiLibrary
- RCranLibrary
- Spustit
- RunJobTask
- RunLifeCycleState
- RunParameters
- RunResultState
- Provozní stav
- SparkConfPair
- SparkEnvPair
- SparkJarTask
- SparkPythonTask
- SparkSubmitTask
- Typ spouště
- ViewItem
- Typ zobrazení
- Pohledy k exportu
- Webhook
- WebhookNotifications
- WorkspaceStorageInfo
ABFSSStorageInfo
Informace o úložišti Azure Data Lake Storage (ADLS)
Název pole | Typ | Popis |
---|---|---|
destination |
STRING |
Místo určení souboru. Příklad: abfss://... |
Automatické škálování
Rozsah definující minimální a maximální počet pracovníků clusteru.
Název pole | Typ | Popis |
---|---|---|
min_workers |
INT32 |
Minimální počet pracovníků, na který může cluster snížit, když není plně využit. Je to také počáteční počet pracovníků, které bude mít cluster po vytvoření. |
max_workers |
INT32 |
Maximální počet pracovníků, ke kterému může klastr při přetížení rozšířit. max_workers musí být výhradně větší než min_workers. |
AzureAttributes
Atributy nastavené během vytváření clusteru související s Azure
Název pole | Typ | Popis |
---|---|---|
first_on_demand |
INT32 |
První first_on_demand uzly clusteru se umístí na instance na vyžádání. Tato hodnota musí být větší než 0, jinak ověření vytvoření clusteru selže. Pokud je tato hodnota větší nebo rovna aktuální velikosti clusteru, všechny uzly se umístí na instance na vyžádání. Pokud je tato hodnota menší než aktuální velikost clusteru, first_on_demand uzly se umístí na instance na vyžádání a zbytek se umístí na instance dostupnosti. Tato hodnota nemá vliv na velikost clusteru a nemůže být během životnosti clusteru změněna. |
availability |
Dostupnost Azure | Typ dostupnosti použitý pro všechny následující uzly po těch first_on_demand . |
spot_bid_max_price |
DOUBLE |
Maximální cena za nabídku použitá pro spotové instance Azure. Tuto hodnotu můžete nastavit na vyšší nebo rovnou aktuální spotové ceně. Můžete také nastavit hodnotu -1 (výchozí), která určuje, že instanci nelze vyřadit na základě ceny. Cena instance bude aktuální cena za spotové instance nebo za standardní instance. Historické ceny a sazby vyřazení můžete zobrazit na webu Azure Portal. |
Dostupnost Azure
Chování typu dostupnosti instance Azure.
Typ | Popis |
---|---|
SPOT_AZURE |
Používejte spotové instance. |
ON_DEMAND_AZURE |
Používejte instance na vyžádání. |
SPOT_WITH_FALLBACK_AZURE |
Pokud možno používejte spotové instance, ale vraťte se k instancím na vyžádání, pokud spotové instance nelze získat (například pokud jsou spotové ceny Azure příliš vysoké nebo jsou mimo kvótu). Nevztahuje se na dostupnost bazénu. |
Klastrová instance
Identifikátory clusteru a kontextu Spark používané během běhu. Tyto dvě hodnoty společně identifikují kontext spuštění po celou dobu.
Název pole | Typ | Popis |
---|---|---|
cluster_id |
STRING |
Kanonický identifikátor klastru, který je použit při spuštění. Toto pole je vždy k dispozici pro provádění na existujících clusterech. Pro spuštění na nových clusterech bude po vytvoření clusteru k dispozici. Tuto hodnotu lze použít k zobrazení protokolů přechodem na /#setting/sparkui/$cluster_id/driver-logs . Po dokončení spuštění budou protokoly nadále dostupné.Odpověď nebude obsahovat toto pole, pokud identifikátor ještě není k dispozici. |
spark_context_id |
STRING |
Kanonický identifikátor kontextu Spark, který je použit při spuštění. Toto pole se vyplní po zahájení spuštění. Tuto hodnotu lze použít k zobrazení uživatelského rozhraní Sparku tak, že přejdete na /#setting/sparkui/$cluster_id/$spark_context_id . Po dokončení spuštění bude uživatelské rozhraní Sparku dál dostupné.Odpověď nebude obsahovat toto pole, pokud identifikátor ještě není k dispozici. |
ClusterLogConf
Cesta k protokolu clusteru
Název pole | Typ | Popis |
---|---|---|
dbfs |
Umístění DBFS záznamů clusteru Cíl musí být zadaný. Například { "dbfs" : { "destination" : "dbfs:/home/cluster_log" } } |
Specifikace Clusteru
Důležité
- Při spuštění úlohy v novém clusteru úloh se tato úloha považuje za pracovní úlohu typu Jobs Compute (automatizovanou), která podléhá cenovému modelu Jobs Compute.
- Když spustíte úlohu ve stávajícím všestranném clusteru, považuje se za výpočetní úlohu všestranného využití (interaktivní) podle cenové politiky pro všestranné výpočty.
Název pole | Typ | Popis |
---|---|---|
existing_cluster_id NEBO new_cluster |
STRING OR NewCluster |
Pokud existing_cluster_id, ID existujícího clusteru, který se použije pro všechna spuštění této úlohy. Při spouštění úloh v existujícím clusteru možná budete muset cluster restartovat ručně, pokud přestane reagovat. Pro větší spolehlivost doporučujeme spouštět úlohy v nových clusterech. Pokud new_cluster, popis clusteru, který se vytvoří pro každé spuštění. Pokud zadáte PipelineTask, může být toto pole prázdné. |
libraries |
Pole knihovny | Volitelný seznam knihoven, které se mají nainstalovat do clusteru, který spustí úlohu. Výchozí hodnota je prázdný seznam. |
ClusterTag
Definice značky clusteru
Typ | Popis |
---|---|
STRING |
Klíč značky. Klíč musí:
|
STRING |
Hodnota značky. Délka hodnoty musí být menší nebo rovna 256 znakům UTF-8. |
CronSchedule
Název pole | Typ | Popis |
---|---|---|
quartz_cron_expression |
STRING |
Výraz Cron využívající syntaxi Quartz, který popisuje plán úlohy. Podrobnosti najdete v tématu Cron Trigger. Toto pole je povinné. |
timezone_id |
STRING |
ID časového pásma Java. Plán úlohy bude vyřešen s ohledem na toto časové pásmo. Podrobnosti najdete v Java TimeZone. Toto pole je povinné. |
pause_status |
STRING |
Určete, jestli je tento plán pozastavený nebo ne. Buď "POZASTAVENO" nebo "ODPOZASTAVENO". |
DbfsStorageInfo
Informace o úložišti DBFS
Název pole | Typ | Popis |
---|---|---|
destination |
STRING |
Cíl DBFS. Příklad: dbfs:/my/path |
FileStorageInfo
Informace o úložišti souborů
Poznámka:
Tento typ umístění je k dispozici pouze pro clustery nastavené pomocí služby Databricks Container Services.
Název pole | Typ | Popis |
---|---|---|
destination |
STRING |
Místo určení souboru. Příklad: file:/my/file.sh |
InitScriptInfo
Cesta ke inicializačnímu skriptu
Pokyny k používání inicializačních skriptů se službou Databricks Container Services najdete v tématu Použití inicializačního skriptu.
Poznámka:
Typ úložiště souborů (název pole: file
) je k dispozici pouze pro clustery nastavené pomocí služby Databricks Container Services. Viz FileStorageInfo.
Název pole | Typ | Popis |
---|---|---|
workspace NEBO dbfs (zastaralé)NEBO abfss |
WorkspaceStorageInfo DbfsStorageInfo (zastaralé) ABFSSStorageInfo |
Umístění skriptu `init` pracovního prostoru Cíl musí být zadaný. Příklad:{ "workspace" : { "destination" : "/Users/someone@domain.com/init_script.sh" } } (Zastaralé) Umístění DBFS inicializačního skriptu Cíl musí být zadaný. Příklad: { "dbfs" : { "destination" : "dbfs:/home/init_script" } } Umístění inicializačního skriptu ve službě Azure Data Lake Storage (ADLS). Cíl musí být zadaný. Například { "abfss": { "destination" : "abfss://..." } } |
Práce
Název pole | Typ | Popis |
---|---|---|
job_id |
INT64 |
Kanonický identifikátor pro tuto úlohu. |
creator_user_name |
STRING |
Uživatelské jméno tvůrce. Toto pole se do odpovědi nezahrne, pokud už byl uživatel odstraněn. |
run_as |
STRING |
Uživatelské jméno, pod kterým bude úloha spuštěna.
run_as je založena na aktuálním nastavení úlohy a pokud je řízení přístupu k úloze zakázáno, je nastavena na tvůrce úlohy, nebo na is_owner povolení, pokud je řízení přístupu k úloze povoleno. |
settings |
JobSettings | Nastavení pro tuto úlohu a všechna její spuštění. Tato nastavení je možné aktualizovat pomocí resetJob metody. |
created_time |
INT64 |
Čas vytvoření této úlohy v milisekundách epochy (milisekundy od 1. 1. 1970 UTC). |
Pracovní e-mailová oznámení
Důležité
Pole on_start, on_success a on_failure přijímají pouze znaky latinky (znaková sada ASCII). Použití znaků jiného typu než ASCII vrátí chybu. Příklady neplatných znaků, které nejsou ASCII, jsou čínské, japonské kanji a emoji.
Název pole | Typ | Popis |
---|---|---|
on_start |
Pole STRING |
Seznam e-mailových adres, které mají být oznámeny při zahájení spuštění. Pokud není zadáno při vytváření, resetování nebo aktualizaci úlohy, seznam je prázdný a oznámení se neodesílají. |
on_success |
Pole STRING |
Seznam e-mailových adres, které mají být upozorněny po úspěšném dokončení spuštění. Spuštění se považuje za úspěšně dokončené, pokud končí s TERMINATED life_cycle_state a SUCCESSFUL result_state . Pokud není zadáno při vytváření, resetování nebo aktualizaci úlohy, seznam je prázdný a oznámení se neodesílají. |
on_failure |
Pole typu STRING |
Seznam e-mailových adres, které budou upozorněny v případě neúspěšného dokončení úlohy. Spuštění je považováno za neúspěšné, pokud se ukončí s INTERNAL_ERROR life_cycle_state nebo SKIPPED , FAILED nebo TIMED_OUT stav_výsledku. Pokud není zadaný při vytváření úlohy, resetování nebo aktualizaci seznamu je prázdný a oznámení se neodesílají. |
on_duration_warning_threshold_exceeded |
Pole STRING |
Seznam e-mailových adres, které mají být oznámeny, když doba trvání běhu překročí prahovou hodnotu zadanou pro RUN_DURATION_SECONDS metriku health v poli. Pokud v RUN_DURATION_SECONDS poli pro úlohu není zadané žádné pravidlo metrikyhealth , oznámení se neodesílají. |
no_alert_for_skipped_runs |
BOOL |
Je-li to pravda, neposílejte e-mail příjemcům uvedeným v on_failure , pokud je spuštění vynecháno. |
NastaveníOznámeníPráce
Název pole | Typ | Popis |
---|---|---|
no_alert_for_skipped_runs |
BOOL |
Pokud je pravda, neodesílejte oznámení příjemcům zadaným v on_failure případě, že je spuštění vynecháno. |
no_alert_for_canceled_runs |
BOOL |
Pokud je pravda, neodesílejte oznámení příjemcům zadaným v on_failure případě zrušení spuštění. |
alert_on_last_attempt |
BOOL |
Pokud je pravda, neodesílejte oznámení příjemcům zadaným on_start pro opakování spuštění a neodesílejte oznámení příjemcům zadaným on_failure do posledního opakování spuštění. |
Nastavení úloh
Důležité
- Když spustíte úlohu na novém clusteru úloh, je tato úloha považována za automatizovanou pracovní zátěž Jobs Compute, která podléhá cenám Jobs Compute.
- Když spustíte úlohu ve stávajícím všestranném clusteru, považuje se za výpočetní úlohu všestranného využití (interaktivní) podle cenové politiky pro všestranné výpočty.
Nastavení pro úlohu Tato nastavení je možné aktualizovat pomocí resetJob
metody.
Název pole | Typ | Popis |
---|---|---|
existing_cluster_id NEBO new_cluster |
STRING OR NewCluster |
Pokud existing_cluster_id, ID existujícího clusteru, který se použije pro všechna spuštění této úlohy. Při spouštění úloh v existujícím clusteru možná budete muset cluster restartovat ručně, pokud přestane reagovat. Pro větší spolehlivost doporučujeme spouštět úlohy v nových clusterech. Pokud new_cluster, popis clusteru, který se vytvoří pro každé spuštění. Pokud zadáte PipelineTask, může být toto pole prázdné. |
notebook_task NEBO spark_jar_task spark_python_task NEBO spark_submit_task pipeline_task NEBO run_job_task |
NotebookTask NEBO SparkJarTask NEBO SparkPythonTask NEBO SparkSubmitTask NEBO PipelineTask NEBO RunJobTask | Pokud jde o notebook_task, naznačuje to, že tato úloha má spustit notebook. Toto pole nesmí být zadáno ve spojení s spark_jar_task. Pokud spark_jar_task, znamená to, že by tato úloha měla spustit soubor JAR. Pokud spark_python_task, znamená to, že by tato úloha měla spustit soubor Pythonu. Je-li spark_submit_task, znamená to, že tuto úlohu by měl spustit skript odeslání pro Spark. Pokud pipeline_task, znamená to, že by tato úloha měla spustit kanál DLT. Pokud run_job_task, znamená to, že by tato úloha měla spustit jinou úlohu. |
name |
STRING |
Volitelný název úlohy. Výchozí hodnota je Untitled . |
libraries |
Pole knihovny | Volitelný seznam knihoven, které se mají nainstalovat do clusteru, který spustí úlohu. Výchozí hodnota je prázdný seznam. |
email_notifications |
OznámeníPracíEmailem | Volitelná sada e-mailových adres, která bude upozorněna při spuštění této úlohy, a také při odstranění této úlohy. Výchozí chování je neodesílat žádné e-maily. |
webhook_notifications |
WebhookNotifications | Volitelná sada systémových destinací, které upozorňují na začátek, dokončení nebo selhání této úlohy. |
notification_settings |
Nastavení oznámení o práci | Volitelná nastavení oznámení, která se používají při odesílání oznámení pro každé email_notifications a webhook_notifications v rámci této úlohy. |
timeout_seconds |
INT32 |
Volitelný časový limit použitý při každém spuštění dané úlohy. Výchozí chování nemá žádný časový limit. |
max_retries |
INT32 |
Volitelný maximální počet opakování neúspěšného spuštění. Spuštění je považováno za neúspěšné, pokud se dokončí s FAILED result_state neboINTERNAL_ERROR life_cycle_state . Hodnota -1 znamená opakování na neomezenou dobu a hodnota 0 znamená nikdy opakovat. Výchozí chování je nikdy nezopakovat. |
min_retry_interval_millis |
INT32 |
Volitelný minimální interval v milisekundách mezi pokusy. Výchozí chování je, že neúspěšná spuštění se okamžitě opakují. |
retry_on_timeout |
BOOL |
Volitelná politika určující, jestli se má úloha opakovat, když vyprší časový limit. Výchozí chování je neopakovat úlohu při vypršení časového limitu. |
schedule |
CronSchedule | Volitelný pravidelný plán pro tuto úlohu. Výchozí chování spočívá v tom, že úloha se spustí pouze po aktivaci kliknutím na Spustit nyní v uživatelském rozhraní úloh nebo odesláním požadavku rozhraní API narunNow . |
max_concurrent_runs |
INT32 |
Volitelný parametr pro maximální povolený počet současně běžících úloh. Tuto hodnotu nastavte, pokud chcete mít možnost souběžně spouštět více spuštění stejné úlohy. To je užitečné například v případě, že svou úlohu spouštíte podle častého plánu a chcete povolit, aby se po sobě překrývala, nebo pokud chcete zahájit několik spuštění, která se liší svými vstupními parametry. Toto nastavení má vliv jenom na nová spuštění. Předpokládejme například, že souběžnost úlohy je 4 a existují 4 současná souběžná spuštění. Nastavením souběžnosti na 3 nedojde k ukončení žádných běžících procesů. Od tého dne se však nová spuštění přeskočí, pokud nejsou k dispozici méně než 3 aktivní spuštění. Tato hodnota nesmí překročit 1 000. Nastavení této hodnoty na 0 způsobí přeskočení všech nových spuštění. Výchozí chování je povolit pouze 1 souběžné spuštění. |
health |
Pravidla zdraví při práci | Volitelná sada zdravotních pravidel definovaná pro úlohu. |
Pracovní úkol
Název pole | Typ | Popis |
---|---|---|
notebook_task NEBO spark_jar_task spark_python_task NEBO spark_submit_task pipeline_task NEBO run_job_task |
NotebookTask NEBO SparkJarTask NEBO SparkPythonTask NEBO SparkSubmitTask NEBO PipelineTask NEBO RunJobTask | Pokud jde o notebook_task, znamená to, že tato úloha má spustit poznámkový blok. Toto pole nesmí být zadáno ve spojení s spark_jar_task. Pokud spark_jar_task, znamená to, že by tato úloha měla spustit soubor JAR. Pokud spark_python_task, znamená to, že by tato úloha měla spustit soubor Pythonu. Je-li spark_submit_task, znamená to, že tuto úlohu by měl spustit skript odeslání pro Spark. Pokud pipeline_task, znamená to, že by tato úloha měla spustit kanál DLT. Pokud run_job_task, znamená to, že by tato úloha měla spustit jinou úlohu. |
PravidloZdravíPracovníchMíst
Název pole | Typ | Popis |
---|---|---|
metric |
STRING |
Určuje metriku zdraví, která se vyhodnocuje pro konkrétní pravidlo zdraví. Platné hodnoty jsou RUN_DURATION_SECONDS . |
operator |
STRING |
Určuje operátor použitý k porovnání hodnoty metriky stavu se zadanou prahovou hodnotou. Platné hodnoty jsou GREATER_THAN . |
value |
INT32 |
Určuje prahovou hodnotu, kterou má metrika stavu splnit, aby vyhovovala pravidlu stavu. |
Pravidla zdraví pro práci
Název pole | Typ | Popis |
---|---|---|
rules |
Pole JobsHealthRule | Sada pravidel zdravotního stavu, která lze volitelně definovat pro pracovní úlohu. |
Knihovna
Název pole | Typ | Popis |
---|---|---|
jar NEBO egg NEBO NEBO whl pypi NEBO maven cran |
STRING NEBO STRING NEBO STRING NEBO PythonPyPiLibrary NEBO MavenLibrary NEBO RCranLibrary |
Pokud jde o soubor JAR, URI souboru JAR, který má být nainstalován. Podporovány jsou URI DBFS a ADLS (abfss ). Příklad: { "jar": "dbfs:/mnt/databricks/library.jar" } nebo{ "jar": "abfss://<container-path>/library.jar" } . Pokud se používá ADLS, ujistěte se, že cluster má v knihovně přístup pro čtení.Pokud se jedná o vejce, URI vejce, které se má nainstalovat. URI DBFS a ADLS jsou podporovány. Příklad: { "egg": "dbfs:/my/egg" } nebo{ "egg": "abfss://<container-path>/egg" } .Pokud whl, identifikátor URI wheel souboru nebo zip wheels , který se má nainstalovat. URI DBFS a ADLS jsou podporovány. Příklad: { "whl": "dbfs:/my/whl" } nebo{ "whl": "abfss://<container-path>/whl" } . Pokud se používá ADLS, ujistěte se, že cluster má v knihovně přístup pro čtení.
wheel Název souboru musí také používat správnou konvenci. Pokud mají být nainstalovány wheels zip soubory, přípona názvu souboru by měla být .wheelhouse.zip .Pokud pypi, specifikace knihovny PyPI, která se má nainstalovat. Zadání repo pole je volitelné a pokud není zadané, použije se výchozí index pip. Příklad:{ "package": "simplejson", "repo": "https://my-repo.com" } Pokud maven, specifikace knihovny Maven, která se má nainstalovat. Příklad: { "coordinates": "org.jsoup:jsoup:1.7.2" } Pokud je cran, specifikace knihovny CRAN, která se má nainstalovat. |
MavenLibrary
Název pole | Typ | Popis |
---|---|---|
coordinates |
STRING |
Souřadnice Maven ve stylu Gradle Například: org.jsoup:jsoup:1.7.2 . Toto pole je povinné. |
repo |
STRING |
Úložiště Maven, ze kterého instalovat balíček Maven. Pokud tento parametr vynecháte, prohledá se jak centrální úložiště Maven, tak balíčky Sparku. |
exclusions |
Pole STRING |
Seznam závislostí, které se mají vyloučit Například: ["slf4j:slf4j", "*:hadoop-client"] .Vyloučené závislosti Maven: https://maven.apache.org/guides/introduction/introduction-to-optional-and-excludes-dependencies.html. |
NovýKlastr
Název pole | Typ | Popis |
---|---|---|
num_workers NEBO autoscale |
INT32 NEBO automatické škálování |
Pokud num_workers, počet pracovních uzlů, které má mít tento cluster. Cluster má jeden ovladač Spark a num_workers vykonavatelů, což celkem tvoří num_workers + 1 Spark uzly. Poznámka: Při čtení vlastností clusteru toto pole odráží požadovaný počet pracovních procesů místo skutečného aktuálního počtu pracovních procesů. Pokud se například změní velikost clusteru z 5 na 10 pracovních procesů, toto pole se okamžitě aktualizuje tak, aby odráželo cílovou velikost 10 pracovních procesů, zatímco pracovní procesy uvedené v spark_info se postupně zvětšují z 5 na 10 při zřizování nových uzlů. Pokud je nastaveno automatické škálování, jsou potřebné parametry k automatickému navýšení a snížení kapacity clusterů na základě zatížení. |
spark_version |
STRING |
Verze clusteru Sparku. Seznam dostupných verzí Sparku je možné načíst pomocí GET 2.0/clusters/spark-versions volání. Toto pole je povinné. |
spark_conf |
SparkConfPair | Objekt obsahující sadu volitelných párů klíč-hodnota pro konfiguraci Sparku, specifikovaných uživatelem. Můžete také předat řetězec dalších možností prostředí JVM ovladači a exekutorům prostřednictvímspark.driver.extraJavaOptions a spark.executor.extraJavaOptions v uvedeném pořadí.Příklady konfigurací Sparku: {"spark.speculation": true, "spark.streaming.ui.retainedBatches": 5} nebo{"spark.driver.extraJavaOptions": "-verbose:gc -XX:+PrintGCDetails"} |
node_type_id |
STRING |
Toto pole kóduje prostředky dostupné pro každý z uzlů Sparku v tomto clusteru prostřednictvím jedné hodnoty. Uzly Sparku je například možné zřídit a optimalizovat pro úlohy náročné na paměť nebo výpočetní výkon. Seznam dostupných typů uzlů se dá načíst pomocí GET 2.0/clusters/list-node-types volání. Toto pole, instance_pool_id pole nebo zásady clusteru, které určují ID typu uzlu nebo ID fondu instancí, je povinné. |
driver_node_type_id |
STRING |
Typ uzlu ovladače Spark. Toto pole je volitelné; pokud není nastavena, typ uzlu ovladače je nastaven jako stejná hodnota jako node_type_id definovaná výše. |
custom_tags |
ClusterTag | Objekt obsahující sadu značek pro prostředky clusteru. Databricks kromě default_tags označí všechny prostředky clusteru (například virtuální počítače) pomocí těchto značek. Poznámka:
|
cluster_log_conf |
ClusterLogConf | Konfigurace pro doručování protokolů Sparku do dlouhodobého úložného místa. Pro jeden cluster je možné zadat pouze jeden cíl. Pokud je konfigurace uvedena, logy budou doručeny do cílového místa každé 5 mins . Cílem protokolů ovladačů je <destination>/<cluster-id>/driver , zatímco cíl protokolů exekutoru je <destination>/<cluster-id>/executor . |
init_scripts |
Pole z InitScriptInfo | Konfigurace pro ukládání inicializačních skriptů. Lze zadat libovolný počet skriptů. Skripty se spouští postupně v zadaném pořadí. Pokud je cluster_log_conf zadáno, protokoly inicializačních skriptů se odesílají do<destination>/<cluster-id>/init_scripts . |
spark_env_vars |
SparkEnvPair | Objekt obsahující sadu volitelných párů klíč-hodnota proměnných prostředí specifikovaných uživatelem. Páry klíč-hodnota ve formátu (X,Y) se exportují tak, jak jsou (tj.export X='Y' ) při spouštění řidiče a pracovníků.Pokud chcete zadat další sadu SPARK_DAEMON_JAVA_OPTS , doporučujeme je připojit k $SPARK_DAEMON_JAVA_OPTS , jak je znázorněno v následujícím příkladu. To zajišťuje, že budou zahrnuty všechny výchozí proměnné prostředí spravované službou Databricks.Příklady proměnných prostředí Sparku: {"SPARK_WORKER_MEMORY": "28000m", "SPARK_LOCAL_DIRS": "/local_disk0"} nebo{"SPARK_DAEMON_JAVA_OPTS": "$SPARK_DAEMON_JAVA_OPTS -Dspark.shuffle.service.enabled=true"} |
enable_elastic_disk |
BOOL |
Automatické škálování místního úložiště: Pokud je povoleno, tento cluster dynamicky získává další místo na disku, když pracovníci Spark mají málo místa na disku. Podrobnosti najdete v tématu Povolení automatického škálování místního úložiště . |
driver_instance_pool_id |
STRING |
Volitelné ID fondu instancí, které se má použít pro řídicí uzel. Musíte také zadat instance_pool_id . Podrobnosti najdete v API instančních fondů. |
instance_pool_id |
STRING |
Volitelné ID fondu instancí, které se má použít pro uzly clusteru. Pokud driver_instance_pool_id je k dispozici,instance_pool_id se používá pouze pro pracovní uzly. V opačném případě se používá pro uzel ovladače i pracovní uzly. Podrobnosti najdete v API instančních poolů. |
Výstup z notebooku
Název pole | Typ | Popis |
---|---|---|
result |
STRING |
Hodnota předaná dbutils.notebook.exit() Azure Databricks omezuje toto rozhraní API tak, aby vrátilo prvních 1 MB hodnoty. Pro větší výsledek může vaše úloha uložit výsledky ve službě cloudového úložiště. Toto pole bude chybět, pokud dbutils.notebook.exit() nebylo nikdy voláno. |
truncated |
BOOLEAN |
Zda byl výsledek zkrácen nebo ne. |
Úkol pro poznámkový blok
Všechny výstupní buňky podléhají velikosti 8 MB. Pokud má výstup buňky větší velikost, zbytek spuštění se zruší a spuštění se označí jako neúspěšné. V takovém případě může chybět i výstup některého obsahu z jiných buněk.
Pokud potřebujete pomoct najít buňku, která překračuje limit, spusťte poznámkový blok na univerzálním clusteru a použijte tuto techniku automatického ukládání poznámkového bloku.
Název pole | Typ | Popis |
---|---|---|
notebook_path |
STRING |
Absolutní cesta k poznámkovému bloku, který má být spuštěn v pracovním prostoru Azure Databricks. Tato cesta musí začínat lomítkem. Toto pole je povinné. |
revision_timestamp |
LONG |
Razítko času revize poznámkového bloku. |
base_parameters |
Mapa města ParamPair | Základní parametry, které se mají použít pro každé spuštění této úlohy. Pokud je spuštění inicializováno voláním run-now se zadanými parametry, sloučí se dvě mapy parametrů. Pokud je stejný klíč zadán v base_parameters a v run-now , bude použita hodnota z run-now .Pro nastavení parametrů obsahujících informace o spuštěních úloh použijte Co je referenční hodnota dynamické hodnoty?. Pokud notebook přijme parametr, který není zadaný v parametrech úlohy base_parameters nebo v přepsaných parametrech run-now , použije se výchozí hodnota z notebooku.Načtěte tyto parametry v poznámkovém bloku pomocí dbutils.widgets.get. |
ParamPair
Parametry založené na názvu pro úlohy, na kterých běží úlohy poznámkového bloku.
Důležité
Pole v této datové struktuře přijímají pouze znaky latinky (znaková sada ASCII). Použití znaků jiného typu než ASCII vrátí chybu. Příklady neplatných znaků, které nejsou ASCII, jsou čínské, japonské kanji a emoji.
Typ | Popis |
---|---|
STRING |
Název parametru. Předáním do dbutils.widgets.get získáte hodnotu. |
STRING |
Hodnota parametru. |
PipelineTask
Název pole | Typ | Popis |
---|---|---|
pipeline_id |
STRING |
Úplný název úlohy kanálu DLT, která se má provést. |
PythonPyPiLibrary
Název pole | Typ | Popis |
---|---|---|
package |
STRING |
Název balíčku PyPI, který se má nainstalovat. Podporuje se také volitelná přesná specifikace verze. Příklady: simplejson a simplejson==3.8.0 . Toto pole je povinné. |
repo |
STRING |
Úložiště, kde lze balíček najít. Pokud není zadaný, použije se výchozí index pip. |
RCranLibrary
Název pole | Typ | Popis |
---|---|---|
package |
STRING |
Název balíčku CRAN, který se má nainstalovat. Toto pole je povinné. |
repo |
STRING |
Úložiště, kde lze balíček najít. Pokud není zadané, použije se výchozí úložiště CRAN. |
Běž
Všechny informace o spuštění s výjimkou jeho výstupu. Výstup lze načíst samostatně pomocí metody getRunOutput
.
Název pole | Typ | Popis |
---|---|---|
job_id |
INT64 |
Kanonický identifikátor úlohy, která toto spuštění obsahuje. |
run_id |
INT64 |
Kanonický identifikátor spuštění. Tento identifikátor je jedinečný pro všechna spuštění a úlohy. |
creator_user_name |
STRING |
Uživatelské jméno tvůrce. Toto pole se do odpovědi nezahrne, pokud už byl uživatel odstraněn. |
number_in_job |
INT64 |
Pořadové číslo tohoto spuštění mezi všemi spuštěními úlohy. Tato hodnota začíná na 1. |
original_attempt_run_id |
INT64 |
Pokud se jedná o opakování předchozího pokusu o spuštění, obsahuje toto pole run_id původního pokusu; jinak je to stejné jako run_id. |
state |
Provozní stav | Výsledek a stavy životního cyklu provádění. |
schedule |
CronSchedule | Plán cron, který toto spuštění aktivoval, pokud ho aktivoval pravidelný plánovač. |
task |
JobTask | Úloha prováděná spuštěním, pokud nějaká existuje. |
cluster_spec |
ClusterSpec | Snímek specifikace clusteru úlohy z doby, kdy bylo toto spuštění vytvořeno. |
cluster_instance |
Klusterová instance | Cluster použitý pro toto spuštění. Pokud je spuštění určeno k použití nového clusteru, toto pole bude nastaveno, jakmile služba úloh požádá o cluster pro spuštění. |
overriding_parameters |
RunParameters | Parametry použité při tomto spuštění. |
start_time |
INT64 |
Čas, kdy bylo toto spuštění zahájeno, v epoše milisekund (milisekundy od 1. 1. 1970 UTC). Nemusí se jednat o okamžik spuštění úlohy; například pokud je úloha naplánována k běhu na novém clusteru, jedná se o čas, kdy je vydáno volání na vytvoření clusteru. |
setup_duration |
INT64 |
Doba, po které trvalo nastavení clusteru v milisekundách. U běhů, které běží na nových clusterech, je to čas vytvoření clusteru; pro běhy, které běží na existujících clusterech, by měl tento čas být velmi krátký. |
execution_duration |
INT64 |
Čas v milisekundách, který trvalo provedení příkazů v JAR souboru nebo poznámkovém bloku, dokud nebyly dokončeny, selhaly, vypršel časový limit, byly zrušeny nebo došlo k neočekávané chybě. |
cleanup_duration |
INT64 |
Doba v milisekundách, která byla potřebná k ukončení clusteru a k vyčištění všech přidružených artefaktů. Celková doba trvání spuštění je součtem doby nastavení, doby provedení a doby úklidu. |
end_time |
INT64 |
Čas, kdy došlo k ukončení tohoto úkonu v milisekundách od počátku epochy (milisekundy od 1. 1. 1970 UTC). Pokud je úloha stále spuštěná, bude toto pole nastaveno na hodnotu 0. |
trigger |
Typ spouště | Typ spouštěče, který toto spuštění vyvolal. |
run_name |
STRING |
Volitelný název pro spuštění. Výchozí hodnota je Untitled . Maximální povolená délka je 4096 bajtů v kódování UTF-8. |
run_page_url |
STRING |
Adresa URL na stránku s podrobnostmi běhu. |
run_type |
STRING |
Typ běhu.
|
attempt_number |
INT32 |
Pořadové číslo tohoto pokusu o spuštění pro aktivovanou úlohu. Počáteční pokus o spuštění má attempt_number 0. Pokud se počáteční pokus o spuštění nezdaří a úloha má zásadu opakování (max_retries > 0), vytvoří se následné pokusy s přidělením original_attempt_run_id ID původního pokusu a se zvyšujícím se číslem attempt_number . Spuštění jsou opakovaná jen do té doby, než dosáhnou úspěchu, a maximální attempt_number je stejná jako hodnota max_retries pro daný úkol. |
RunJobTask
Název pole | Typ | Popis |
---|---|---|
job_id |
INT32 |
Jedinečný identifikátor úlohy, která se má spustit. Toto pole je povinné. |
RunLifeCycleState
Stav životního cyklu běhu. Povolené přechody stavu jsou:
-
QUEUED
->PENDING
-
PENDING
- - ->RUNNING
>TERMINATING
>TERMINATED
-
PENDING
->SKIPPED
-
PENDING
->INTERNAL_ERROR
-
RUNNING
->INTERNAL_ERROR
-
TERMINATING
->INTERNAL_ERROR
Stát | Popis |
---|---|
QUEUED |
Běh byl spuštěn, ale je zařazen do fronty, protože dosáhl jednoho z následujících limitů:
Před dosažením tohoto stavu musí být úloha nebo spuštění ve frontě povolené. |
PENDING |
Běh byl spuštěn. Pokud je již dosaženo nakonfigurovaného maximálního počtu paralelních běhů úlohy, okamžitě přejde do stavu SKIPPED bez přípravy jakýchkoliv prostředků. Jinak probíhá příprava clusteru a provádění. |
RUNNING |
Tato úloha probíhá. |
TERMINATING |
Úkol tohoto spuštění byl dokončen a probíhá čištění clustru a kontextu spuštění. |
TERMINATED |
Úloha tohoto spuštění byla dokončena a cluster i kontext spuštění byly vyčištěny. Tento stav je terminál. |
SKIPPED |
Toto spuštění bylo přerušeno, protože předchozí běh stejné úlohy již byl aktivní. Tento stav je terminál. |
INTERNAL_ERROR |
Výjimečná situace, která značí selhání v rámci služby Jobs, například selhání sítě po dlouhou dobu. Pokud spuštění v novém clusteru skončí ve INTERNAL_ERROR stavu, služba úloh cluster ukončí co nejdříve. Tento stav je terminál. |
Parametry spuštění
Parametry tohoto spuštění V požadavku by měl být podle typu úkolu úlohy zadán pouze jeden z jar_params, python_params
, nebo notebook_params.
Úlohy Spark JAR nebo Python přebírají seznam parametrů založených na pozici a úlohy s úkoly v poznámkovém bloku přebírají mapu klíčových hodnot.
Název pole | Typ | Popis |
---|---|---|
jar_params |
Pole STRING |
Seznam parametrů pro úlohy s úlohami Spark JAR, například "jar_params": ["john doe", "35"] . Parametry se použijí k vyvolání hlavní funkce hlavní třídy zadané v úloze Spark JAR. Pokud není zadáno u run-now , použije se jako výchozí prázdný seznam. jar_params nelze zadat ve spojení s notebook_params. Reprezentace json tohoto pole (tj. {"jar_params":["john doe","35"]} ) nesmí překročit 10 000 bajtů.Použijte Co je odkaz na dynamickou hodnotu? k nastavení parametrů obsahujících informace o spuštěních úloh. |
notebook_params |
Mapa města ParamPair | Mapa klíčů a hodnot pro úlohy s úkolem v poznámkovém bloku, např."notebook_params": {"name": "john doe", "age": "35"} . Mapa se předá do poznámkového bloku a je přístupná prostřednictvím funkce dbutils.widgets.get .Pokud není zadané při run-now , aktivované spuštění používá základní parametry úlohy.notebook_params nelze zadat ve spojení s jar_params. Použijte What is a dynamic value reference? k nastavení parametrů obsahujících informace o spuštěních úloh. Reprezentace tohoto pole ve formátu JSON (tj. {"notebook_params":{"name":"john doe","age":"35"}} ) nesmí překročit 10 000 bajtů. |
python_params |
Pole STRING |
Seznam parametrů pro úlohy s Pythonovými úlohami, např. "python_params": ["john doe", "35"] Parametry se předají souboru Pythonu jako parametry příkazového řádku. Pokud je zadáno run-now , přepíše parametry zadané v nastavení úlohy. Reprezentace json tohoto pole (tj. {"python_params":["john doe","35"]} ) nesmí překročit 10 000 bajtů.Chcete-li nastavit parametry obsahující informace o spuštěních úloh, použijte odkaz na dynamickou hodnotu. Tyto parametry přijímají pouze znaky latinky (znaková sada ASCII). Použití znaků jiného typu než ASCII vrátí chybu. Příklady neplatných znaků, které nejsou ASCII, jsou čínské, japonské kanji a emoji. |
spark_submit_params |
Pole STRING |
Seznam parametrů pro úlohy s úlohou odeslání Sparku, např."spark_submit_params": ["--class", "org.apache.spark.examples.SparkPi"] . Parametry se předávají skriptu spark-submit jako parametry příkazového řádku. Pokud je zadáno run-now , přepíše parametry zadané v nastavení úlohy. Reprezentace json tohoto pole (tj. {"python_params":["john doe","35"]} ) nesmí překročit 10 000 bajtů.Použijte Co je to odkaz na dynamickou hodnotu? pro nastavení parametrů obsahujících informace o spuštěních úloh. Tyto parametry přijímají pouze znaky latinky (znaková sada ASCII). Použití znaků jiného typu než ASCII vrátí chybu. Příklady neplatných znaků, které nejsou ASCII, jsou čínské, japonské kanji a emoji. |
RunResultState
Stav výsledku spuštění.
- Pokud
life_cycle_state
=TERMINATED
: Pokud spuštění mělo úlohu, je zaručeno, že bude k dispozici výsledek, který ukazuje na výsledek úlohy. -
life_cycle_state
Pokud =PENDING
,RUNNING
neboSKIPPED
, stav výsledku není k dispozici. - Pokud
life_cycle_state
=TERMINATING
nebo stav životního cyklu =INTERNAL_ERROR
: stav výsledku je k dispozici, pokud spuštění obsahovalo úlohu a bylo ji možné zahájit.
Jakmile bude výsledek dostupný, stav výsledku se nikdy nezmění.
Stát | Popis |
---|---|
SUCCESS |
Úkol byl úspěšně dokončen. |
FAILED |
Úkol byl dokončen s chybou. |
TIMEDOUT |
Běh byl zastaven po dosažení časového limitu. |
CANCELED |
Spuštění bylo zrušeno na žádost uživatele. |
Stav běhu
Název pole | Typ | Popis |
---|---|---|
life_cycle_state |
RunLifeCycleState | Popis aktuálního umístění v životním cyklu běhu. Toto pole je vždy k dispozici v odpovědi. |
result_state |
RunResultState | Stav výsledku spuštění. Pokud není k dispozici, odpověď toto pole nebude obsahovat. Podrobnosti o dostupnosti result_state najdete v tématu RunResultState . |
user_cancelled_or_timedout |
BOOLEAN |
Jestli byl spuštění zrušen ručně uživatelem nebo plánovačem, protože vypršel časový limit běhu. |
state_message |
STRING |
Popisná zpráva pro aktuální stav Toto pole je nestrukturované a jeho přesný formát se může změnit. |
SparkConfPair
Konfigurační dvojice klíčů a hodnot pro Spark
Typ | Popis |
---|---|
STRING |
Název vlastnosti konfigurace. |
STRING |
Hodnota konfigurační vlastnosti |
SparkEnvPair
Páry klíč-hodnota proměnných prostředí Sparku
Důležité
Při zadávání proměnných prostředí v clusteru úloh přijímají pole v této datové struktuře pouze znaky latinky (znaková sada ASCII). Použití znaků jiného typu než ASCII vrátí chybu. Příklady neplatných znaků, které nejsou ASCII, jsou čínské, japonské kanji a emoji.
Typ | Popis |
---|---|
STRING |
Název proměnné prostředí. |
STRING |
Hodnota proměnné prostředí. |
SparkJarTask
Název pole | Typ | Popis |
---|---|---|
jar_uri |
STRING |
Zastaralé od 4. 4. 2016. Zadejte jar prostřednictvím pole libraries místo toho. Příklad najdete v tématu Vytvoření. |
main_class_name |
STRING |
Úplný název třídy obsahující hlavní metodu, která se má provést. Tato třída musí být obsažena v souboru JAR poskytnutém jako knihovna. Kód by měl použít SparkContext.getOrCreate k získání kontextu Sparku. Jinak se spuštění úlohy nezdaří. |
parameters |
Pole STRING |
Parametry předané hlavní metodě. Chcete-li nastavit parametry obsahující informace o spuštěních úloh, použijte Co je odkaz na dynamickou hodnotu?. |
SparkPythonTask
Název pole | Typ | Popis |
---|---|---|
python_file |
STRING |
Identifikátor URI souboru Pythonu, který se má spustit. Cesty DBFS jsou podporované. Toto pole je povinné. |
parameters |
Pole STRING |
Parametry příkazového řádku předané souboru Pythonu. Chcete-li nastavit parametry obsahující informace o spuštěních úloh, použijte What is a dynamic value reference?. |
SparkSubmitTask
Důležité
- Úlohy odesílání Sparku můžete vyvolat pouze v nových clusterech.
- Ve specifikaci new_cluster
libraries
aspark_conf
nejsou podporované. Místo toho použijte--jars
a--py-files
přidejte knihovny Java a Pythonu a--conf
nastavte konfiguraci Sparku. -
master
,deploy-mode
aexecutor-cores
jsou automaticky nakonfigurovány službou Azure Databricks. V parametrech je nemůžete zadat. - Úloha odeslání Sparku ve výchozím nastavení používá veškerou dostupnou paměť (s výjimkou rezervované paměti pro služby Azure Databricks). Můžete nastavit
--driver-memory
a--executor-memory
na menší hodnotu, aby zůstalo místo pro použití mimo haldu. - Argumenty
--jars
,--py-files
--files
podporují cesty DBFS.
Například za předpokladu, že se soubor JAR nahraje do DBFS, můžete spustit SparkPi
nastavením následujících parametrů.
{
"parameters": ["--class", "org.apache.spark.examples.SparkPi", "dbfs:/path/to/examples.jar", "10"]
}
Název pole | Typ | Popis |
---|---|---|
parameters |
Pole STRING |
Parametry příkazového řádku předané pro Spark submit. Použijte co je odkaz na dynamickou hodnotu? pro nastavení parametrů obsahujících informace o spuštěních úloh. |
Typ spouštěče
Jedná se o typy spouštěčů, které můžou spustit běh.
Typ | Popis |
---|---|
PERIODIC |
Harmonogramy, které periodicky spouštějí běhy, jako je cron plánovač. |
ONE_TIME |
Jednorázové spouštěče, které vykonají jedno spuštění. K tomu dojde, když jste aktivovali jedno spuštění na vyžádání prostřednictvím uživatelského rozhraní nebo rozhraní API. |
RETRY |
Označuje spuštění, které se aktivuje jako opakování dříve neúspěšného spuštění. K tomu dochází, když v případě selhání požádáte o opětovné spuštění úlohy. |
Zobrazit položku
Exportovaný obsah je ve formátu HTML. Například, pokud je zobrazení pro export řídicí panel, vrátí se pro každý řídicí panel jeden řetězec HTML.
Název pole | Typ | Popis |
---|---|---|
content |
STRING |
Obsah zobrazení |
name |
STRING |
Název položky zobrazení V případě zobrazení kódu název poznámkového bloku. Je-li zobrazen řídicí panel, jeho název. |
type |
Typ zobrazení | Typ položky zobrazení |
Typ zobrazení
Typ | Popis |
---|---|
NOTEBOOK |
Zobrazení položky poznámkového bloku |
DASHBOARD |
Položka zobrazení řídicího panelu |
Pohledy k exportu
Možnosti exportu: buď kód, všechny řídicí panely, nebo vše.
Typ | Popis |
---|---|
CODE |
Zobrazení kódu poznámkového bloku |
DASHBOARDS |
Všechna nástroje zobrazení poznámkového bloku |
ALL |
Všechna zobrazení poznámkového bloku |
Webhook
Název pole | Typ | Popis |
---|---|---|
id |
STRING |
Identifikátor odkazující na cíl oznámení systému. Toto pole je povinné. |
Oznámení webhooku
Název pole | Typ | Popis |
---|---|---|
on_start |
Pole webhooků | Volitelný seznam systémových cílů, které mají být oznámeny při zahájení spuštění. Pokud není zadáno při vytváření, resetování nebo aktualizaci úlohy, seznam je prázdný a oznámení se neodesílají. Pro vlastnost on_start lze zadat maximálně tři cíle. |
on_success |
Pole Webhooků | Volitelný seznam systémových destinací, které mají být oznámeny po úspěšném dokončení běhu. Spuštění se považuje za úspěšně dokončené, pokud končí s TERMINATED life_cycle_state a SUCCESSFUL result_state . Pokud není zadáno při vytváření, resetování nebo aktualizaci úlohy, seznam je prázdný a oznámení se neodesílají. Pro vlastnost on_success lze zadat maximálně tři cíle. |
on_failure |
Pole webhooků | Volitelný seznam systémových cílů, které mají být oznámeny při neúspěšném dokončení běhu. Běh je považován za neúspěšný, jestliže končí s INTERNAL_ERROR life_cycle_state nebo SKIPPED , FAILED , nebo TIMED_OUT result_state . Pokud není zadaný při vytváření úlohy, resetování nebo aktualizaci seznamu je prázdný a oznámení se neodesílají. Pro vlastnost on_failure lze zadat maximálně tři cíle. |
on_duration_warning_threshold_exceeded |
Pole webhooku | Volitelný seznam systémových cílů, které se mají oznámit, když doba trvání běhu procesu překročí prahovou hodnotu zadanou pro metriku RUN_DURATION_SECONDS v poli health . Pro vlastnost on_duration_warning_threshold_exceeded lze zadat maximálně tři cíle. |
InformaceOÚložištiPracovníhoProstředí
Informace o úložišti pracoviště
Název pole | Typ | Popis |
---|---|---|
destination |
STRING |
Místo určení souboru. Příklad: /Users/someone@domain.com/init_script.sh |