Rapid-Bucket

Auf dieser Seite wird Rapid Bucket beschrieben, eine Funktion, mit der Sie Objekte in der Rapid Storage-Speicherklasse speichern können, indem Sie eine Zone als Standort des Buckets festlegen. Mit diesem Ansatz können Sie Ihren Datenspeicher am selben Ort wie Ihre Rechenressourcen platzieren. Das führt zu einer deutlich geringeren Latenz und einem höheren Durchsatz im Vergleich zu anderen Speicherklassen in Cloud Storage. Arbeitslasten in anderen Zonen und Regionen können ebenfalls auf den Bucket zugreifen. Die Leistung hängt dabei von der Netzwerkentfernung ab.

Informationen zum Erstellen eines zonalen Buckets mit Rapid Bucket finden Sie unter Zonale Buckets erstellen. Eine Liste der unterstützten Standorte finden Sie unter Zonen. Informationen zum Lesen und Anhängen von Objekten in zonalen Buckets finden Sie unter Objekte in zonalen Buckets verwenden.

Damit „Rapid Bucket“ für einen Bucket aktiviert werden kann, muss für den Bucket auch der hierarchische Namespace und der einheitliche Zugriff auf Bucket-Ebene aktiviert sein.

Funktionen und Vorteile

Rapid Bucket wurde entwickelt, um Speicherengpässe zu beseitigen. Es eignet sich ideal für Ihre datenintensivsten Anwendungen wie KI/ML und Datenanalyse. Rapid Bucket unterstützt Latenzen im Submillisekundenbereich, einen aggregierten Durchsatz von bis zu 15 TB/s und 20 Millionen Abfragen pro Sekunde. Die extrem niedrige Latenz ermöglicht den sofortigen Datenabruf und sorgt dafür, dass Anwendungen für die Inferenz in Echtzeit skaliert werden können. Der hohe Durchsatz und die hohe Anzahl an Abfragen pro Sekunde (QPS) sorgen dafür, dass Ihre teuren GPU-Cluster vollständig ausgelastet sind, wodurch sich die Trainingszeiten für Modelle erheblich verkürzen.

Zonale Buckets bieten nicht nur eine geringe Latenz und einen hohen Durchsatz, sondern ermöglichen Ihnen auch Folgendes:

  • Objekte im zonalen Bucket ergänzen, ohne das gesamte Objekt neu zu schreiben

  • Objekte öffnen und einen Stream aufrechterhalten, während Sie Vorgänge ausführen, um nachfolgende Lese- und Schreibvorgänge zu beschleunigen

Anwendungsfälle

Rapid Bucket eignet sich am besten für KI/ML-Arbeitslasten oder andere datenintensive Arbeitslasten. Beispiele für solche Arbeitslasten sind das Erstellen von Modell-Checkpoints, die Bewertung und Bereitstellung von Modellen sowie Logging- und Messaging-Warteschlangen. Es kann auch für Streamingdaten oder zum Speichern von Datenbanken verwendet werden.

Damit Sie die niedrige Latenz und den hohen Durchsatz von Rapid Bucket optimal nutzen können, müssen Sie die direkte gRPC-Verbindung aktivieren.

Rapid Bucket-Terminologie

In der Cloud Storage-Dokumentation werden die folgenden Begriffe verwendet:

  • Rapid Bucket: Das Produkt, mit dem Buckets mit einem zonalen Standort und der Speicherklasse „Rapid Storage“ erstellt werden können.

  • Rapid Storage: Die Speicherklasse, die die höchste Leistung beim Datenzugriff und bei E/A-Vorgängen in Cloud Storage bietet. Wenn Sie Rapid Bucket verwenden, erstellen Sie einen Bucket, der Rapid Storage nutzt. Weitere Informationen zu Rapid Storage finden Sie unter Speicherklassen.

  • Zonaler Bucket: Ein Bucket, der sich in einer Zone befindet. Objekte in zonalen Buckets werden immer in Rapid Storage gespeichert und können angehängt werden.

Zugriff auf Objekte in zonalen Buckets

