Sdílet prostřednictvím


Spustí rozhraní příkazového řádku (starší verze)

Důležité

Tato dokumentace byla vyřazena a nemusí být aktualizována.

Tyto informace platí pro starší verzi Rozhraní příkazového řádku Databricks verze 0.18 a novější. Databricks doporučuje místo toho použít novější rozhraní příkazového řádku Databricks verze 0.205 nebo vyšší. Podívejte se, co je rozhraní příkazového řádku Databricks? Pokud chcete zjistit svou verzi rozhraní příkazového řádku Databricks, spusťte databricks -vpříkaz .

Pokud chcete migrovat z Rozhraní příkazového řádku Databricks verze 0.18 nebo novější na Databricks CLI verze 0.205 nebo novější, přečtěte si téma Migrace rozhraní příkazového řádku Databricks.

Úlohu Databricks spustíte podpříkazy rozhraní příkazového řádku tak, že je připojíte k databricks runs dílčím příkazům CLI úloh Databricks tak, že je připojíte k databricks jobs. Podpříkazy rozhraní příkazového řádku pro úlohy Databricks najdete v tématu Cli úloh (starší verze). Společně tyto dílčí příkazy volají rozhraní API úloh a rozhraní API úloh 2.0.

Důležité

Úloha Databricks spouští rozhraní příkazového řádku podporuje volání dvou verzí rozhraní REST API pro úlohy Databricks: verze 2.1 a 2.0. (Funkce spuštění úloh je součástí rozhraní REST API úloh.) Verze 2.1 přidává podporu orchestrace úloh s více úlohami; Viz Vytvoření a spuštění úloh Azure Databricks a aktualizace z rozhraní API úloh 2.0 na verzi 2.1. Databricks doporučuje volat verzi 2.1, pokud nemáte starší skripty, které spoléhají na verzi 2.0 a nejdou migrovat.

Pokud není uvedeno jinak, programové chování popsané v tomto článku platí stejně pro verze 2.1 a 2.0.

Poznámka

Pokud při provádění úloh spouští žádosti rozhraní příkazového řádku na úrovni 500, doporučuje Databricks opakovat žádosti po dobu až 10 minut (s minimálním 30sekundovým intervalem mezi opakováními).

Požadavky na volání rozhraní REST API úloh 2.1

Pokud chcete nastavit úlohu Databricks, spustí rozhraní příkazového řádku (a rozhraní příkazového řádku úloh) pro volání rozhraní REST API úloh 2.1, postupujte takto:

  1. Aktualizujte rozhraní příkazového řádku na verzi 0.16.0 nebo vyšší.

  2. Proveďte některou z následujících akcí:

    • Spusťte příkaz databricks jobs configure --version=2.1. Tím se toto nastavení jobs-api-version = 2.1 přidá do souboru ~/.databrickscfg v systémech Unix, Linux nebo macOS nebo %USERPROFILE%\.databrickscfg ve Windows. Všechny dílčí příkazy rozhraní příkazového řádku (a úlohy CLI) všech úloh budou ve výchozím nastavení volat rozhraní REST API úloh 2.1.
    • Ručně přidejte nastavení jobs-api-version = 2.1 do souboru ~/.databrickscfg v systémech Unix, Linux nebo macOS nebo %USERPROFILE%\.databrickscfg Windows. Všechny dílčí příkazy rozhraní příkazového řádku (a úlohy CLI) všech úloh budou ve výchozím nastavení volat rozhraní REST API úloh 2.1.
    • Připojte možnost --version=2.1 (například) k pokynu, databricks runs list --version=2.1aby úloha spustila rozhraní příkazového řádku, aby volala pouze rozhraní REST API úloh 2.1 pro toto volání.

    Pokud provedete žádnou z předchozích akcí, spustí se rozhraní příkazového řádku úlohy (a rozhraní příkazového řádku úloh) ve výchozím nastavení rozhraní REST API úloh 2.0.

Požadavky na volání rozhraní REST API úloh 2.0

