Informationen zum Exportjob

Auf dieser Seite wird beschrieben, wie Sie die in Batch gespeicherten Informationen für Ihre Jobs mithilfe von Workflows in eine BigQuery-Tabelle exportieren. Erfahren Sie insbesondere, wie Sie den Beispiel-Workflow für Exportjobs ausführen und sich die resultierenden Jobinformationen in BigQuery ansehen.

Das Exportieren der Informationen eines Jobs ist nützlich, wenn Sie die Informationen behalten möchten nachdem ein Job automatisch oder manuell gelöscht wurde oder die Analyse der Informationen außerhalb von Batch. Wenn Sie nur Informationen zu Änderungen des Aufgaben- und Jobstatus nach BigQuery exportieren möchten, lesen Sie stattdessen den Hilfeartikel Jobs mithilfe von Benachrichtigungen überwachen.

Um zu erfahren, wie Sie Jobinformationen exportieren, die in anderen Google Cloud-Dienste finden Sie in der Exportdokumentation für den jeweiligen Dienst. Beispiele:

Hinweise

  1. Wenn Sie Batch zum ersten Mal verwenden, lesen Sie Erste Schritte mit Batch und aktivieren Sie Batch, indem Sie den Voraussetzungen für Projekte und Nutzer.
  2. Enable the BigQuery and Workflows APIs.

    Enable the APIs

  3. Optional: Identifizieren Sie ein vorhandenes BigQuery-Dataset oder -Tabelle in Ihrem Projekt, in das Sie die Jobinformationen speichern. Eine vorhandene Tabelle muss ein übereinstimmendes Schema haben.

    Andernfalls können Sie mit dem Workflow für Exportjobs ein neues Dataset oder eine neue Tabelle erstellen.

  4. Bereiten Sie ein Dienstkonto für den Exportjobs-Workflow so vor:

    1. Erstellen Sie ein neues Dienstkonto oder identifizieren Sie ein vorhandenes Dienstkonto.
    2. Damit das Dienstkonto die erforderlichen Berechtigungen zum Ausführen des Workflows für Exportjobs hat, bitten Sie Ihren Administrator, dem Dienstkonto die folgenden IAM-Rollen für das Projekt zu zuweisen:

      Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

      Möglicherweise kann Ihr Administrator dem Dienstkonto auch die erforderlichen Berechtigungen durch benutzerdefinierte Rollen oder andere vordefinierte Rollen

  5. Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für das Projekt zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Erstellen, Bereitstellen und Ausführen des Workflows für Exportjobs benötigen:

  6. Achten Sie darauf, dass Nutzer in Ihrem Projekt die exportierten Jobinformationen aufrufen können.

    Damit ein Nutzer die erforderlichen Berechtigungen zum Exportieren von Jobinformationen hat, bitten Sie Ihren Administrator, ihm die IAM-Rolle BigQuery-Datenbetrachter (roles/bigquery.dataViewer) für die Tabelle, den Datensatz oder das Projekt zu gewähren.

Informationen zum Exportjob

In diesem Abschnitt wird erläutert, wie Sie Jobinformationen mithilfe der Methode Export-Jobs-Workflow, der aus der export-to-bigquery-Codebeispiel. Mit dem Workflow für Exportjobs werden die Informationen zu den Jobs Ihres Projekts exportiert, die sich in der angegebenen Region befinden und die angegebenen Filterkriterien erfüllen.

Mit dem Workflow "Exportjobs" werden Jobinformationen in eine angegebene Tabelle in einem die vom Workflow automatisch erstellt werden, wenn sie in Ihrem Projekt noch nicht vorhanden sind. Standardmäßig führt der Workflow für Exportjobs auch die exportierten Jobs aus Batch löscht, aber Sie können optional den Workflow für Exportjobs so bearbeiten, dass die Jobs nicht gelöscht werden.

Führen Sie für jeden Exportjob-Workflow, den Sie verwenden möchten, die folgenden Schritte aus:

  1. Konfigurieren Sie die Workflowdefinition.
  2. Erstellen und bereitstellen des Workflows
  3. Workflow ausführen Wiederholen Sie diesen Schritt jedes Mal, wenn Sie die angegebenen Jobs exportieren möchten.