Damit Sie die Leistungsvorteile eines zonalen Buckets nutzen können, müssen Sie Objekte für das Streaming öffnen und einen Stream aufrechterhalten, während Sie Vorgänge für die Objekte ausführen. Wenn Sie einen Stream eingerichtet und aufrechterhalten haben, können Sie nachfolgende Lese- oder Schreibvorgänge für das Objekt mit sehr geringer Latenz ausführen. Wenn Sie beispielsweise eine Parquet-Datei lesen, können Sie sowohl das anfängliche Lesen der Metadaten der Datei (der Footer) als auch das anschließende Lesen bestimmter Zeilen in einer einzigen Anfrage ausführen. Dieser Ansatz ist effizienter als die Verwendung separater Anfragen für jeden Schritt.

Nachdem sie eingerichtet wurden, bleiben Objektstreams standardmäßig geöffnet, wenn Sie mit Cloud Storage FUSE oder den Cloud Storage-Clientbibliotheken auf Objekte in zonalen Buckets zugreifen.

Sie können von einer beliebigen Anzahl von Hosts aus mehrere Lesestreams für ein Objekt öffnen. Die Anzahl der Lesestreams, die Sie für ein Objekt einrichten können, ist nicht begrenzt.

Objekte anhängen

Sie können Daten an Objekte in zonalen Buckets anhängen. Wenn Sie Objekte anhängen, gelten die folgenden Semantiken:

  • Anhängbare Objekte werden im Bucket-Namespace angezeigt, sobald Sie mit dem Schreiben beginnen. Sie können gelesen werden, während sie noch geschrieben werden.

  • Es gibt keine Einschränkungen hinsichtlich der Anzahl der Anhänge, die Sie an ein Objekt vornehmen können, oder der Anzahl der Byte, die Sie jeweils anhängen können. Sie können Anhänge hinzufügen, bis ein Objekt seine maximale Größe von 5 TiB erreicht hat.

  • Die Größe eines Objekts wächst in Echtzeit, wenn neue Anhänge dauerhaft geschrieben oder geleert werden. Wenn Sie einen Lesestream einrichten, sollten Sie mit einer minimalen Verzögerung bei der Aktualisierung der Objektgröße rechnen.

  • Anhängbare Objekte können jeweils nur einen Writer haben. Wenn ein neuer Schreibstream für ein Objekt eingerichtet wird, für das bereits ein Schreibstream vorhanden ist, wird von Cloud Storage ein Fehler an den ursprünglichen Stream zurückgegeben und der ursprüngliche Stream darf nicht mehr schreiben. Der neue Writer kann das Anhängen ab dem letzten gespeicherten Offset fortsetzen, ohne dass andere Anhänge an das Objekt erfolgen.

Objekte fertigstellen

Nachdem ein Objekt fertiggestellt wurde, können Sie keine Daten mehr daran anhängen. Sie können das Objekt jedoch mit einer neuen Version überschreiben. Die Metadaten eines finalisierten Objekts können weiterhin geändert werden. So können beispielsweise neue Tags hinzugefügt und das Objekt umbenannt werden.

Zonale Buckets bereitstellen

Sie können zonale Buckets mit Cloud Storage FUSE oder dem Cloud Storage FUSE-CSI-Treiber bereitstellen und darauf zugreifen. Sie benötigen Cloud Storage FUSE in der Version 3.7.2 oder höher. Damit Sie den CSI-Treiber für Cloud Storage FUSE verwenden können, muss Ihre Google Kubernetes Engine-Version 1.35.0-gke.3047001 oder höher sein.

Unterstützte Tools

