Speicherbatchvorgänge

Mit Storage-Batchvorgängen können Sie Massenaufgaben wie das Löschen von Objekten oder das Aktualisieren von Metadaten für Milliarden von Objekten in einer serverlosen Umgebung automatisieren. Durch diese Automatisierung müssen Sie keine benutzerdefinierten Skripts schreiben und verwalten, was insbesondere in großen Unternehmen mit Daten, die auf Tausende von Buckets verteilt sind, von Vorteil ist.

Informationen zum Erstellen von Jobs für Storage-Batchvorgänge finden Sie unter Jobs für Storage-Batchvorgänge erstellen und verwalten. Für Änderungen an einzelnen Objekten müssen Sie keinen Batchvorgangsjob erstellen. Sehen Sie sich stattdessen die Standardanleitungen an, z. B. Objekte löschen oder Objektmetadaten ansehen und bearbeiten.

Übersicht

Mit Storage-Batchvorgängen können Sie eine große Anzahl von Dateien in Ihrem Projekt verwalten. Erstellen Sie zuerst eine Jobkonfiguration. In der Konfiguration wird definiert, welche Transformationen auf bestimmte Objekte angewendet werden sollen. Diese Transformationen umfassen das Festlegen von Objekt-Holds, das Löschen von Objekten, das Aktualisieren von Objektmetadaten und ‑kontexten, das Umschreiben von Objekten und das Patchen von Zugriffssteuerungen.

Wenn Sie einen Batchvorgangsjob einreichen, können Sie seinen Status überwachen, um zu sehen, wann alle angegebenen Transformationen angewendet werden.

Vorteile

Speicher-Batchvorgänge bieten folgende Vorteile:

  • Skalierbarkeit: Führen Sie Transformationen für Millionen von Objekten mit einem einzigen Storage-Batchvorgang aus.
  • Serverlose Ausführung: Batchjobs in einer serverlosen Umgebung ausführen, sodass keine Infrastruktur verwaltet werden muss.
  • Automatisierung: Automatisieren Sie komplexe und sich wiederholende Aufgaben, um die Betriebseffizienz zu steigern.
  • Kürzere Entwicklungszeit: Sie müssen keine komplexen benutzerdefinierten Skripts schreiben und verwalten.
  • Integration von Storage Insights-Datasets: Sie können Objekte direkt auswählen, indem Sie Bedingungen angeben, die mit Feldern in Ihren Storage Insights-Datasets übereinstimmen. Durch diese direkte Auswahl müssen Sie kein CSV-Manifest manuell zusammenstellen oder Abfragen ausführen, um Ihr Dataset aus BigQuery zu exportieren.
  • Leistung: Zeitkritische Vorgänge können durch die gleichzeitige Ausführung mehrerer Batchjobs abgeschlossen werden. So können Sie beispielsweise bis zu einer Milliarde Objekte innerhalb von drei Stunden verarbeiten.
  • Automatische Wiederholungsversuche: Fehlgeschlagene Vorgänge werden automatisch wiederholt.
  • Job-Monitoring: Verfolgen Sie den Fortschritt im Detail, um den Status und Abschluss aller Jobs zu überwachen.

Anwendungsfälle

Mit Storage-Batchvorgängen wird die organisationsweite Speicherverwaltung automatisiert und vereinfacht. In den folgenden gängigen Szenarien wird beschrieben, wie sie zum Schutz, zur Organisation und zur Verwaltung Ihrer Ressourcen beitragen:

  • Daten schützen: Verwalten Sie Ihren Sicherheitsstatus im großen Maßstab. Sie können beispielsweise Verschlüsselungsschlüssel für Millionen von Objekten rotieren, Objekt-Holds anwenden oder entfernen, um die Unveränderlichkeit zu erzwingen, und Zugriffssteuerungslisten (Access Control Lists, ACLs) im Bulk patchen, um den öffentlichen Lesezugriff auf private Daten zu entfernen.

  • Compliance einhalten: Vorschriften zur Datenaufbewahrung einhalten. Verwenden Sie gezielte Objekt-Holds, um Aufbewahrungsregeln durchzusetzen, bestimmte Ablaufzeiträume festzulegen und Objekte innerhalb eines bestimmten Zeitraums zu löschen, um die Richtlinien für das Löschen zu erfüllen.

  • Daten im großen Maßstab transformieren: Führen Sie Bulk-Updates für Objektattribute durch. Sie können beispielsweise benutzerdefinierte oder feste Objektmetadaten aktualisieren und Dateien für nachgelagerte Systeme taggen, indem Sie benutzerdefinierte Objektkontexte aktualisieren oder löschen.

  • Speicherkosten verwalten: Optimieren Sie Ihre Cloud Storage-Ausgaben. Sie können beispielsweise unnötige Live-Objekte im Bulk löschen, veraltete Datensätze durch dauerhaftes Löschen nicht aktueller Objektversionen bereinigen und Standard Storage-Objekte in großem Umfang in kältere Speicherklassen wie Archive Storage verschieben.

