Auf dieser Seite wird Cloud Storage und seine Funktionsweise beschrieben.
Funktionsweise von Cloud Storage
Cloud Storage ist ein skalierbarer und verwalteter Speicherdienst von Google Cloud mit dem Sie Daten als Objekte in Containern namens Buckets speichern können.
Alle Buckets sind einem Projekt zugeordnet und Sie gruppieren Ihre Projekte in einer Organisation. Nachdem Sie ein Projekt erstellt haben, können Sie Buckets erstellen, Objekte hochladen in Ihre Buckets, und Objekte herunterladen aus Ihren Buckets. Sie können auch Berechtigungen erteilen, um Ihre Daten für von Ihnen angegebene Hauptkonten oder für jeden im öffentlichen Internet zugänglich zu machen. Mit den Verzeichnisfunktionen können Sie Cloud Storage eher wie eine Festplatte oder ein Network Attached Storage (NAS) verwenden: Mit Ordnern können Sie Objekte in einer Verzeichnisstruktur organisieren und mit verwalteten Ordnern können Sie die Zugriffssteuerung für Ihre Objekte vereinfachen.
Jedes Projekt, jeder Bucket, jedes Objekt, jeder Ordner und jeder verwaltete Ordner ist eine Ressource in Google Cloud, ebenso wie Compute Engine-Instanzen.
Die Google Cloud Hierarchie
So kann die Cloud Storage-Struktur auf einen realen Fall angewendet werden:
Organisation: Ihr Unternehmen namens Example Inc. erstellt eine Google Cloud Organisation mit dem Namen
exampleinc.org.Projekt: Example Inc. erstellt mehrere Anwendungen, die jeweils einem Projekt zugeordnet sind. Jedes Projekt hat eigene Cloud Storage APIs und andere Ressourcen.
Bucket: Jedes Projekt kann mehrere Buckets enthalten, die als Container zum Speichern Ihrer Objekte dienen. Sie können beispielsweise einen
photos-Bucket für alle von Ihrer Anwendung erzeugten Bilddateien und einen separatenvideos-Bucket erstellen. Cloud Storage bietet verschiedene Speicherklassen und Standorte für Ihre Buckets. So können Sie die Dauerhaftigkeit und Verfügbarkeit Ihrer Daten an die Anforderungen Ihrer Arbeitslasten anpassen.Buckets dienen als primäre Datenbasis im breiteren Google Cloud Ökosystem. Sie können Ihre Buckets als Speicherserver für andere Google Cloud Dienste wie AI Hypercomputer, Vertex AI, und Google Kubernetes Engine verbinden.
Buckets eignen sich zwar für die meisten Anwendungsfälle der Datenspeicherung, Sie können aber optionale Konfigurationen und Funktionen für einen Bucket einrichten, um ihn speziell für leistungsstarke Arbeitslasten besser geeignet zu machen:
Hierarchischer Namespace: Für Buckets kann der hierarchische Namespace aktiviert werden. So können Sie Ihre Daten in einer logischen Dateisystemstruktur speichern, indem Sie Ordner verwenden. Wenn Sie Ihre Daten in Ordnern speichern, können Sie die Verzeichnissyntax und atomaren Ordneroperationen verwenden, die häufig erforderlich sind, um datenintensive KI/ML- und Analysearbeitslasten zu beschleunigen. Buckets mit aktiviertem hierarchischem Namespace bieten im Vergleich zu Buckets ohne aktiviertem hierarchischem Namespace bis zu achtmal höhere Grenzwerte für die anfänglichen Abfragen pro Sekunde (QPS) für das Lesen und Schreiben von Objekten.
Der hierarchische Namespace kann nur bei der Bucket-Erstellung aktiviert werden und kann nicht für einen vorhandenen Bucket aktiviert werden.
Rapid-Bucket: Rapid-Bucket ist eine leistungsstarke Funktion mit der Sie Objekte in der Speicherklasse „Rapid Storage“ speichern können, indem Sie eine Zone als Bucket-Standort verwenden. Wenn Sie Buckets in Zonen platzieren, können Sie Ihre Objekte am selben Standort wie Ihre Rechenressourcen platzieren, den hierarchischen Namespace automatisch aktivieren und APIs für Streaming-Lesevorgänge und anhängbare Schreibvorgänge verwenden. Rapid-Bucket bietet im Vergleich zu Buckets in anderen Speicherklassen eine deutlich verbesserte Latenz, einen höheren Durchsatz und mehr E/A-Vorgänge. Daher ist die Funktion ideal für datenintensive KI/ML- und Analysearbeitslasten.
Wenn Sie Rapid-Bucket verwenden möchten, erstellen Sie einen Bucket und definieren eine Zone als Bucket-Standort. Rapid-Bucket kann nicht für vorhandene Buckets verwendet werden, die sich nicht in einer Zone befinden.
Objekt: Buckets enthalten Objekte, z. B. ein Bild mit dem Namen
puppy.png. Ein Objekt ist ein unveränderliches Datenelement, das aus einer Datei mit einem beliebigen Format besteht. Jeder Bucket kann im Wesentlichen unbegrenzte einzelne Objekte enthalten.Ordner: Buckets mit aktiviertem hierarchischem Namespace können Ordner enthalten. Ordner ermöglichen ein echtes Dateisystem zum Speichern von Objekten im Gegensatz zu einem simulierten Dateisystem. Sie können einen Ordner und alle Objekte darin in einem Vorgang atomar umbenennen.
Verwalteter Ordner: Jeder Bucket kann auch verwaltete Ordner enthalten, die zusätzlichen Zugriff gewähren oder widerrufen, der über die für den Bucket festgelegten IAM Berechtigungen hinausgeht. Verwaltete Ordner verwenden keine echte Verzeichnisbaumstruktur. Stattdessen ist ein verwalteter Ordner ein Ressourcen-Overlay, das nur für die Berechtigungsprüfung verwendet wird.
Tools für Cloud Storage
Sie können mit Cloud Storage über die folgenden Tools interagieren:
Google Cloud console: Die Google Cloud console bietet eine visuelle Benutzeroberfläche zur Verwaltung Ihrer Daten in einem Browser.
Google Cloud CLI: Über die gcloud CLI können Sie mit Cloud Storage über ein Terminal interagieren, das
gcloud storageBefehle nutzt.Clientbibliotheken: Mit den Clientbibliotheken von Cloud Storage können Sie Ihre Daten in einer Ihrer bevorzugten Sprachen verwalten, einschließlich C++, C#, Go, Java, Node.js, PHP, Python und Ruby.
REST APIs: Verwalten Sie Ihre Daten mit der JSON oder der XML API.
Terraform: Terraform ist ein IaC-Tool (Infrastruktur als Code), mit dem Sie die Infrastruktur für Cloud Storage bereitstellen können. Weitere Informationen finden Sie unter Ressourcen mit Cloud Storage bereitstellen.
gRPC: Mit gRPC können Sie mit Cloud Storage interagieren. gRPC ist ein von Google entwickeltes leistungsstarkes, universelles Open-Source-RPC-Framework , mit dem Sie Ihre Dienste mit Protokollzwischenspeichern definieren können.
Cloud Storage FUSE: Mit Cloud Storage FUSE können Sie Cloud Storage Buckets in Ihrem lokalen Dateisystem bereitstellen. Auf diese Weise können Ihre Anwendungen mithilfe der Standardsemantik des Dateisystems aus einem Bucket lesen oder in einen Bucket schreiben.
GCSFS-Python-Bibliothek: GCSFS ist eine Python-Bibliothek, die eine Python-Dateisystemschnittstelle zu Cloud Storage bietet.
Daten sichern
Nachdem Sie Ihre Objekte in Cloud Storage hochgeladen haben, können Sie genau steuern, wie Sie Ihre Daten sichern und freigeben. So sichern Sie die in Cloud Storage hochgeladenen Daten:
Identity and Access Management: Mit IAM können Sie steuern, wer auf die Ressourcen in Ihrem Google Cloud Projekt zugreifen kann. Zu den Ressourcen gehören Cloud Storage-Buckets und -Objekte sowie andere Google Cloud Entitäten wie Compute Engine-Instanzen. Sie können Hauptkonten bestimmte Arten von Zugriff auf Buckets und Objekte gewähren, z. B.
update,createoderdelete.Datenverschlüsselung: Cloud Storage verwendet standardmäßig die serverseitige Verschlüsselung, um Ihre Daten zu verschlüsseln. Sie können auch zusätzliche Daten verschlüsselungsoptionen wie kundenverwaltete Verschlüsselungsschlüssel und vom Kunden bereitgestellte Verschlüsselungsschlüssel verwenden.
Authentifizierung: Sorgen Sie dafür, dass jeder, der auf Ihre Daten zugreift, die richtigen Anmeldedaten hat.
Vorläufiges Löschen: Verhindern Sie den dauerhaften Verlust von Daten gegen versehentliches oder böswilliges Löschen, indem Sie kürzlich gelöschte Objekte und Buckets aufbewahren. Standardmäßig aktiviert Cloud Storage die Funktion Vorläufiges Löschen für alle Buckets mit einer Aufbewahrungsdauer von sieben Tagen.
Objektversionsverwaltung: Wenn eine Live-Version eines Objekts ersetzt oder gelöscht wird, kann diese als nicht aktuelle Version aufbewahrt werden, wenn Sie die Objekt versionsverwaltung aktivieren.
Bucket-IP-Filterung: Mit der Bucket-IP-Filterung können Sie den Zugriff auf einen Bucket basierend auf der Quell-IP-Adresse der Anfrage einschränken und Ihre Daten vor unbefugtem Zugriff von bestimmten IP-Adressen oder VPC-Netzwerken (Virtual Private Cloud) schützen.
Bucket-Sperre: Legen Sie durch Angeben einer Aufbewahrungsrichtlinie fest, wie lange Objekte in Buckets aufbewahrt werden müssen.
Ressourcennamen
Jede Ressource hat einen eindeutigen Namen, durch den sie identifiziert werden kann, ähnlich wie ein Dateiname.
Buckets haben einen Ressourcennamen im Format projects/_/buckets/BUCKET_NAME, wobei BUCKET_NAME die ID des Buckets ist. Objekte haben einen Ressourcennamen im Format projects/_/buckets/BUCKET_NAME/objects/OBJECT_NAME, wobei OBJECT_NAME die ID des Objekts ist.
Die Kennung #NUMBER am Ende des Ressourcennamens weist auf eine bestimmte Generierung des Objekts hin. #0 ist eine spezielle Kennung für die zuletzt erstellte Version eines Objekts. Das Anfügen von #0 an einen Objektnamen ist nützlich, wenn dessen Ende ein String ist, der andernfalls als Generierungsnummer interpretiert würde.
Kurzanleitungen
Die Grundlagen zur Verwendung von Cloud Storage finden Sie in den folgenden Leitfäden:
Suchen Sie nach anderen Produkten?
Wenn Cloud Storage nicht die richtige Speicherlösung für Sie ist, finden Sie hier weitere Informationen zu den folgenden Speicherdiensten:
Google Cloud Managed Lustre: Speichern Sie Ihre Daten in einem leistungsstarken, vollständig verwalteten parallelen Dateisystem, das für KI- und HPC-Arbeitslasten optimiert ist.
Google Drive: Persönliche Dateien speichern, verwalten und teilen
Cloud Storage for Firebase: Daten für Ihre mobilen Anwendungen verwalten
Persistent Disk: Der virtuellen Maschine in Compute Engine Blockspeicher hinzufügen
Filestore: Dateispeicher für den Multiwriter-Zugriff auf Ihre GKE-Cluster hinzufügen.
Weitere Speicherdienste von Google.
Nächste Schritte
- Grundlagen von Cloud Storage über die Google Cloud Console oder Google Cloud CLI kennenlernen.
- Einstiegslösungen mit Cloud Storage ausprobieren Google Cloud .
- Erste Schritte mit Clientbibliotheken.
- Mit dem Storage Transfer Service können Sie Onlinedaten schnell in Cloud Storage oder zwischen Cloud Storage-Buckets importieren.