Freigeben über


Führt CLI aus (veraltet)

Wichtig

Diese Dokumentation wurde eingestellt und wird unter Umständen nicht aktualisiert.

Diese Informationen gelten für ältere Versionen der Databricks-Befehlszeilenschnittstelle (0.18 und niedriger). Databricks empfiehlt, stattdessen die neuere Databricks-CLI Version 0.205 oder höher zu verwenden. Siehe Databricks CLI. Führen Sie databricks -v aus, um die Version Ihrer Databricks CLI zu ermitteln.

Informationen zum Migrieren der Databricks CLI-Version 0.18 oder niedriger zur Databricks CLI-Version 0.205 oder höher finden Sie unter Databricks CLI-Migration.

Sie führen Databricks-Joblauf-CLI-Unterbefehle aus, indem Sie sie an databricks runs anhängen, und Databricks-Aufträge-CLI-Unterbefehle, indem Sie sie an databricks jobs anhängen. Informationen zu CLI-Unterbefehlen für Databricks-Aufträge finden Sie unter Jobs CLI (Legacy). Zusammen rufen diese Unterbefehle die Auftrags-API und die Auftrags-API 2.0 auf.

Wichtig

Die Databricks-Auftragsausführungs-CLI unterstützt Aufrufe von zwei Versionen der REST-API für Databricks-Aufträge: Version 2.1 und Version 2.0. (Funktionen zur Auftragsausführung sind Teil der Auftrags-REST-API.) Version 2.1 bietet Unterstützung für die Orchestrierung von Aufträgen mit mehreren Aufgaben; siehe Lakeflow Jobs und Aktualisierung von der Jobs-API 2.0 auf 2.1. Databricks empfiehlt, Version 2.1 aufzurufen, sofern Sie keine Legacy-Skripts nutzen, die Version 2.0 erfordern und nicht migriert werden können.

Sofern nicht anders angegeben, gelten die in diesem Artikel beschriebenen programmgesteuerten Verhaltensweisen gleichermaßen für die Versionen 2.1 und 2.0.

Hinweis

Wenn Sie für Ausführungs-CLI-Anforderungen einen Fehler der Kategorie 500 erhalten, empfiehlt Databricks, Anforderungen bis zu 10 Minuten lang zu wiederholen (mit einem zeitlichen Abstand von mindestens 30 Sekunden zwischen den Wiederholungsversuchen).

Anforderungen zum Aufrufen der Jobs REST-API Version 2.1

Gehen Sie wie folgt vor, um die Databricks-CLI für Auftragsausführungen (und die CLI für Aufträge) zum Aufrufen der Jobs-REST-API 2.1 einzurichten:

  1. Aktualisieren Sie die CLI auf Version 0.16.0 oder höher.

  2. Führen Sie eines der folgenden Verfahren aus:

    • Führen Sie den Befehl databricks jobs configure --version=2.1aus. Dadurch wird die Einstellung jobs-api-version = 2.1 der Datei ~/.databrickscfg unter Unix, Linux oder macOS oder %USERPROFILE%\.databrickscfg auf Windows hinzugefügt. Alle Unterbefehle der CLI für Auftragsausführungen (und der Auftrags-CLI) rufen standardmäßig die REST-API Version 2.1 für Aufträge auf.
    • Fügen Sie die Einstellung jobs-api-version = 2.1 manuell zur Datei ~/.databrickscfg unter Unix, Linux oder macOS oder %USERPROFILE%\.databrickscfg auf Windows hinzu. Alle Unterbefehle der CLI für Auftragsausführungen (und der Auftrags-CLI) rufen standardmäßig die REST-API Version 2.1 für Aufträge auf.
    • Fügen Sie die Option --version=2.1 (z. B. databricks runs list --version=2.1) hinzu, um die CLI für Jobausführungen anzuweisen, nur für diesen Aufruf die Jobs REST API Version 2.1 aufzurufen.

    Wenn Sie keine der vorherigen Aktionen ausführen, ruft das "Job Runs"-CLI (und das "Jobs"-CLI) standardmäßig die REST-API Version 2.0 für Aufträge auf.

Anforderungen für den Aufruf der Jobs-REST-API 2.0

Um die Databricks-Job-CLI (und die Aufträge-CLI) für den Aufruf der Jobs-REST-API 2.0 einzurichten, gehen Sie folgendermaßen vor:

  • Verwenden Sie eine Version der Databricks-CLI unter 0.16.0 oder
  • Aktualisieren Sie die CLI auf Version 0.16.0 oder höher, und gehen Sie dann wie folgt vor:
    • Führen Sie den Befehl databricks jobs configure --version=2.0aus. Dadurch wird die Einstellung jobs-api-version = 2.0 der Datei ~/.databrickscfg unter Unix, Linux oder macOS oder %USERPROFILE%\.databrickscfg auf Windows hinzugefügt. Alle CLI-Unterbefehle zur Auftragsausführung (und die Auftrags-CLI) rufen standardmäßig die REST-API der Version 2.0 für Aufträge auf.
    • Fügen Sie die Einstellung jobs-api-version = 2.0 manuell zur Datei ~/.databrickscfg unter Unix, Linux oder macOS oder %USERPROFILE%\.databrickscfg auf Windows hinzu. Alle CLI-Unterbefehle für Auftragsausführungen und die Auftrags-CLI rufen standardmäßig die Jobs-REST-API in Version 2.0 auf.
    • Fügen Sie die Option --version=2.1 (z. B. databricks runs list --version=2.0) hinzu, um die Befehlszeilenschnittstelle anzuweisen, nur für diesen speziellen Aufruf die Jobs REST API 2.0 zu verwenden.

Wenn Sie keine der vorherigen Aktionen ausführen, ruft die CLI für Auftragsausführungen (und die Auftrags-CLI) standardmäßig die REST-API Version 2.0 für Aufträge auf.

Unterbefehle und allgemeine Verwendung

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.

Abbrechen eines Laufs

Führen Sie databricks runs cancel --help aus, um die Nutzungsdokumentation anzuzeigen.

databricks runs cancel --run-id 119
{}

Abrufen von Informationen zu einer Ausführung

Führen Sie databricks runs get --help aus, um die Nutzungsdokumentation anzuzeigen.

Allgemeine Verwendung

databricks runs get --run-id 2785782

Verwendungsnotizen und Antwortbeispiel für Jobs CLI 2.1

Weitere Informationen finden Sie unter Runs get in Aktualisieren von Jobs-API 2.0 auf 2.1.

Beispiel für eine Antwort von Jobs CLI 2.0

{
  "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
}

Die Ausgabe eines Laufs abrufen

Führen Sie databricks runs get-output --help aus, um die Nutzungsdokumentation anzuzeigen.

Hinweis

Wenn ein notebook_task einen Wert aus einem Aufruf von dbutils.notebook.exit() zurückgibt, beschränkt Databricks den zurückgegebenen Wert auf die ersten 5 MB an Daten. Zur Rückgabe größerer Ergebnisse können Sie Auftragsergebnisse in einem Cloudspeicherdienst speichern.

Allgemeine Verwendung

databricks runs get-output --run-id 2785782

Verwendungsanmerkungen zur Jobs-CLI 2.1

Weitere Informationen finden Sie unter Runs get output in Aktualisieren von Jobs-API 2.0 auf 2.1.

Antwortbeispiel für Jobs CLI 2.0

{
  "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": {}
}

Informationen über alle Läufe abrufen

Führen Sie databricks runs list --help aus, um die Nutzungsdokumentation anzuzeigen.

Allgemeine Verwendung

databricks runs list --output JSON

Verwendungsnotizen und Antwortbeispiel für Jobs CLI 2.1

Weitere Informationen finden Sie unter Runs list in Aktualisieren von Jobs-API 2.0 auf 2.1.

Beispiel für eine Antwort von Jobs CLI 2.0

{
  "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
}

Wenn has_moretrue zurückgibt, sind Informationen zu weiteren Ausführungen verfügbar. Verwenden Sie die --offset-Option, um Informationen zu Ausführungen relativ zur letzten Ausführung zurückzugeben. Geben Sie beispielsweise --offset 10 an, um Informationen beginnend mit der zehntletzten Ausführung zurückzugeben.

Verwenden Sie die --limit-Option, um Informationen zu einer festen Anzahl von Ausführungen zurückzugeben. Geben Sie beispielsweise --limit 5 an, um Informationen für bis zu den nächsten fünf Ausführungen zurückzugeben. Sie können bis zu 1.000 Ausführungen angeben. Wenn nichts angegeben ist, wird der Standardwert 20 verwendet.

Einmaligen Durchlauf übermitteln

Führen Sie databricks runs submit --help aus, um die Nutzungsdokumentation anzuzeigen.

Allgemeine Verwendung

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

Verwendungshinweise und Anforderungsbeispiel für die Jobs REST-API 2.1

Weitere Informationen finden Sie unter Runs submit in Aktualisieren von Jobs-API 2.0 auf 2.1.

Jobs REST API-Version 2.0 Anforderungs- und Antwortbeispiel

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
}