Pokud chcete nastavit úlohu Databricks, která spustí rozhraní příkazového řádku (a rozhraní příkazového řádku úloh) pro volání rozhraní REST API úloh 2.0, udělejte jednu z těchto věcí:

  • Použijte verzi rozhraní příkazového řádku Databricks nižší než 0.16.0 nebo
  • Aktualizujte rozhraní příkazového řádku na verzi 0.16.0 nebo novější a proveďte jednu z následujících věcí:
    • Spusťte příkaz databricks jobs configure --version=2.0. Tím se toto nastavení jobs-api-version = 2.0 přidá do souboru ~/.databrickscfg v systémech Unix, Linux nebo macOS nebo %USERPROFILE%\.databrickscfg ve Windows. Všechny dílčí příkazy rozhraní příkazového řádku (a úlohy CLI) všech úloh budou ve výchozím nastavení volat rozhraní REST API úloh 2.0.
    • Ručně přidejte nastavení jobs-api-version = 2.0 do souboru ~/.databrickscfg v systémech Unix, Linux nebo macOS nebo %USERPROFILE%\.databrickscfg Windows. Všechny dílčí příkazy rozhraní příkazového řádku (a úlohy CLI) všech úloh budou ve výchozím nastavení volat rozhraní REST API úloh 2.0.
    • Připojte možnost --version=2.1 (například) k pokynu, databricks runs list --version=2.0aby úloha spustila rozhraní příkazového řádku pro volání rozhraní REST API úloh 2.0 pouze pro toto volání.

Pokud provedete žádnou z předchozích akcí, spustí se rozhraní příkazového řádku úlohy (a rozhraní příkazového řádku úloh) ve výchozím nastavení rozhraní REST API úloh 2.0.

Dílčí příkazy a obecné použití

databricks runs --help
Usage: databricks runs [OPTIONS] COMMAND [ARGS]...

  Utility to interact with jobs runs.

Options:
  -v, --version   [VERSION]
  --debug         Debug mode. Shows full stack trace on error.
  --profile TEXT  CLI connection profile to use. The default profile is
                  "DEFAULT".

  -h, --help      Show this message and exit.

Commands:
  cancel      Cancels the specified run.
  get         Gets the metadata about a run in JSON form.
  get-output  Gets the output of a run.
  list        Lists job runs.
  submit      Submits a one-time run.

Zrušení spuštění

Pokud chcete zobrazit dokumentaci k použití, spusťte databricks runs cancel --helppříkaz .

databricks runs cancel --run-id 119
{}

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

Pokud chcete zobrazit dokumentaci k použití, spusťte databricks runs get --helppříkaz .

Obecné použití

databricks runs get --run-id 2785782

Poznámky k využití cli 2.1 pro úlohy a příklad odpovědi

Viz Spuštění přiaktualizaci z rozhraní API úloh 2.0 na verzi 2.1.

Příklad odpovědi cli 2.0 pro úlohy

{
  "job_id": 1269263,
  "run_id": 2785782,
  "number_in_job": 1111,
  "original_attempt_run_id": 2785782,
  "state": {
    "life_cycle_state": "TERMINATED",
    "result_state": "SUCCESS",
    "state_message": ""
  },
  "task": {
    "notebook_task": {
      "notebook_path": "/Users/someone@example.com/notebooks/my-notebook.ipynb"
    }
  },
  "cluster_spec": {
    "new_cluster": {
      "spark_version": "8.1.x-scala2.12",
      "node_type_id": "Standard_F16s",
      "enable_elastic_disk": true,
      "azure_attributes": {
        "availability": "ON_DEMAND_AZURE"
      },
      "num_workers": 8
    }
  },
  "cluster_instance": {
    "cluster_id": "1234-567890-abcd123",
    "spark_context_id": "1234567890123456789"
  },
  "start_time": 1620947196985,
  "setup_duration": 36000,
  "execution_duration": 119000,
  "cleanup_duration": 3000,
  "end_time": 1620947355499,
  "trigger": "ONE_TIME",
  "creator_user_name": "someone@example.com",
  "run_name": "my-notebook-run",
  "run_page_url": "https://adb-1234567890123456.7.azuredatabricks.net/?o=1234567890123456#job/1269263/run/1111",
  "run_type": "JOB_RUN",
  "attempt_number": 0
}

Získání výstupu spuštění

Pokud chcete zobrazit dokumentaci k použití, spusťte databricks runs get-output --helppříkaz .

Poznámka

notebook_task Když vrátí hodnotu z volání dbutils.notebook.exit(), Databricks omezí vrácenou hodnotu na prvních 5 MB dat. Pokud chcete vrátit větší výsledek, můžete výsledky úloh uložit do služby cloudového úložiště.

Obecné použití

databricks runs get-output --run-id 2785782

Poznámky k využití Cli 2.1 pro úlohy

Viz Zobrazení výstupu získání výstupu při aktualizaci z rozhraní API úloh 2.0 na verzi 2.1.

Příklad odpovědi cli 2.0 pro úlohy

