Sdílet prostřednictvím


Rozhraní API pro úlohy 2.0

Důležité

Tento článek popisuje verzi 2.0 rozhraní API úloh. Databricks ale doporučuje používat rozhraní API úloh 2.1 pro nové a existující klienty a skripty. Podrobnosti o změnách ve verzích verze 2.0 na 2.1 najdete v tématu Aktualizace z rozhraní API úloh 2.0 na verzi 2.1.

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.

Podrobnosti o aktualizacích rozhraní API úloh, které podporují orchestraci více úloh pomocí úloh Azure Databricks, najdete v tématu Aktualizace z rozhraní API úloh 2.0 na verzi 2.1.

Upozorňující

Tajné kódy byste nikdy neměli pevně zakódovat ani je ukládat ve formátu prostého textu. Pomocí rozhraní API pro tajné kódy můžete spravovat tajné kódy v rozhraní příkazového řádku Databricks. 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í úlohu JAR 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í:

Tento příklad používá soubor .netrc a jq.

Response

{
  "job_id": 1
}

Struktura požadavku

Důležité

  • Při spuštění úlohy v novém clusteru úloh se úloha považuje za výpočetní úlohy (automatizované) úlohy, na které se vztahují ceny výpočetních úloh úloh.
  • Když spustíte úlohu v existujícím clusteru pro všechny účely, považuje se za výpočetní úlohy pro všechny účely (interaktivní) na základě cen výpočetních prostředků pro všechny účely.
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_taskNEBO spark_jar_task
spark_python_taskNEBO spark_submit_task
pipeline_task NEBO run_job_task
NotebookTask NEBO SparkJarTask NEBO SparkPythonTask NEBO SparkSubmitTask NEBO PipelineTask NEBO RunJobTask Pokud notebook_task, znamená to, že by tato úloha měla 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.

Pokud spark_submit_task, znamená to, že tuto úlohu by měl spustit skript pro odeslání Sparku.

Pokud pipeline_task, znamená to, že by tato úloha měla spustit kanál Delta Live Tables.

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 JobEmailNotifications 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 cílů systému, která vás upozorní při spuštění této úlohy, dokončení nebo selhání.
notification_settings JobNotificationSettings Volitelná nastavení oznámení, která se používají při odesílání oznámení každému email_notifications z nich a webhook_notifications pro tuto úlohu.
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čí s FAILED result_state nebo
INTERNAL_ERROR
life_cycle_state. Hodnota -1 znamená opakování na neomezenou dobu a hodnota 0 znamená nikdy opakovat. Výchozí chování je nikdy opakovat.
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ě opakuje.
retry_on_timeout BOOL Volitelná zásada určující, jestli se má úloha opakovat, když vyprší časový limit. Výchozí chování není opakovat 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ý maximální povolený počet souběžných spuštění úlohy.

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 úlohu aktivujete podle častého plánu a chcete povolit, aby se po sobě překrývala po sobě, nebo pokud chcete aktivovat více spuštění, která se liší podle jejich vstupních parametrů.

Toto nastavení má vliv jenom na nová spuštění. Předpokládejme například, že souběžnost úlohy je 4 a existují 4 souběžná aktivní spuštění. Nastavení souběžnosti na 3 pak nezabije žádné aktivní spuštění. 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í, že se všechna nová spuštění přeskočí. 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

Požádat

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

Nahraďte <databricks-instance> například názvemadb-1234567890123456.7.azuredatabricks.net instance pracovního prostoru Azure Databricks.

Tento příklad používá soubor .netrc a jq.

Response