Sie können zonale Buckets mit den meisten Tools für Cloud Storage verwenden. Es gelten jedoch die folgenden Einschränkungen:

  • Sie können nicht in zonale Buckets schreiben, wenn Sie Standard-Clientbibliotheks-APIs verwenden, die für nicht zonale Buckets vorgesehen sind. Wenn Sie in zonale Buckets schreiben möchten, müssen Sie Ihren Code so ändern, dass unterstützte APIs für zonale Buckets verwendet werden. Informationen dazu, welche APIs Sie verwenden sollten, finden Sie in den Codebeispielen für Ihre Clientbibliothek unter Objekte in zonalen Buckets verwenden.

  • Wenn Sie gRPC verwenden, können Sie nur mit den BidiWriteObject-APIs in zonale Buckets schreiben. Anhängbare Objekte werden nur vom BidiWriteObject-RPC-Aufruf im Anhängemodus unterstützt. Andere gRPC-Schreibmethoden (z. B. einmaliges Schreiben oder Schreiben mit Wiederaufnahme) und andere RPC-Aufrufe (z. B. WriteObject) unterstützen keine appendable-Objekte.

  • Sie können mit der JSON API nicht in zonale Buckets schreiben.

  • Rapid Bucket wird von der GCSFS Python-Bibliothek in den Versionen 2026.3.0 und höher unterstützt.

  • Einschränkungen der Google Cloud CLI:

    • Mindestversion der unterstützten Google Cloud CLI: Die Mindestversion der gcloud CLI, die zonale Buckets unterstützt, ist 553.0.0. Frühere Versionen sind nicht mit zonalen Buckets kompatibel. Wir empfehlen, die aktuelle Version der gcloud CLI zu verwenden, um die neuesten Funktionen und Fehlerkorrekturen zu erhalten. Für segmentierte Objektdownloads und Leistungsoptimierungen für zonale Buckets ist die gcloud CLI-Version 583.0.0 oder höher erforderlich. Weitere Informationen finden Sie unter gcloud CLI-Leistung für zonale Buckets optimieren.

    • Sichtbarkeit unvollständiger Uploads: Im Gegensatz zu Buckets in anderen Speicherklassen, in denen Objekte erst nach Abschluss eines Uploads im Namespace angezeigt werden, sind teilweise hochgeladene Objekte in zonalen Buckets sofort sichtbar. Wenn ein Google Cloud CLI-Uploadbefehl fehlschlägt oder unterbrochen wird, sind möglicherweise unvollständige Objekte in Ihrem Bucket vorhanden. Sie können diese Uploads jedoch fortsetzen, indem Sie den Befehl noch einmal ausführen.

    • Objektüberschreibungen: Das Standardverhalten der Google Cloud CLI gilt für zonale Buckets: Wenn Sie ein Objekt überschreiben und am Zielort eine Datei oder ein Objekt mit demselben Namen vorhanden ist, wird es von den Google Cloud CLI-Befehlen cp, mv und rsync standardmäßig überschrieben. Mit dem Flag --no-clobber verhindern Sie, dass Daten überschrieben werden. Wenn Sie die Google Cloud CLI verwenden, wird das Anhängen von Daten an ein vorhandenes Objekt nicht unterstützt. Die gesamte Quelle muss noch einmal hochgeladen werden.

    • Abschluss von Objekten: Bei Objekten, die mit der Google Cloud CLI in einen zonalen Bucket hochgeladen werden, kann es gelegentlich zu einer kurzen Verzögerung kommen, bevor die Metadaten des Objekts vollständig synchronisiert sind. Da Cloud Storage ein Eventually Consistent-Modell verwendet, kann der Versuch, ein Objekt unmittelbar nach dem Hochladen herunterzuladen, zu einem Hash-Fehler führen, wenn die Metadaten noch nicht aktualisiert wurden.

      Wenn ein Download kurz nach einem Upload mit einem Hash-Fehler fehlschlägt, versuchen Sie es noch einmal. Downloads werden entweder vollständig abgeschlossen oder schlagen explizit fehl. Teilweise oder beschädigte Downloads treten nicht unbemerkt auf.

  • Leistung bei der Prüfsummenvalidierung: Zonale Buckets verwenden ausschließlich CRC32C für die Datenvalidierung. Das System kann Prüfsummen pro Chunk und für den gesamten Upload oder Download berechnen. Standardmäßig verwendet die Google Cloud CLI die Python-Bibliothek google-crc32c, die in der Google Cloud CLI vorinstalliert ist. Wenn Sie jedoch eine nicht gebündelte Python-Installation verwenden, müssen Sie die google-crc32c-Bibliothek explizit von PyPI installieren. Andernfalls greift die Google Cloud CLI auf das gcloud-crc32c-Binärprogramm zurück, was zu einer langsameren Leistung bei der CRC-Berechnung pro Chunk führen kann.

Inkompatibilitäten