{
  "metadata": {
    "job_id": 1269263,
    "run_id": 2785782,
    "number_in_job": 1111,
    "original_attempt_run_id": 2785782,
    "state": {
      "life_cycle_state": "TERMINATED",
      "result_state": "SUCCESS",
      "state_message": ""
    },
    "task": {
      "notebook_task": {
        "notebook_path": "/Users/someone@example.com/notebooks/my-notebook.ipynb"
      }
    },
    "cluster_spec": {
      "new_cluster": {
        "spark_version": "8.1.x-scala2.12",
        "node_type_id": "Standard_F16s",
        "enable_elastic_disk": true,
        "azure_attributes": {
          "availability": "ON_DEMAND_AZURE"
        },
        "num_workers": 8
      }
    },
    "cluster_instance": {
      "cluster_id": "1234-567890-abcd123",
      "spark_context_id": "1234567890123456789"
    },
    "start_time": 1620947196985,
    "setup_duration": 36000,
    "execution_duration": 119000,
    "cleanup_duration": 3000,
    "end_time": 1620947355499,
    "trigger": "ONE_TIME",
    "creator_user_name": "someone@example.com",
    "run_name": "my-notebook-run",
    "run_page_url": "https://adb-1234567890123456.7.azuredatabricks.net/?o=1234567890123456#job/1269263/run/1111",
    "run_type": "JOB_RUN",
    "attempt_number": 0
  },
  "notebook_output": {}
}

Získání informací o všech spuštěních

Pokud chcete zobrazit dokumentaci k použití, spusťte databricks runs list --helppříkaz .

Obecné použití

databricks runs list --output JSON

Poznámky k využití cli 2.1 pro úlohy a příklad odpovědi

Viz seznam Spuštění v aktualizaci z rozhraní API úloh 2.0 na verzi 2.1.

Příklad odpovědi cli 2.0 pro úlohy

{
  "runs": [
    {
      "job_id": 1269263,
      "run_id": 2785782,
      "number_in_job": 1111,
      "original_attempt_run_id": 2785782,
      "state": {
         "life_cycle_state": "TERMINATED",
         "result_state": "SUCCESS",
         "state_message": ""
      },
      "task": {
        "notebook_task": {
          "notebook_path": "/Users/someone@example.com/notebooks/my-notebook.ipynb"
        }
      },
      "cluster_spec": {
        "new_cluster": {
          "spark_version": "8.1.x-scala2.12",
          "node_type_id": "Standard_F16s",
          "enable_elastic_disk": true,
          "azure_attributes": {
            "availability": "ON_DEMAND_AZURE"
          },
          "num_workers": 8
        }
      },
      "cluster_instance": {
        "cluster_id": "1234-567890-abcd123",
        "spark_context_id": "1234567890123456789"
      },
      "start_time": 1620947196985,
      "setup_duration": 36000,
      "execution_duration": 119000,
      "cleanup_duration": 3000,
      "end_time": 1620947355499,
      "trigger": "ONE_TIME",
      "creator_user_name": "someone@example.com",
      "run_name": "my-notebook-run",
      "run_page_url": "https://adb-1234567890123456.7.azuredatabricks.net/?o=1234567890123456#job/1269263/run/1111",
      "run_type": "JOB_RUN",
      "attempt_number": 0
    },
    ...
  ],
  "has_more": false
}

Pokud has_more se vrátí true, jsou k dispozici informace o dalších spuštěních. --offset Tato možnost slouží k vrácení informací o spuštěních vzhledem k poslednímu spuštění. Pokud například chcete vrátit informace začínající desátým posledním spuštěním, zadejte --offset 10.

--limit Pomocí této možnosti můžete vrátit informace o pevném počtu spuštění. Pokud chcete například vrátit informace o dalších 5 spuštěních, zadejte --limit 5. Můžete zadat až 1 000 spuštění. Pokud není zadáno, výchozí hodnota je 20.

Odeslání jednorázového běhu

Pokud chcete zobrazit dokumentaci k použití, spusťte databricks runs submit --helppříkaz .

Obecné použití

databricks runs submit --json-file submit-run.json

Ukázky využití a žádosti o úlohy rozhraní REST API 2.1

Viz Spuštění odesílanáz rozhraní API úloh 2.0 na verzi 2.1.

Příklad požadavku a odpovědi rozhraní REST API pro úlohy 2.0

submit-run.json:

{
  "run_name": "my-spark-run",
  "new_cluster": {
    "spark_version": "8.1.x-scala2.12",
    "node_type_id": "Standard_F16s",
    "enable_elastic_disk": true,
    "azure_attributes": {
      "availability": "ON_DEMAND_AZURE"
    },
    "num_workers": 8
  },
  "libraries": [
    {
      "jar": "dbfs:/my-jar.jar"
    },
    {
      "maven": {
        "coordinates": "org.jsoup:jsoup:1.7.2"
      }
    }
  ],
  "spark_jar_task": {
    "main_class_name": "com.databricks.ComputeModels"
  }
}
{
  "run_id": 123
}