Jobkonfigurationen

Legen Sie die folgenden Jobkonfigurationen fest, um einen Job für Storage-Batchvorgänge zu erstellen. Jobkonfigurationen sind Parameter, die steuern, wie der Job Objekte verarbeitet.

  • Jobname: Ein eindeutiger Name zur Identifizierung des Storage-Batchvorgangsjobs. Verwenden Sie diesen Namen, um den Job zu verfolgen, zu überwachen und darauf zu verweisen. Jobnamen sind alphanumerisch, z. B. job-01.

  • Jobbeschreibung (optional): Eine kurze Beschreibung des Zwecks des Jobs. Diese Beschreibung hilft Ihnen, die Funktion des Jobs zu verstehen und zu dokumentieren. Beispiel: Deletes all objects in a bucket.

  • Bucket-Liste: Eine durch Kommas getrennte Liste mit einem oder mehreren Bucket-Namen, die die zu verarbeitenden Objekte enthalten. Sie können bis zu 1.000 Buckets aus einem beliebigen Projekt angeben, sofern jeder Bucket in einem Storage Intelligence-Tarif registriert ist.

  • Objektauswahl: Die Auswahlkriterien, die definieren, welche Objekte verarbeitet werden sollen. Sie können die Kriterien mit einer der folgenden Optionen angeben:

    • Dataset-Filter: Verwenden Sie die Common Expression Language (CEL), um Objekte anhand von Metadatenfeldern in Ihrem Storage Insights-Dataset zu filtern. Sie können Batchjobs für Objekte in mehreren Buckets in einem Projekt ausführen. Wenn Sie Dataset-Filter für die Objektauswahl verwenden, werden bei Storage-Batchvorgängen Objekte berücksichtigt, die zum Zeitpunkt des ausgewählten Dataset-Snapshots aktiv und aktuell sind. Daher enthält der Job nur Objekte, die zum Zeitpunkt des Snapshots sowohl für softDeleteTime als auch für timeDeleted den Wert NULL haben. Weitere Informationen finden Sie unter Job mit erweiterten Filtern erstellen.

    • Manifest: Erstellen Sie ein Manifest und geben Sie seinen Speicherort an, wenn Sie den Job für Storage-Batchvorgänge erstellen. Das Manifest ist eine CSV-Datei, die in Cloud de Confiance hochgeladen wird und die Liste der zu verarbeitenden Objekte enthält. Jede Zeile im Manifest muss den bucket und name des Objekts enthalten. Optional können Sie die generation des Objekts angeben. Wenn Sie den Wert generation weglassen, verarbeitet der Job die Live-Version des Objekts.

      Die Manifestdatei muss eine Kopfzeile im folgenden Format enthalten:

      bucket,name,generation

      Hier ein Beispiel für das Manifest:

      bucket,name,generation
      bucket_1,object_1,generation_1
      bucket_1,object_2,generation_2
      bucket_2,object_3,generation_3
      

      Sie können auch ein Manifest mit Storage Insights-Datasets erstellen. Weitere Informationen finden Sie unter Manifest mit Storage Insights-Datasets erstellen.

    • Objektpräfixe: Geben Sie eine Liste von Präfixen an, um Objekte im Bucket zu filtern. Der Job verarbeitet nur Objekte, die diesen Präfixen entsprechen. Wenn Sie die Präfixliste leer lassen, werden alle Objekte im Bucket verarbeitet.

  • Jobtyp: Speicher-Batchvorgänge unterstützen die folgenden Jobtypen, wobei pro Batchvorgang ein einzelner Job ausgeführt wird.

    • Objektlöschung: Löschen Sie Objekte in einem Bucket, um die Kosten zu optimieren, den Datenlebenszyklus zu verwalten und die Richtlinien zur Datenlöschung einzuhalten.

    • Metadatenaktualisierungen: Sie können die folgenden Objektmetadaten ändern:

      • Benutzerdefinierte Metadaten: Sie können alle benutzerdefinierten Schlüssel/Wert-Paare aktualisieren, die mit dem Objekt verknüpft sind.

      • Feste Metadaten: Sie können Cache-Control, Content-Disposition, Content-Encoding, Content-Language, Content-Type, Custom-Time und die Aufbewahrungskonfiguration aktualisieren. Verwenden Sie zum Ändern von Objekt-Holds den Jobtyp „Objekt-Hold-Aktualisierungen“.

    • Aktualisierungen von Objekt-Holds: Sie können Objekt-Holds aktivieren oder deaktivieren. Objekt-Holds verhindern, dass Objekte gelöscht oder geändert werden. Diese Sperren sind für die Einhaltung von Compliance-Anforderungen und die Datenaufbewahrung unerlässlich.

    • Aktualisierungen von Objektschlüsseln: Sie können die kundenverwalteten Verschlüsselungsschlüssel für ein oder mehrere Objekte verwalten. Diese Funktion umfasst das Anwenden oder Ändern von Verschlüsselungsschlüsseln mit der Methode Objekt umschreiben.

    • Objektkontext aktualisieren: Verwalten Sie die Objektkontexte, die mit den Objekten verknüpft sind. Sie können entweder alle vorhandenen Objektkontexte löschen oder bestimmte Aktualisierungen vornehmen, z. B. Schlüssel entfernen oder Schlüssel/Wert-Paare einfügen und aktualisieren.

    • Aktualisierungen der Objektspeicherklasse: Sie können die Speicherklasse von Objekten im Bulk ändern, um Kosten zu optimieren.

    • Aktualisierungen der Access Control List (ACL) für Objekte: Sie können Objekt-ACLs patchen, um Berechtigungen für Entitäten wie allUsers und allAuthenticatedUsers hinzuzufügen, zu aktualisieren oder zu entfernen.

  • Probelauf (optional): Verwenden Sie den Probelaufmodus, um versehentliche Fehlkonfigurationen im großen Maßstab zu vermeiden. Bei einem Probelauf wird der Vorgang simuliert, ohne dass Transformationen durchgeführt werden. Mit dieser Simulation können Sie Ihre Jobkonfiguration validieren, bevor Sie den eigentlichen Job ausführen. Die Ergebnisse des Probelaufs bieten eine Vorschau der folgenden Details, bevor Sie den Job ausführen:

    • Die Anzahl der Objekte, die vom Job betroffen sind.

    • Mögliche Fehler.

    • Die Gesamtgröße der betroffenen Objekte, wenn Sie nach Objektpräfixen filtern.

