Auf dieser Seite wird beschrieben, wie Sie Jobs für Batch-Speichervorgänge erstellen, ansehen, auflisten, abbrechen und löschen. Außerdem wird beschrieben, wie Sie Cloud-Audit-Logs mit Jobs für Batch-Vorgänge für die Speicherung verwenden.
Hinweise
Führen Sie die Schritte in den folgenden Abschnitten aus, um Jobs für Batch-Vorgänge für die Speicherung zu erstellen und zu verwalten.
Storage Intelligence konfigurieren
Wenn Sie Jobs für Batch-Speichervorgänge erstellen und verwalten möchten, konfigurieren Sie Storage Intelligence für den Bucket, in dem der Job ausgeführt werden soll.
Google Cloud CLI einrichten
Sie müssen Version 516.0.0 oder höher der Google Cloud CLI verwenden.
Standardprojekt festlegen
Legen Sie das Projekt fest, in dem Sie den Job für Batch-Speichervorgänge erstellen möchten.
gcloud config set project PROJECT_ID
Dabei entspricht PROJECT_ID der ID des Projekts.
API aktivieren
Aktivieren Sie die API für Batch-Vorgänge für die Speicherung.
gcloud services enable storagebatchoperations.googleapis.com
Manifest erstellen
Wenn Sie ein Manifest für die Objektauswahl verwenden möchten, erstellen Sie ein Manifest.
Job für Batch-Speichervorgänge erstellen
In diesem Abschnitt wird beschrieben, wie Sie einen Job für Batch-Speichervorgänge erstellen.
Befehlszeile
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Führen Sie in Ihrer Entwicklungsumgebung den Befehl
gcloud storage batch-operations jobs create
aus.gcloud storage batch-operations jobs create JOB_NAME --bucket=BUCKET_NAME OBJECT_SELECTION_FLAG JOB_TYPE_FLAG
Wobei:
JOB_NAME
ist der Name des Jobs für Batch-Speichervorgänge.BUCKET_NAME
ist der Name des Buckets, der ein oder mehrere Objekte enthält, die Sie verarbeiten möchten.OBJECT_SELECTION_FLAG
ist einer der folgenden Flags:--included-object-prefixes
: Geben Sie ein oder mehrere Objektpräfixe an. Beispiel:- Wenn Sie einen Abgleich mit einem einzelnen Präfix vornehmen möchten, verwenden Sie
--included-object-prefixes='prefix1'
. - Wenn Sie mehrere Präfixe abgleichen möchten, verwenden Sie eine durch Kommas getrennte Präfixliste:
--included-object-prefixes='prefix1,prefix2'
. - Wenn Sie alle Objekte einschließen möchten, verwenden Sie ein leeres Präfix:
--included-object-prefixes=''
.
- Wenn Sie einen Abgleich mit einem einzelnen Präfix vornehmen möchten, verwenden Sie
--manifest-location
: Geben Sie den Speicherort des Manifests an. Beispiel:gs://bucket_name/path/object_name.csv
JOB_TYPE_FLAG
ist je nach Jobtyp eine der folgenden Flags.--delete-object
: Löschen Sie ein oder mehrere Objekte.--put-metadata
: Objektmetadaten aktualisieren. Objektmetadaten werden als Schlüssel/Wert-Paare gespeichert. Geben Sie das Schlüssel/Wert-Paar für die Metadaten an, die Sie ändern möchten. Sie können ein oder mehrere Schlüssel/Wert-Paare als Liste angeben.--rewrite-object
: Aktualisieren Sie die vom Kunden verwalteten Verschlüsselungsschlüssel für ein oder mehrere Objekte.--put-object-event-based-hold
: Aktivieren Sie ereignisbasierte Objektsperren.--no-put-object-event-based-hold
: Deaktivieren Sie ereignisbasierte Objektsperren.--put-object-temporary-hold
: Aktivieren Sie temporäre Objektsperren.--no-put-object-temporary-hold
: Deaktivieren Sie temporäre Objektsperren.
REST APIs
JSON API
Die gcloud CLI installieren und initialisieren, um ein Zugriffstoken für den Header
Authorization
zu generieren.Erstellen Sie eine JSON-Datei mit den Einstellungen für den Batch-Vorgang für die Speicherung. Folgende Einstellungen können verwendet werden:
{ "Description": "JOB_DESCRIPTION", "BucketList": { "Buckets": [ { "Bucket": "BUCKET_NAME", "Manifest": { "manifest_location": "MANIFEST_LOCATION" } "PrefixList": { "include_object_prefixes": "OBJECT_PREFIXES" } } ] }, "DeleteObject": { "permanent_object_deletion_enabled": OBJECT_DELETION_VALUE } "RewriteObject": { "kms_key":"KMS_KEY_VALUE" } "PutMetadata": { METADATA_KEY= METADATA_VALUE, ..., } "PutObjectHold": { "temporary_hold": TEMPORARY_HOLD_VALUE, "event_based_hold": EVENT_BASED_HOLD_VALUE } }
Wobei:
JOB_NAME
ist der Name des Jobs für Batch-Speichervorgänge.JOB_DESCRIPTION
ist die Beschreibung des Jobs für Batch-Speichervorgänge.BUCKET_NAME
ist der Name des Buckets, der ein oder mehrere Objekte enthält, die Sie verarbeiten möchten.Verwenden Sie in der JSON-Datei eines der folgenden Attribute, um die zu verarbeitenden Objekte anzugeben:
MANIFEST_LOCATION
ist der Speicherort des Manifests. Beispiel:gs://bucket_name/path/object_name.csv
OBJECT_PREFIXES
ist eine durch Kommas getrennte Liste mit einem oder mehreren Objektpräfixen. Wenn Sie alle Objekte abgleichen möchten, verwenden Sie eine leere Liste.
Wählen Sie je nach Job, den Sie verarbeiten möchten, eine der folgenden Optionen aus:
So löschen Sie Objekte:
"DeleteObject": { "permanent_object_deletion_enabled": OBJECT_DELETION_VALUE }
Dabei ist
OBJECT_DELETION_VALUE
TRUE
, um Objekte zu löschen.So aktualisieren Sie den vom Kunden verwalteten Verschlüsselungsschlüssel für Objekte:
"RewriteObject": { "kms_key": KMS_KEY_VALUE }
Dabei ist
KMS_KEY_VALUE
der Wert des KMS-Schlüssels des Objekts, das Sie aktualisieren möchten.Objektmetadaten aktualisieren:
"PutMetadata": { METADATA_KEY= METADATA_VALUE, ..., }
Dabei ist
METADATA_VALUE
der Schlüsselwert der Metadaten des Objekts. Sie können ein oder mehrere Schlüssel/Wert-Paare als Liste angeben.Aktualisieren Sie die Objekt-Holds:
"PutObjectHold": { "temporary_hold": TEMPORARY_HOLD_VALUE, "event_based_hold": EVENT_BASED_HOLD_VALUE }
Wobei:
Mit
TEMPORARY_HOLD_VALUE
wird die vorübergehende Objektsperre aktiviert oder deaktiviert. Der Wert1
aktiviert die Warteschleife und der Wert2
deaktiviert sie.Mit
EVENT_BASED_HOLD_VALUE
wird der ereignisbasierte Objekt-Hold aktiviert oder deaktiviert. Mit dem Wert1
wird die Warteschleife aktiviert und mit dem Wert2
deaktiviert.
Verwenden Sie
cURL
, um die JSON API mit einerPOST
-Anfrage für einen Batch-Vorgang aufzurufen:curl -X POST --data-binary @JSON_FILE_NAME \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://storagebatchoperations.googleapis.com/v1/project=PROJECT_ID/locations/global/jobs?job_id=JOB_ID"
Wobei:
JSON_FILE_NAME
ist der Name der JSON-Datei.PROJECT_ID
ist die ID oder Nummer des Projekts. Beispiel:my-project
.JOB_ID
ist der Name des Jobs für Batch-Speichervorgänge.
Jobdetails zu Batch-Speichervorgängen abrufen
In diesem Abschnitt wird beschrieben, wie Sie die Jobdetails für Batch-Vorgänge im Speicher abrufen.
Befehlszeile
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Führen Sie in Ihrer Entwicklungsumgebung den Befehl
gcloud storage batch-operations jobs describe
aus.gcloud storage batch-operations jobs describe JOB_ID
Wobei:
JOB_ID
ist der Name des Jobs für Batch-Speichervorgänge.
REST APIs
JSON API
Die gcloud CLI installieren und initialisieren, um ein Zugriffstoken für den Header
Authorization
zu generieren.Verwenden Sie
cURL
, um die JSON API mit einerGET
-Anfrage für einen Batch-Vorgang aufzurufen:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storagebatchoperations.googleapis.com/v1/projects/PROJECT_ID/locations/global/jobs?JOB_ID"
Wobei:
PROJECT_ID
ist die ID oder Nummer des Projekts. Beispiel:my-project
.JOB_ID
ist der Name des Jobs für Batch-Speichervorgänge.
Jobs für Speicher-Batchvorgänge auflisten
In diesem Abschnitt wird beschrieben, wie Sie die Jobs für Batch-Speichervorgänge in einem Projekt auflisten.
Befehlszeile
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Führen Sie in Ihrer Entwicklungsumgebung den Befehl
gcloud storage batch-operations jobs list
aus.gcloud storage batch-operations jobs list
REST APIs
JSON API
Die gcloud CLI installieren und initialisieren, um ein Zugriffstoken für den Header
Authorization
zu generieren.Verwenden Sie
cURL
, um die JSON API mit einerLIST
-Anfrage für Batch-Vorgänge für die Speicherung aufzurufen:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storagebatchoperations.googleapis.com/v1/projects/PROJECT_ID/locations/global/jobs"
Wobei:
PROJECT_ID
ist die ID oder Nummer des Projekts. Beispiel:my-project
.
Job für Batch-Speichervorgänge abbrechen
In diesem Abschnitt wird beschrieben, wie Sie einen Job für Batch-Speichervorgänge in einem Projekt abbrechen.
Befehlszeile
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Führen Sie in Ihrer Entwicklungsumgebung den Befehl
gcloud storage batch-operations jobs cancel
aus.gcloud storage batch-operations jobs cancel JOB_ID
Wobei:
JOB_ID
ist der Name des Jobs für Batch-Speichervorgänge.
REST APIs
JSON API
Die gcloud CLI installieren und initialisieren, um ein Zugriffstoken für den Header
Authorization
zu generieren.Verwenden Sie
cURL
, um die JSON API mit einerCANCEL
-Anfrage für einen Batch-Vorgang für die Speicherung aufzurufen:curl -X CANCEL \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storagebatchoperations.googleapis.com/v1/projects/PROJECT_ID/locations/global/jobs/JOB_ID"
Wobei:
PROJECT_ID
ist die ID oder Nummer des Projekts. Beispiel:my-project
.JOB_ID
ist der Name des Jobs für Batch-Speichervorgänge.
Job für Batch-Speichervorgänge löschen
In diesem Abschnitt wird beschrieben, wie Sie einen Job für Batch-Vorgänge für die Speicherung löschen.
Befehlszeile
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Führen Sie in Ihrer Entwicklungsumgebung den Befehl
gcloud storage batch-operations jobs delete
aus.gcloud storage batch-operations jobs delete JOB_ID
Wobei:
JOB_ID
ist der Name des Jobs für Batch-Speichervorgänge.
REST APIs
JSON API
Die gcloud CLI installieren und initialisieren, um ein Zugriffstoken für den Header
Authorization
zu generieren.Verwenden Sie
cURL
, um die JSON API mit einerDELETE
-Anfrage für einen Batch-Vorgang aufzurufen:curl -X DELETE \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storagebatchoperations.googleapis.com/v1/projects/PROJECT_ID/locations/global/jobs/JOB_ID"
Wobei:
PROJECT_ID
ist die ID oder Nummer des Projekts. Beispiel:my-project
.JOB_ID
ist der Name des Jobs für Batch-Speichervorgänge.
Job für Batch-Speichervorgänge mit Storage Insights-Datasets erstellen
Führen Sie die Schritte in den folgenden Abschnitten aus, um einen Job für Batch-Speichervorgänge mit Storage Insights-Datensätzen zu erstellen.
Manifest mit Storage Insights-Datasets erstellen
Sie können das Manifest für Ihren Job für Batch-Speichervorgänge erstellen, indem Sie Daten aus BigQuery extrahieren. Dazu müssen Sie den verknüpften Datensatz abfragen, die resultierenden Daten als CSV-Datei exportieren und in einem Cloud Storage-Bucket speichern. Der Job für Batch-Speichervorgänge kann diese CSV-Datei dann als Manifest verwenden.
Wenn Sie die folgende SQL-Abfrage in BigQuery auf einer Storage Insights-Datasetansicht ausführen, werden Objekte mit einer Größe von mehr als 1 KiB mit dem Namen Temp_Training
abgerufen:
EXPORT DATA OPTIONS( uri=`URI`, format=`CSV`, overwrite=OVERWRITE_VALUE, field_delimiter=',') AS SELECT bucket, name, generation FROM DATASET_VIEW_NAME WHERE bucket = BUCKET_NAME AND name LIKE (`Temp_Training%`) AND size > 1024 * 1024 AND snapshotTime = SNAPSHOT_TIME
Wobei:
URI
ist der URI des Buckets, der das Manifest enthält. Beispiel:gs://bucket_name/path_to_csv_file/*.csv
. Wenn Sie den Platzhalter*.csv
verwenden, exportiert BigQuery das Ergebnis in mehrere CSV-Dateien.OVERWRITE_VALUE
ist ein boolescher Wert. Wenn dieser Wert auftrue
festgelegt ist, werden vorhandene Dateien am angegebenen Speicherort überschrieben.DATASET_VIEW_NAME
ist der vollständig qualifizierte Name der Storage Insights-Datasetansicht imPROJECT_ID.DATASET_ID.VIEW_NAME
-Format. Den Namen Ihres Datasets finden Sie im verknüpften Dataset.Wobei:
PROJECT_ID
ist die ID oder Nummer des Projekts. Beispiel:my-project
.DATASET_ID
ist der Name des Datasets. Beispiel:objects-deletion-dataset
.VIEW_NAME
ist der Name der Datensatzansicht. Beispiel:bucket_attributes_view
.
BUCKET_NAME
ist der Name des Buckets. Beispiel:my-bucket
.SNAPSHOT_TIME
ist der Snapshot-Zeitpunkt der Storage Insights-Datensatzansicht. Beispiel:2024-09-10T00:00:00Z
.
Job für Batch-Speichervorgänge erstellen
So erstellen Sie einen Job für Batch-Speichervorgänge, um die im Manifest enthaltenen Objekte zu verarbeiten:
Befehlszeile
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Führen Sie in Ihrer Entwicklungsumgebung den Befehl
gcloud storage batch-operations jobs create
aus:gcloud storage batch-operations jobs create \ JOB_ID \ --bucket=SOURCE_BUCKET_NAME \ --manifest-location=URI \ --JOB_TYPE_FLAG
Wobei:
JOB_ID
ist der Name des Jobs für Batch-Speichervorgänge.SOURCE_BUCKET_NAME
ist der Bucket, der ein oder mehrere Objekte enthält, die Sie verarbeiten möchten. Beispiel:my-bucket
.URI
ist der URI des Buckets, der das Manifest enthält. Beispiel:gs://bucket_name/path_to_csv_file/*.csv
. Wenn Sie den Platzhalter*.csv
verwenden, exportiert BigQuery das Ergebnis in mehrere CSV-Dateien.JOB_TYPE_FLAG
ist je nach Jobtyp eine der folgenden Flags.--delete-object
: Löschen Sie ein oder mehrere Objekte.--put-metadata
: Objektmetadaten aktualisieren. Objektmetadaten werden als Schlüssel/Wert-Paare gespeichert. Geben Sie das Schlüssel/Wert-Paar für die Metadaten an, die Sie ändern möchten. Sie können ein oder mehrere Schlüssel/Wert-Paare als Liste angeben.--rewrite-object
: Aktualisieren Sie die vom Kunden verwalteten Verschlüsselungsschlüssel für ein oder mehrere Objekte.--put-object-event-based-hold
: Aktiviere ereignisbasierte Objektsperren.--no-put-object-event-based-hold
: Deaktivieren Sie ereignisbasierte Objektsperren.--put-object-temporary-hold
: Aktivieren Sie temporäre Objektsperren.--no-put-object-temporary-hold
: Deaktivieren Sie temporäre Objektsperren.
Cloud-Audit-Logs für Jobs mit Batch-Speichervorgängen verwenden
Bei Jobs für Batch-Vorgänge in Cloud Storage werden Transformationen an Cloud Storage-Objekten in Cloud-Audit-Logs für Cloud Storage aufgezeichnet. Sie können Cloud-Audit-Logs mit Cloud Storage verwenden, um die Objekttransformationen zu erfassen, die von Jobs für Batch-Vorgänge ausgeführt werden. Informationen zum Aktivieren von Audit-Logs finden Sie unter Audit-Logs aktivieren. Im Audit-Log-Eintrag gibt das Metadatenfeld callUserAgent
mit dem Wert StorageBatchOperations
eine Transformation für Batch-Speichervorgänge an.