Workflowdefinition konfigurieren

  1. Laden Sie die Datei export-to-bigquery-delete-batch-jobs.yaml von GitHub herunter.

  2. Öffnen Sie die Datei export-to-bigquery-delete-batch-jobs.yaml in einem Texteditor. Nehmen Sie dann die folgenden Änderungen vor:

    1. Ersetzen Sie sys.get_env("GOOGLE_CLOUD_PROJECT_ID") durch Ihre Projekt-ID, die als String formatiert ist, z. B. "my-project-id".

    2. Ersetzen Sie sys.get_env("GOOGLE_CLOUD_LOCATION") durch die Region, die die Jobs enthält, die Sie exportieren möchten, formatiert als String, z. B. "us-central1".

    3. Optional: Bearbeiten Sie die Filterkriterien, die angeben, welche Jobs exportiert werden sollen.

      Standardmäßig werden im Workflow „Exportjobs“ die Filterkriterien "(status.state:SUCCEEDED OR status.state:FAILED) AND create_time<=\"2023-05-01T00:00:00Z\"" angegeben. Mit diesem Standardfilterkriterien werden Informationen nur für Jobs exportiert, die den Status SUCCEEDED oder FAILED haben und vor oder vom 2023-05-01T00:00:00Z RFC 3339 Zeitstempel.

    4. Optional: Ersetzen Sie default_dataset_id durch einen anderen Namen für den Dataset, das der Exportjobs-Workflow verwenden oder erstellen soll.

    5. Optional: Ersetzen Sie default_table_id durch einen anderen Namen der Tabelle, die vom Workflow für Exportjobs verwendet oder erstellt werden soll.

    6. Wenn die exportierten Jobs nicht vom Workflow gelöscht werden sollen, gehen Sie so vor:

      1. Entfernen Sie die folgenden Zeilen:

                - log_delete_step:
                    call: sys.log
                    args:
                      text: ${"Deleting Batch job " + j.name}
                      severity: NOTICE
                - delete_job:
                    call: googleapis.batch.v1.projects.locations.jobs.delete
                    args:
                      name: ${j.name}
        
      2. + " and deleted" entfernen.

    7. Speichern Sie die Datei. Lassen Sie die Datei geöffnet.

Workflow erstellen und bereitstellen

  1. Öffnen Sie in der Google Cloud Console die Seite Workflows.

    Zur Seite "Workflows"

  2. Klicken Sie auf der Seite Workflows auf Erstellen.

  3. Geben Sie im Feld Workflowname einen Namen für den Workflow ein, z. B. export-batch-jobs-us-central1.

  4. Wählen Sie in der Liste Dienstkonto das Dienstkonto aus, vorbereitet haben.

  5. Klicken Sie auf Weiter.

  6. Ersetzen Sie im Workflow-Editor den Beispiel-Workflow durch den Inhalt der Datei export-to-bigquery-delete-batch-jobs.yaml. Anschließend können Sie schließen Sie die Datei.

  7. Klicken Sie auf Bereitstellen. Die Seite Workflow-Details wird geöffnet.

Workflow ausführen

  1. Klicken Sie auf der Seite Workflowdetails auf Ausführen. Die Seite Workflow ausführen wird geöffnet.

  2. Klicken Sie auf der Seite Workflow ausführen auf Ausführen.

  3. Warten Sie auf der Seite Ausführungsdetails, bis die Ausführung des Workflows abgeschlossen ist. Beispielsweise dauert der Export und das Löschen einiger Jobs in der Regel nur wenige Sekunden. Wenn Sie jedoch viele Jobs exportieren und löschen, kann die Ausführung länger dauern.

    Nach Abschluss der Ausführung des Workflows werden die Ergebnisse im Bereich Ausgabe angezeigt.

Exportierte Jobinformationen aufrufen

In diesem Abschnitt wird erläutert, wie Sie die von den Exportjobs erstellten Tabellendaten aufrufen. zu optimieren. Sie können beispielsweise mit den folgenden Schritten überprüfen, ob der Workflow ausgeführt wurde, und durchsuchen die Tabellendaten. Weitere Informationen zum Ansehen und Verwenden der exportierten Jobinformationen, z. B. zum Schreiben von Abfragen, finden Sie in der BigQuery-Dokumentation unter Tabellendaten verwalten.

  1. Öffnen Sie in der Google Cloud Console die Seite BigQuery:

    BigQuery aufrufen

  2. Öffnen Sie im Bereich Explorer die Tabelle mit den exportierten Jobinformationen:

    1. Geben Sie im Feld BigQuery-Ressourcen suchen den Namen ein. Tabelle aus Ihrem Exportjobs-Workflow. Der Standardtabellenname ist beispielsweise default_table_id.
    2. Klicken Sie auf den Namen der Tabelle. Die Seite mit den Tabellendetails wird geöffnet.
    3. Klicken Sie auf der Seite mit den Tabellendetails auf den Tab Details.

      Notieren Sie sich auf dem Tab Details den Zeitstempel Zuletzt geändert und die Zeilenanzahl.

    4. Klicken Sie auf der Seite mit den Tabellendetails auf den Tab Vorschau.

Nächste Schritte