Zonale Buckets sind mit den folgenden Produkten und Diensten nicht kompatibel:

  • Daten hochladen und verwalten

    • Rapid Cache

    • Autoclass

    • Bucket-Sperre

    • Zusammengesetzte Objekte

    • Mehrteilige XML-Uploads

    • Objekt-Holds

    • Die Aktion „Verwaltung des Objektlebenszyklus“ SetStorageClass

    • Objektaufbewahrungssperre

    • Verschieben von Buckets

    • Fortsetzbare Uploads

    • Objekte umschreiben

    • Anforderer bezahlt

  • Metadaten

    • Objekte in zonalen Buckets haben keinen MD5-Hash.

    • Die Metadateneigenschaften, die mit nicht unterstützten Funktionen und Produkten verknüpft sind, werden nicht in der Ressourcendarstellung eines zonalen Bucket oder eines anhängbaren Objekts angezeigt oder sind anderweitig nicht beschreibbar. Beispiel:

      • Die Metadateneigenschaften softDeleteTime und hardDeleteTime werden nicht in der Ressourcendarstellung der Objects-Ressource angezeigt, da das vorläufige Löschen für Objekte in zonalen Buckets nicht unterstützt wird.

      • Die storageClass-Metadaten von Objekten in zonalen Buckets haben immer den Wert RAPID und können nicht neu geschrieben werden, da für zonale Buckets immer die Speicherklasse „Rapid Storage“ verwendet werden muss.

  • Zugriffssteuerung

    • Access Control Lists (ACLs) auf Objektebene

    • CORS-Konfigurationen

    • Vom Kunden bereitgestellte Verschlüsselungsschlüssel (CSEK, Customer-Supplied Encryption Keys)

    • HMAC-Schlüssel

  • Datenschutz und Notfallwiederherstellung

    • Objektversionierung

    • Vorläufig löschen

    • Bucket-übergreifende Replikation

  • Andere Cloud de Confiance by S3NS Dienste

    • BigQuery

Kontingente

Für jede Zone pro Projekt gilt ein Standardkontingent für die Speicherkapazität. Jede Zone pro Projekt hat auch ein Standardkontingent für ausgehenden Traffic von Cloud Storage zuS3NS -Diensten. Informationen zu diesen Kontingenten finden Sie unter Kontingente und Limits.

Informationen zum Überwachen der Nutzung des ausgehenden Datentraffics und zum Anfordern von mehr Bandbreite finden Sie unter Bandbreitennutzung überwachen.

Preise

Für die Verwendung von Rapid Bucket fallen Gebühren für Datenspeicher, Vorgänge und Netzwerk an. Weitere Informationen finden Sie unter Preise.

Best Practices

Beachten Sie die folgenden Best Practices, um die Leistung und Ressourcennutzung bei der Arbeit mit zonalen Buckets zu optimieren:

  • Objektlesevorgänge optimieren: Wenn Sie Objekte aus zonalen Buckets mit der gcloud CLI lesen, wendet die CLI automatisch Standardkonfigurationen für Parallelität und Aufteilung an. Informationen zum weiteren Optimieren dieser Einstellungen für eine bestimmte Arbeitslast finden Sie unter gcloud CLI-Leistung für zonale Buckets optimieren.

  • Cloud Storage FUSE-Dateihandles: Um die Leistung bei der Verwendung von zonalen Buckets mit Cloud Storage FUSE zu optimieren, sollten Sie ein offenes Dateihandle für Objekte in Ihrem bereitgestellten zonalen Bucket beibehalten und für mehrere Vorgänge verwenden. Diese Vorgehensweise verbessert die Leistung, da Cloud Storage FUSE unnötige Netzwerk-Roundtrips für wiederholte Lesevorgänge vermeidet.

  • Latenz bei parallelen Schreibvorgängen optimieren: Wenn Sie Ihre eigene gRPC-Logik für parallele Schreibvorgänge verwenden, sollten Sie einen Pool mit vorab geöffneten Writern mit nicht finalisierten Objekten verwenden, um die Stream-Einrichtung aus dem Schreibpfad zu entfernen. Ein Pool von vorab geöffneten Writern öffnet Objektstreams und erstellt neue, leere anhängbare Objekte im Bucket, bevor Ihre Anwendung sie benötigt. Weitere Informationen finden Sie unter Schreiblatenz optimieren.

Nächste Schritte