{
  "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 už úloha nebyla odebrá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 dokončení této žádosti je zaručeno, že se úloha odebere. Spuštění, která byla aktivní před přijetím tohoto požadavku, však může 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í:

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é.

Dostat

Koncový bod Metoda HTTP
2.0/jobs/get GET

Načtěte informace o jedné úloze.

Příklad

Požádat

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í:

Tento příklad používá soubor .netrc a jq.

Response

{
  "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í. Toto pole je povinné.

Struktura odpovědi

Název pole Typ Popis
job_id INT64 Kanonický identifikátor pro tuto úlohu.
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 spuštění Tato nastavení je možné aktualizovat pomocí koncových bodů Pro resetování nebo aktualizaci .
created_time INT64 Čas vytvoření této úlohy v milisekundách epochy (milisekundy od 1. 1. 1970 UTC).

Resetovat

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í:

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í spuštění. Změny v jiných polích se použijí jenom pro budoucí spuště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 definované v příkladu vytvoření .

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í:

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ě zadaná v new_settingspoli s výjimkou polí jsou zcela nahrazena. Pole se sloučí na základě příslušných klíčových polí, například task_key nebo
job_cluster_keya 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í spuštění. Změny v jiných polích se použijí jenom pro budoucí spuštění.
fields_to_remove 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 polí. Toto je například platný argument pro toto pole:
["libraries", "schedule", "tasks/task_1", "job_clusters/Default"]

Toto pole je nepovinné.

Spustit

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 vytvořit za hodinu, je omezený na 1 0000 (zahrnuje "spuštění odeslat"). Toto omezení platí také pro úlohy vytvořené pomocí rozhraní REST API a pracovních postupů 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 úlohu a vraťte run_id aktivované spuštění.

Tip

Pokud teď vyvoláte funkci Vytvořit společně se spuštěním, můžete místo toho použít koncový bod Odeslání spuštění, který vám umožní odeslat úlohu 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 žádosti o ú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í:

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 úkoly 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 ho nezadáte 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 z klíčů na hodnoty pro úlohy s úkolem poznámkového 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é, run-nowaktivované 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 úlohami Pythonu, 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 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 žádostí o spuštění úlohy. 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 se s tímto tokenem idempotence spustí právě jedno spuštění.

Tento token musí mít maximálně 64 znaků.

Další informace naleznete v tématu Jak zajistit idempotenci pro úlohy.

Struktura odpovědi

Název pole Typ Popis
run_id INT64 Globálně jedinečné ID nově aktivovaného spuštění.
number_in_job INT64 Pořadové číslo tohoto spuštění mezi všemi spuštěními úlohy.

Spuštění odesílané

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 vytvořit za hodinu, je omezený na 1 0000 (zahrnuje "spuštění odeslat"). Toto omezení platí také pro úlohy vytvořené pomocí rozhraní REST API a pracovních postupů 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é spuštění. 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

Požádat

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í:

Tento příklad používá soubor .netrc a jq.

Response

{
  "run_id": 123
}

Struktura požadavku

Důležité

  • Při spuštění úlohy v novém clusteru úloh se úloha považuje za výpočetní úlohy (automatizované) úlohy, na které se vztahují ceny výpočetních úloh úloh.
  • Když spustíte úlohu v existujícím clusteru pro všechny účely, považuje se za výpočetní úlohy pro všechny účely (interaktivní) na základě cen výpočetních prostředků pro všechny účely.
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_taskNEBO spark_jar_task
spark_python_taskNEBO spark_submit_task
pipeline_task NEBO run_job_task
NotebookTask NEBO SparkJarTask NEBO SparkPythonTask NEBO SparkSubmitTask NEBO PipelineTask NEBO RunJobTask Pokud notebook_task, znamená to, že by tato úloha měla 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.

Pokud spark_submit_task, znamená to, že tuto úlohu by měl spustit skript pro odeslání Sparku.

Pokud pipeline_task, znamená to, že by tato úloha měla spustit kanál Delta Live Tables.

Pokud run_job_task, znamená to, že by tato úloha měla spustit jinou úlohu.
run_name STRING Volitelný název spuštění. Výchozí hodnota je Untitled.
webhook_notifications WebhookNotifications Volitelná sada cílů systému, která vás upozorní při spuštění této úlohy, dokončení nebo selhání.
notification_settings JobNotificationSettings Volitelná nastavení oznámení, která se používají při odesílání oznámení každému webhook_notifications z těchto 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 Volitelný časový limit použitý pro každé spuštění této úlohy. Výchozí chování nemá žádný časový limit.
idempotency_token STRING Volitelný token, který zaručuje idempotenci žádostí o spuštění úlohy. 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 se s tímto tokenem idempotence spustí právě jedno spuštění.

Tento token musí mít maximálně 64 znaků.

Další informace naleznete v tématu Jak zajistit idempotenci pro úlohy.

Struktura odpovědi

Název pole Typ Popis
run_id INT64 Kanonický identifikátor nově odeslaného spuštění.

Seznam spuštění

Koncový bod Metoda HTTP
2.0/jobs/runs/list GET

Seznam se spouští sestupně podle času spuštění.

Poznámka:

Spuštění 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

Požádat

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>s názvem instance pracovního prostoru Azure Databricks, například adb-1234567890123456.7.azuredatabricks.net.
  • <job-id> s ID úlohy, například 123.
  • "<true-false> s true nebo false".
  • <offset>offset s hodnotou.
  • <limit>limit s hodnotou.
  • <run-type>run_type s hodnotou.

Tento příklad používá soubor .netrc a jq.

Response

{
  "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 trueactive_only , do výsledků se zahrnou pouze aktivní spuštění. V opačném případě se zobrazí seznam aktivních i dokončených spuštění. Aktivní spuštění je spuštění v PENDINGsadě , RUNNINGnebo TERMINATING RunLifecycleState. Toto pole nemůže být true , pokud je truecompleted_only .

Pokud je completed_only true, do výsledků se zahrnou jenom dokončená spuštění. V opačném případě se zobrazí seznam aktivních i dokončených spuštění. Toto pole nemůže být true , pokud je trueactive_only .
job_id INT64 Úloha, pro kterou chcete zobrazit seznam spuštění. Pokud je tato možnost vynechána, služba Úlohy zobrazí seznam spuštění ze všech úloh.
offset INT32 Posun prvního spuštění, který se má vrátit vzhledem k poslednímu spuštění.
limit INT32 Počet spuštění, 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 spuštění, 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 hodnota true, další spuštění odpovídající zadanému filtru jsou k dispozici pro výpis.

Získání spuštění

Koncový bod Metoda HTTP
2.0/jobs/runs/get GET

Načtěte metadata spuštění.

Poznámka:

Spuštění 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

Požádat

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í:

Tento příklad používá soubor .netrc a jq.

Response

{
  "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á obsahuje toto spuštění.
run_id INT64 Kanonický identifikátor spuštění. Toto ID je jedinečné pro všechna spuštění všech úloh.
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 Spustit stav Výsledek a stav životního cyklu spuště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 existuje.
cluster_spec ClusterSpec Snímek specifikace clusteru úlohy při vytvoření tohoto spuštění
cluster_instance Instance clusteru Cluster použitý pro toto spuštění. Pokud je zadané spuštění pro použití nového clusteru, toto pole se nastaví po vyžádání clusteru pro spuštění služby Úlohy.
overriding_parameters RunParameters Parametry použité pro toto spuštění.
start_time INT64 Čas zahájení tohoto spuštění v epoch milisekundách (milisekundy od 1. 1. 1970 UTC). To nemusí být čas, kdy se úloha úlohy spustí, například pokud je úloha naplánovaná tak, aby běžela v novém clusteru, jedná se o čas vydání volání 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 spuštění, která běží na nových clusterech, je to čas vytvoření clusteru, pro spuštění, která běží na existujících clusterech, by tentokrát měla být velmi krátká. Celková doba trvání běhu je součet setup_duration
execution_durationa .cleanup_duration Pole setup_duration je nastaveno na hodnotu 0 pro spuštění úloh s více úkoly. Celková doba trvání spuštění úlohy s více úkoly je hodnota
run_duration pole.
execution_duration INT64 Doba v milisekundách trvala spuštění příkazů v souboru JAR 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_durationa
cleanup_duration. Pole execution_duration je nastaveno na hodnotu 0 pro spuštění úloh s více úkoly. Celková doba trvání spuštění úlohy s více úkoly je hodnota run_duration pole.
cleanup_duration INT64 Doba v milisekundách trvala ukončení clusteru a vyčištění všech přidružených artefaktů. Celková doba trvání běhu je součet setup_duration, execution_durationa cleanup_duration. Pole cleanup_duration je nastaveno na hodnotu 0 pro spuštění úloh s více úkoly. Celková doba trvání spuštění úlohy s více úkoly je hodnota run_duration pole.
run_duration INT64 Čas v milisekundách trvalo spuštění úlohy a dokončení všech jeho oprav. Toto pole je nastavené pouze pro spuštění úloh s více úkoly, nikoli pro spuštění úloh. Doba trvání spuštění úlohy je součet
setup_duration, execution_durationa .cleanup_duration
trigger Typ triggeru Typ triggeru, 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 podrobností spuštění.

Spuštění exportu

Koncový bod Metoda HTTP
2.0/jobs/runs/export GET

Exportujte a načtěte úlohu spuštění úlohy.

Poznámka:

Exportovat je možné pouze spuštění poznámkového bloku ve formátu HTML. Export spuštění jiných typů selže.

Příklad

Požádat

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í:

Tento příklad používá soubor .netrc a jq.

Response

{
  "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 spuštění. Toto pole je povinné.
views_to_export ViewsToExport Která zobrazení se mají exportovat (KÓD, ŘÍDICÍ PANELY nebo VŠE). Výchozí hodnota je CODE.

Struktura odpovědi

Název pole Typ Popis
views Pole ViewItem Exportovaný obsah ve formátu HTML (jeden pro každou položku zobrazení).

Spuštění zrušit

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í spuštěné i po dokončení tohoto požadavku. Spuštění bude brzy ukončeno. 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í:

Tento příklad používá soubor .netrc .

Struktura požadavku

Název pole Typ Popis
run_id INT64 Kanonický identifikátor spuštění, který chcete zrušit. Toto pole je povinné.

Spuštění zruší všechna

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ě, nezabrání spuštění nových spuš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í:

Tento příklad používá soubor .netrc .

Struktura požadavku

Název pole Typ Popis
job_id INT64 Kanonický identifikátor úlohy pro zrušení všech spuštění. Toto pole je povinné.

Spuštění – získání výstupu

Koncový bod Metoda HTTP
2.0/jobs/runs/get-output GET

Načtěte výstup a metadata jednoho spuštění úlohy. Když úloha poznámkového 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.

Spuštění 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

Požádat

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í:

Tento příklad používá soubor .netrc a jq.

Response

{
  "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 spuštění. U úlohy se ztlumenými úkoly se jedná o run_id spuštění úlohy. Viz Výstup získání 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 Běžet Všechny podrobnosti o spuštění s výjimkou jeho výstupu.

Odstranění spuštění

Koncový bod Metoda HTTP
2.0/jobs/runs/delete POST

Odstraňte neaktivní spuštění. Vrátí chybu, pokud je spuštění aktivní.

Příklad

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

Nahrazení:

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

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ích procesů clusteru

Název pole Typ Popis
min_workers INT32 Minimální počet pracovních procesů, na které může cluster při nedostatečně využité kapacitě vertikálně snížit. Je to také počáteční počet pracovních procesů, které cluster bude mít po vytvoření.
max_workers INT32 Maximální počet pracovních procesů, na které může cluster při přetížení vertikálně navýšit kapacitu. 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 v průběhu životnosti clusteru ztlumená.
availability Dostupnost Azure Typ dostupnosti použitý pro všechny následující uzly za first_on_demand ty.
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 cena za standardní instanci. 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 fondu.

Instance clusteru

Identifikátory clusteru a kontextu Sparku používaného spuštěním Tyto dvě hodnoty společně identifikují kontext spuštění po celou dobu.

Název pole Typ Popis
cluster_id STRING Kanonický identifikátor clusteru používaného spuštěním. Toto pole je vždy k dispozici pro spuštění v 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 dál dostupné.

Odpověď nebude obsahovat toto pole, pokud identifikátor ještě není k dispozici.
spark_context_id STRING Kanonický identifikátor kontextu Sparku používaného spuštěním. 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 DbfsStorageInfo Umístění dbFS protokolu clusteru Cíl musí být zadaný. Příklad:
{ "dbfs" : { "destination" : "dbfs:/home/cluster_log" } }

ClusterSpec

Důležité

  • Při spuštění úlohy v novém clusteru úloh se úloha považuje za výpočetní úlohy (automatizované) úlohy, na které se vztahují ceny výpočetních úloh úloh.
  • Když spustíte úlohu v existujícím clusteru pro všechny účely, považuje se za výpočetní úlohy pro všechny účely (interaktivní) na základě cen výpočetních prostředků pro všechny účely.
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í:

- Mít délku 1 až 512 znaků
- Neobsahuje žádný z znaků. <>%*&+?\\/
- Nezačíná na azure, microsoftnebo windows
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 Trigger Cron. 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 sadě Java TimeZone . Toto pole je povinné.
pause_status STRING Určete, jestli je tento plán pozastavený nebo ne. Buď "POZASTAVENO" nebo "UNPAUSED".

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í inicializačního skriptu 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, které úloha spustí jako. run_as je založená na aktuálním nastavení úlohy a je nastavena na tvůrce úlohy, pokud je řízení přístupu k úloze zakázané nebo is_owner pokud je povoleno řízení přístupu k úloze.
settings JobSettings Nastavení pro tuto úlohu a všechna jeho 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).

JobEmailNotifications

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é se mají oznámit po úspěšném dokončení spuštění. Spuštění je považováno za úspěšné dokončení, pokud končí na 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 STRING Seznamech Spuštění je považováno za neúspěšné dokončení, pokud končí na INTERNAL_ERROR
life_cycle_statenebo , SKIPPEDFAILEDnebo 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í.
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 health poli pro úlohu není zadané žádné pravidlo metrikyRUN_DURATION_SECONDS, oznámení se neodesílají.
no_alert_for_skipped_runs BOOL Pokud je pravda, neposílejte e-mail příjemcům zadaným v on_failure případě, že je spuštění vynecháno.
Název pole Typ Popis
on_start Pole webhooku 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 lze zadat on_start maximálně 3 cíle.
on_success Pole webhooku Volitelný seznam systémových cílů, které se mají oznámit po úspěšném dokončení spuštění. Spuštění je považováno za úspěšné dokončení, pokud končí na 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 lze zadat on_success maximálně 3 cíle.
on_failure Pole webhooku Volitelný seznam systémových cílů, které mají být oznámeny při neúspěšném spuštění. Spuštění je považováno za neúspěšné dokončení, pokud končí na INTERNAL_ERROR
life_cycle_statenebo , SKIPPEDFAILEDnebo 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 lze zadat on_failure maximálně 3 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 překročí prahovou hodnotu zadanou pro RUN_DURATION_SECONDS metriku health v poli. Pro vlastnost lze zadat on_duration_warning_threshold_exceeded maximálně 3 cíle.

JobNotificationSettings

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í.

JobSettings

Důležité

  • Při spuštění úlohy v novém clusteru úloh se úloha považuje za výpočetní úlohy (automatizované) úlohy, na které se vztahují ceny výpočetních úloh úloh.
  • Když spustíte úlohu v existujícím clusteru pro všechny účely, považuje se za výpočetní úlohy pro všechny účely (interaktivní) na základě cen výpočetních prostředků pro všechny účely.

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_taskNEBO spark_jar_task
spark_python_taskNEBO spark_submit_task
pipeline_task NEBO run_job_task
NotebookTask NEBO SparkJarTask NEBO SparkPythonTask NEBO SparkSubmitTask NEBO PipelineTask NEBO RunJobTask Pokud notebook_task, znamená to, že by tato úloha měla 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.

Pokud spark_submit_task, znamená to, že tuto úlohu by měl spustit skript pro odeslání Sparku.

Pokud pipeline_task, znamená to, že by tato úloha měla spustit kanál Delta Live Tables.

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 JobEmailNotifications 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 cílů systému, která vás upozorní při spuštění této úlohy, dokončení nebo selhání.
notification_settings JobNotificationSettings Volitelná nastavení oznámení, která se používají při odesílání oznámení každému email_notifications z nich a webhook_notifications pro tuto úlohu.
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čí s FAILED result_state nebo
INTERNAL_ERROR
life_cycle_state. Hodnota -1 znamená opakování na neomezenou dobu a hodnota 0 znamená nikdy opakovat. Výchozí chování je nikdy opakovat.
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ě opakuje.
retry_on_timeout BOOL Volitelná zásada určující, jestli se má úloha opakovat, když vyprší časový limit. Výchozí chování není opakovat 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 na
runNow.
max_concurrent_runs INT32 Volitelný maximální povolený počet souběžných spuštění úlohy.

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 úlohu aktivujete podle častého plánu a chcete povolit, aby se po sobě překrývala po sobě, nebo pokud chcete aktivovat více spuštění, která se liší podle jejich vstupních parametrů.

Toto nastavení má vliv jenom na nová spuštění. Předpokládejme například, že souběžnost úlohy je 4 a existují 4 souběžná aktivní spuštění. Nastavení souběžnosti na 3 pak nezabije žádné aktivní spuštění. 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í, že se všechna nová spuštění přeskočí. Výchozí chování je povolit pouze 1 souběžné spuštění.
health JobsHealthRules Volitelná sada pravidel stavu definovaná pro úlohu.

JobTask

Název pole Typ Popis
notebook_taskNEBO spark_jar_task
spark_python_taskNEBO spark_submit_task
pipeline_task NEBO run_job_task
NotebookTask NEBO SparkJarTask NEBO SparkPythonTask NEBO SparkSubmitTask NEBO PipelineTask NEBO RunJobTask Pokud notebook_task, znamená to, že by tato úloha měla 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.

Pokud spark_submit_task, znamená to, že tuto úlohu by měl spustit skript pro odeslání Sparku.

Pokud pipeline_task, znamená to, že by tato úloha měla spustit kanál Delta Live Tables.

Pokud run_job_task, znamená to, že by tato úloha měla spustit jinou úlohu.

JobsHealthRule

Název pole Typ Popis
metric STRING Určuje metriku stavu, která se vyhodnocuje pro konkrétní pravidlo stavu. 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.

JobsHealthRules

Název pole Typ Popis
rules Pole JobsHealthRule Volitelná sada pravidel stavu, která lze definovat pro úlohu.

Knihovna

Název pole Typ Popis
jarNEBO egg NEBO NEBO whl
pypiNEBO mavencran
STRINGOR STRING NEBO NEBO STRING PythonPyPiLibrary NEBO MavenLibrary NEBO RCranLibrary Pokud je soubor JAR, nainstalujte identifikátor URI souboru JAR. Podporují se identifikátory 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 je vejce, nainstalujte identifikátor URI vejce. Podporují se identifikátory URI DBFS a ADLS. 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. Podporují se identifikátory URI DBFS a ADLS. 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. wheels Pokud je třeba nainstalovat zip, 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 Mavenu ve stylu Gradle Například: org.jsoup:jsoup:1.7.2. Toto pole je povinné.
repo STRING Úložiště Maven pro instalaci balíčku Maven z. 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ávislostí Maven: https://maven.apache.org/guides/introduction/introduction-to-optional-and-excludes-dependencies.html.

NewCluster

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č Sparku a num_workers exekutory celkem num_workers + 1 uzly Spark.

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 automatické škálování, parametry potřebné k automatickému vertikálnímu navýšení a snížení kapacity clusterů na základě zatížení.
spark_version STRING Verze Sparku clusteru. Seznam dostupných verzí Sparku je možné načíst pomocí volání GET 2.0/clusters/spark-versions . Toto pole je povinné.
spark_conf SparkConfPair Objekt obsahující sadu volitelných párů klíč-hodnota konfigurace Sparku zadaný uživatelem. Můžete také předat řetězec dalších možností prostředí JVM ovladači a exekutorům prostřednictvím
spark.driver.extraJavaOptions a spark.executor.extraJavaOptions v uvedeném pořadí.

Příklad konfigurace 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í volání GET 2.0/clusters/list-node-types . 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:

– Značky nejsou podporovány u starších typů uzlů, jako jsou výpočty optimalizované a optimalizované pro paměť.
– Databricks umožňuje maximálně 45 vlastních značek.
cluster_log_conf ClusterLogConf Konfigurace pro doručování protokolů Sparku do dlouhodobého cíle úložiště. Pro jeden cluster je možné zadat pouze jeden cíl. Pokud je soubor uveden, protokoly se doručí do cílového umístění 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 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 cluster_log_conf je 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é prostředí zadané uživatelem. Pár klíč-hodnota formuláře (X,Y) se exportuje tak, jak je (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, $SPARK_DAEMON_JAVA_OPTS jak je znázorněno v následujícím příkladu. Tím se zajistí zahrnutí všech výchozích proměnných prostředí spravovaných 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í procesy Sparku běží 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 uzel ovladače. Musíte také zadat instance_pool_id. Podrobnosti najdete v rozhraní API fondů instancí.
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 rozhraní API fondů instancí.

NotebookOutput

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 nebude chybět, pokud dbutils.notebook.exit() nebylo nikdy volána.
truncated BOOLEAN Zda byl výsledek zkrácen nebo ne.

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á je nad limitem, spusťte poznámkový blok proti clusteru pro všechny účely a použijte tuto techniku automatického ukládání poznámkového bloku.

Název pole Typ Popis
notebook_path STRING Absolutní cesta poznámkového bloku, který se má spustit v pracovním prostoru Azure Databricks. Tato cesta musí začínat lomítkem. Toto pole je povinné.
revision_timestamp LONG Časové razítko 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 .

Chcete-li nastavit parametry obsahující informace o spuštěních úloh, použijte odkaz na dynamickou hodnotu?

Pokud poznámkový blok vezme parametr, který není zadaný v parametrech base_parameters úlohy nebo run-now parametrů přepsání, použije se výchozí hodnota z poznámkového bloku.

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 souboru dbutils.widgets.get načtěte hodnotu.
STRING Hodnota parametru.

PipelineTask

Název pole Typ Popis
pipeline_id STRING Úplný název úlohy kanálu Delta Live Tables, 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ěžet

Všechny informace o spuštění s výjimkou jeho výstupu. Výstup lze pomocí metody načíst samostatně getRunOutput .

Název pole Typ Popis
job_id INT64 Kanonický identifikátor úlohy, která obsahuje toto spuštění.
run_id INT64 Kanonický identifikátor spuštění. Toto ID je jedinečné pro všechna spuštění všech úloh.
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 Spustit stav Výsledek a stav životního cyklu spuště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 existuje.
cluster_spec ClusterSpec Snímek specifikace clusteru úlohy při vytvoření tohoto spuštění
cluster_instance Instance clusteru Cluster použitý pro toto spuštění. Pokud je zadané spuštění pro použití nového clusteru, toto pole se nastaví po vyžádání clusteru pro spuštění služby Úlohy.
overriding_parameters RunParameters Parametry použité pro toto spuštění.
start_time INT64 Čas zahájení tohoto spuštění v epoch milisekundách (milisekundy od 1. 1. 1970 UTC). To nemusí být čas, kdy se úloha úlohy spustí, například pokud je úloha naplánovaná tak, aby běžela v novém clusteru, jedná se o čas vydání volání vytvoření clusteru.
setup_duration INT64 Doba, po které trvalo nastavení clusteru v milisekundách. U spuštění, která běží na nových clusterech, je to čas vytvoření clusteru, pro spuštění, která běží na existujících clusterech, by tentokrát měla být velmi krátká.
execution_duration INT64 Doba v milisekundách trvala spuštění příkazů v souboru JAR 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 trvala ukončení clusteru a vyčištění všech přidružených artefaktů. Celková doba trvání spuštění je součet setup_duration, execution_duration a cleanup_duration.
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.
trigger Typ triggeru Typ triggeru, který toto spuštění aktivoval.
run_name STRING Volitelný název 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 podrobností spuštění.
run_type STRING Typ spuštění.

- JOB_RUN – Normální spuštění úlohy. Spuštění vytvořené pomocí příkazu Spustit
- WORKFLOW_RUN - Spuštění pracovního postupu. Spuštění vytvořené pomocí dbutils.notebook.run
- SUBMIT_RUN - Odešlete spuštění. Spuštění vytvořené pomocí příkazu Spustit
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), další spuštění se vytvoří s original_attempt_run_id ID původního pokusu a zvýšením attempt_number. Spuštění se opakují, dokud nebudou úspěšné, a maximální attempt_number hodnota je stejná jako max_retries hodnota úlohy.

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 spuštění. 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 Spuštění se aktivovalo, ale je zařazeno do fronty, protože dosáhlo jednoho z následujících limitů:

– Maximální počet souběžných aktivních spuštění v pracovním prostoru.
– Maximální počet souběžných Run Job úloh se spustí v pracovním prostoru.
– Maximální počet souběžných spuštění úlohy.

Před dosažením tohoto stavu musí být úloha nebo spuštění ve frontě povolené.
PENDING Spuštění se aktivovalo. Pokud je již dosaženo nakonfigurovaného maximálního počtu souběžných spuštění úlohy, spuštění okamžitě přejde do SKIPPED stavu bez přípravy prostředků. Jinak probíhá příprava clusteru a provádění.
RUNNING Úloha tohoto spuštění se spouští.
TERMINATING Úloha tohoto spuštění se dokončila a cluster a kontext spuštění se vyčistí.
TERMINATED Úloha tohoto spuštění byla dokončena a kontext spuštění clusteru a 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í spuštění stejné úlohy již bylo aktivní. Tento stav je terminál.
INTERNAL_ERROR Výjimečný stav, který značí selhání ve službě Úlohy, například selhání sítě za dlouhou dobu. Pokud spuštění v novém clusteru skončí ve INTERNAL_ERROR stavu, služba Úlohy cluster co nejdříve ukončí. Tento stav je terminál.

RunParameters

Parametry pro toto spuštění V požadavku by měl být v závislosti na typu úkolu úlohy zadán run-now pouze jeden z jar_params python_paramsnebo notebook_params. Úlohy s úlohou Spark JAR nebo úlohou Pythonu přebírají seznam parametrů založených na pozici a úlohy s úkoly poznámkového 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 ho nezadáte 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ů.

Chcete-li nastavit parametry obsahující informace o spuštěních úloh, použijte odkaz na dynamickou hodnotu?
notebook_params Mapa města ParamPair Mapa z klíčů na hodnoty pro úlohy s úkolem poznámkového 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é, run-nowaktivované spuštění používá základní parametry úlohy.

notebook_params nelze zadat ve spojení s jar_params.

Chcete-li nastavit parametry obsahující informace o spuštěních úloh, použijte odkaz na dynamickou hodnotu?

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 úlohami Pythonu, 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?

> [! DŮLEŽITÉ] >> 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ů.

Chcete-li nastavit parametry obsahující informace o spuštěních úloh, použijte odkaz na dynamickou hodnotu?

> [! DŮLEŽITÉ] >> 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 a indikuje výsledek úkolu.
  • RUNNINGPokud life_cycle_state = PENDINGnení stav výsledku , nebo SKIPPEDnení k dispozici.
  • Pokud life_cycle_state = TERMINATING nebo životní cyklus = INTERNAL_ERROR: stav výsledku je k dispozici, pokud má spuštění úlohu a podařilo se ji spustit.

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 Spuštění se zastavilo po dosažení časového limitu.
CANCELED Spuštění bylo zrušeno na žádost uživatele.

Spustit stav

Název pole Typ Popis
life_cycle_state RunLifeCycleState Popis aktuálního umístění spuštění v životním cyklu spuštění. 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

Dvojice klíč-hodnota konfigurace Sparku

Typ Popis
STRING Název vlastnosti konfigurace.
STRING Hodnota vlastnosti konfigurace.

SparkEnvPair

Páry klíč-hodnota proměnné 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. jar Místo toho zadejte pole.libraries 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 odkaz na dynamickou hodnotu?

SparkPythonTask

Název pole Typ Popis
python_file STRING Identifikátor URI souboru Pythonu, který se má spustit. Podporované jsou cesty DBFS. 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 odkaz na dynamickou hodnotu?

SparkSubmitTask

Důležité

  • Úlohy odesílání Sparku můžete vyvolat pouze v nových clusterech.
  • Ve specifikaci libraries new_cluster a spark_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-modea executor-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-memorya --executor-memory na menší hodnotu nechat místo pro použití mimo haldu.
  • Argumenty --jars, --files --py-filespodporují 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 Parametrypříkazového

Chcete-li nastavit parametry obsahující informace o spuštěních úloh, použijte odkaz na dynamickou hodnotu?

Typ triggeru

Jedná se o typ triggerů, které můžou spustit spuštění.

Typ Popis
PERIODIC Naplánuje pravidelné spouštění, jako je plánovač cron.
ONE_TIME Jednou se aktivuje, že se aktivuje 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.

ViewItem

Exportovaný obsah je ve formátu HTML. Pokud je například zobrazení pro export řídicí panely, 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 je název poznámkového bloku. V případě zobrazení řídicího panelu je název řídicího panelu.
type Typ zobrazení Typ položky zobrazení

Typ zobrazení

Typ Popis
NOTEBOOK Položka zobrazení poznámkového bloku
DASHBOARD Položka zobrazení řídicího panelu

ViewsToExport

Zobrazení k exportu: kód, všechny řídicí panely nebo všechny.

Typ Popis
CODE Zobrazení kódu poznámkového bloku
DASHBOARDS Všechna zobrazení řídicího panelu 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é.

WebhookNotifications

Název pole Typ Popis
on_start Pole webhooku 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 lze zadat on_start maximálně 3 cíle.
on_success Pole webhooku Volitelný seznam systémových cílů, které se mají oznámit po úspěšném dokončení spuštění. Spuštění je považováno za úspěšné dokončení, pokud končí na 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 lze zadat on_success maximálně 3 cíle.
on_failure Pole webhooku Volitelný seznam systémových cílů, které mají být oznámeny při neúspěšném spuštění. Spuštění je považováno za neúspěšné dokončení, pokud končí na INTERNAL_ERROR
life_cycle_statenebo , SKIPPEDFAILEDnebo 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 lze zadat on_failure maximálně 3 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 překročí prahovou hodnotu zadanou pro RUN_DURATION_SECONDS metriku health v poli. Pro vlastnost lze zadat on_duration_warning_threshold_exceeded maximálně 3 cíle.

WorkspaceStorageInfo

Informace o úložišti pracovního prostoru

Název pole Typ Popis
destination STRING Místo určení souboru. Příklad: /Users/someone@domain.com/init_script.sh