Preise

Informationen zum Schätzen der Kosten für Ihren Job oder Probelauf finden Sie unter Cloud Storage – Preise.

Mit einem Probelauf können Sie Ihre Konfiguration validieren, ohne dass Betriebskosten anfallen. Allerdings können Kosten für das Auflisten von Objekten anfallen.

Beschränkungen

Für Storage-Batchvorgänge gelten die folgenden Einschränkungen:

  • Storage-Batchvorgangsjobs haben eine maximale Lebensdauer von 14 Tagen. Alle laufenden Jobs, die nicht innerhalb von 14 Tagen nach ihrer Erstellung abgeschlossen werden, werden automatisch abgebrochen.

  • Sie können maximal 1.000 Objektpräfixe in einen einzelnen Job aufnehmen.

  • Wenn Sie mehr als 10 gleichzeitige Jobs für denselben Bucket ausführen, wird die Leistung der einzelnen Jobs beeinträchtigt.

  • Sie können einen einzelnen Batchjob für maximal 1.000 Buckets in einem Projekt ausführen.

  • Bucket- und Objektfilter sind jeweils auf maximal 150 Zeichen beschränkt.

  • Bei Storage-Batchvorgängen wird die Snapshot-Zeit des Storage Insights-Datasets automatisch anhand des globalen Manifests ausgewählt. Bei dieser Auswahl werden alle Ziel-Buckets für die Objekterkennung mit demselben Snapshot-Zeitpunkt abgeglichen. Die ausgewählte globale Snapshot-Zeit wird in der API-Antwort zurückgegeben. Wenn der Snapshot-Zeitpunkt älter als zwei Tage ist, schlägt die Joberstellung fehl. Informationen zur Behebung dieses Fehlers finden Sie unter Fehlerbehebung bei Storage-Batchvorgängen.

  • Speicherbatchvorgänge werden für Buckets, für die Anforderer bezahlt aktiviert ist, nicht unterstützt.

  • Wenn Sie Storage Insights-Datasets für die Objektauswahl verwenden, werden bei Storage-Batchvorgängen Objekte berücksichtigt, die zum Zeitpunkt des ausgewählten Dataset-Snapshots aktiv und aktuell sind.

Nächste Schritte