Auf dieser Seite wird beschrieben, wie Sie die in Batch gespeicherten Informationen für Ihre Jobs mithilfe von Workflows in eine BigQuery-Tabelle exportieren. Sie erfahren unter anderem, wie Sie den Beispiel-Workflow Exportjobs ausführen und die resultierenden Jobinformationen in BigQuery aufrufen.
Das Exportieren von Jobinformationen ist nützlich, wenn Sie die Informationen behalten möchten, nachdem ein Job automatisch oder manuell gelöscht wurde, oder wenn Sie die Informationen außerhalb von Batch analysieren möchten. 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.
Informationen zum Exportieren von Jobinformationen, die in anderenGoogle Cloud -Diensten gespeichert sind, finden Sie in der Exportdokumentation für den jeweiligen Dienst. Beispiele:
Hinweise
- Wenn Sie Batch noch nicht verwendet haben, lesen Sie den Hilfeartikel Batch-Dateien erstellen und ausführen und aktivieren Sie Batch, indem Sie die Voraussetzungen für Projekte und Nutzer erfüllen.
-
Enable the BigQuery and Workflows APIs.
Optional: Geben Sie ein vorhandenes BigQuery-Dataset oder eine vorhandene BigQuery-Tabelle in Ihrem Projekt an, in dem bzw. der Sie die Jobinformationen speichern möchten. 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.
-
So bereiten Sie ein Dienstkonto für den Workflow für Exportjobs vor:
- Erstellen Sie ein neues Dienstkonto oder identifizieren Sie ein vorhandenes Dienstkonto.
-
Damit das Dienstkonto die erforderlichen Berechtigungen für die Ausführung des Workflows für Exportjobs hat, bitten Sie Ihren Administrator, dem Dienstkonto die folgenden IAM-Rollen für das Projekt zu zuweisen:
-
Logs schreiben:
Log-Autor (
roles/logging.logWriter
) -
BigQuery-Datasets und ‑Tabellen erstellen und bearbeiten:
BigQuery-Administrator (
roles/bigquery.admin
) -
Batchjobs aufrufen und löschen:
Batch-Job-Bearbeiter (
roles/batch.jobsEditor
)
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Ihr Administrator kann dem Dienstkonto möglicherweise auch die erforderlichen Berechtigungen über benutzerdefinierte Rollen oder andere vordefinierte Rollen erteilen.
-
Logs schreiben:
Log-Autor (
-
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:
-
Jobs ansehen:
Batch-Jobbetrachter (
roles/batch.jobsViewer
) -
Dienstkonten aufrufen:
Dienstkonten ansehen (
roles/iam.serviceAccountViewer
) -
BigQuery-Datasets und ‑Tabellen aufrufen:
BigQuery-Datenbetrachter (
roles/bigquery.dataViewer
) -
Workflows erstellen, bereitstellen und ausführen:
Workflow-Bearbeiter (
roles/workflows.editor
)
-
Jobs ansehen:
Batch-Jobbetrachter (
-
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, das Dataset oder das Projekt zu gewähren.
Informationen zum Exportjob
In diesem Abschnitt wird beschrieben, wie Sie Auftragsinformationen mit dem export-jobs-Workflow exportieren, der aus dem export-to-bigquery
-Codebeispiel stammt.
Mit dem Workflow „Exportjobs“ werden die Informationen für die Jobs Ihres Projekts exportiert, die sich in der angegebenen Region befinden und die angegebenen Filterkriterien erfüllen.
Der Workflow „Export-Jobs“ exportiert Jobinformationen in eine angegebene Tabelle in einem bestimmten Datensatz. Diese werden vom Workflow automatisch erstellt, falls sie noch nicht in Ihrem Projekt vorhanden sind. Standardmäßig werden die exportierten Jobs durch den Workflow „export-jobs“ auch aus Batch gelöscht. Sie können den Workflow „export-jobs“ aber so bearbeiten, dass die Jobs nicht gelöscht werden.
Gehen Sie für jeden Workflow für Exportjobs, den Sie verwenden möchten, so vor:
- Konfigurieren Sie die Workflowdefinition.
- Erstellen und bereitstellen des Workflows
- Führen Sie den Workflow aus. Wiederholen Sie diesen Schritt jedes Mal, wenn Sie die angegebenen Jobs exportieren möchten.
Workflowdefinition konfigurieren
Laden Sie die Datei
export-to-bigquery-delete-batch-jobs.yaml
von GitHub herunter.Öffnen Sie die Datei
export-to-bigquery-delete-batch-jobs.yaml
in einem Texteditor. Nehmen Sie dann die folgenden Änderungen vor:Ersetzen Sie
sys.get_env("GOOGLE_CLOUD_PROJECT_ID")
durch Ihre Projekt-ID, die als String formatiert ist, z. B."my-project-id"
.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"
.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 diesen Standardfilterkriterien werden nur Informationen für Jobs exportiert, die sich im StatusSUCCEEDED
oderFAILED
befinden und vor oder am2023-05-01T00:00:00Z
RFC 3339-Zeitstempel erstellt wurden.Optional: Ersetzen Sie
default_dataset_id
durch einen anderen Namen für das Dataset, das vom Workflow für Exportjobs verwendet oder erstellt werden soll.Optional: Ersetzen Sie
default_table_id
durch einen anderen Namen der Tabelle, die vom Workflow für Exportjobs verwendet oder erstellt werden soll.Wenn die exportierten Jobs nicht vom Workflow gelöscht werden sollen, gehen Sie so vor:
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}
Entfernen Sie
+ " and deleted"
.
Speichern Sie die Datei. Lassen Sie die Datei geöffnet.
Workflow erstellen und bereitstellen
Rufen Sie in der Google Cloud -Console die Seite Workflows auf:
Klicken Sie auf der Seite Workflows auf
Erstellen.Geben Sie im Feld Workflowname einen Namen für den Workflow ein, z. B.
export-batch-jobs-us-central1
.Wählen Sie in der Liste Dienstkonto das vorbereitete Dienstkonto aus.
Klicken Sie auf Weiter.
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 die Datei schließen.Klicken Sie auf Bereitstellen. Die Seite Workflow-Details wird geöffnet.
Workflow ausführen
Klicken Sie auf der Seite Workflow-Details auf
Ausführen. Die Seite Workflow ausführen wird geöffnet.Klicken Sie auf der Seite Workflow ausführen auf Ausführen.
Warten Sie auf der Seite Ausführungsdetails, bis die Ausführung des Workflows abgeschlossen ist. So dauert es beispielsweise in der Regel nur wenige Sekunden, um einige Jobs zu exportieren und zu löschen. 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 ansehen
In diesem Abschnitt erfahren Sie, wie Sie die vom Workflow für Exportjobs erstellten Tabellendaten aufrufen. Mit den folgenden Schritten können Sie beispielsweise prüfen, ob der Workflow erfolgreich ausgeführt wurde, und die Tabellendaten durchsuchen. Weitere Informationen zum Ansehen und Verwenden der exportierten Jobinformationen, z. B. zum Schreiben von Abfragen, finden Sie in der BigQuery-Dokumentation unter Tabellendaten verwalten.
Öffnen Sie in der Google Cloud Console die Seite BigQuery:
Öffnen Sie im Bereich Explorer die Tabelle mit den exportierten Jobinformationen:
- Geben Sie im Feld BigQuery-Ressourcen suchen den Namen der Tabelle aus dem Workflow für Exportjobs ein. Der Standardtabellenname ist beispielsweise
default_table_id
. - Klicken Sie auf den Namen der Tabelle. Die Seite mit den Tabellendetails wird geöffnet.
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.
Klicken Sie auf der Seite mit den Tabellendetails auf den Tab Vorschau.
- Geben Sie im Feld BigQuery-Ressourcen suchen den Namen der Tabelle aus dem Workflow für Exportjobs ein. Der Standardtabellenname ist beispielsweise
Nächste Schritte
- Weitere Informationen zu Workflows.
- Weitere Informationen zu BigQuery
- Weitere Informationen zu Batch: