Der hierarchische Namespace ist eine Funktion von Cloud Storage, mit der Sie Objekte in Ordnern organisieren und Ihre Daten in einer logischen Dateisystemstruktur speichern können. So lassen sich Aufgaben zur Datenverwaltung einfacher optimieren. Der hierarchische Namespace bietet die leistungsstarke Verzeichnissyntax und die atomaren Ordneroperationen, die erforderlich sind, um datenintensive KI/ML- und Analysearbeitslasten zu beschleunigen.
Auf dieser Seite erhalten Sie einen Überblick über den hierarchischen Namespace und seine Anwendungsfälle, einschließlich seiner Funktionen, Vorteile und Einschränkungen.
Funktionsweise
Wenn Sie Ordner in einem Bucket verwenden möchten, müssen Sie beim Erstellen des Buckets den hierarchischen Namespace aktivieren. Die Einstellung für den hierarchischen Namespace des Buckets kann nach dem Erstellen nicht mehr geändert werden. Informationen zum Aktivieren des hierarchischen Namespaces für Ihren Bucket finden Sie unter Buckets mit aktiviertem hierarchischem Namespace erstellen und verwalten.
Das folgende Diagramm zeigt ein Beispiel für einen Bucket mit aktiviertem hierarchischen Namespace, in dem Objekte in einer hierarchischen Ordnerstruktur organisiert sind. Ein Ordner in einem Bucket mit aktiviertem hierarchischen Namespace kann sowohl Objekte als auch untergeordnete Ordner enthalten.
Funktionen und Vorteile
Der hierarchische Namespace bietet folgende Funktionen und Vorteile:
Höhere anfängliche Abfragen pro Sekunde (QPS): Buckets mit aktiviertem hierarchischen Namespace bieten bis zu achtmal höhere anfängliche QPS Limits für das Lesen und Schreiben von Objekten im Vergleich zu Buckets ohne aktivierten hierarchischen Namespace. Die höhere anfängliche QPS erleichtert die Skalierung datenintensiver Arbeitslasten und sorgt für einen höheren Durchsatz. Informationen zu Methoden zur Leistungsoptimierung bei der Verwendung von Ordnern in Buckets mit aktiviertem hierarchischen Namespace finden Sie unter Ordnerverwaltung.
Möglichkeit zur Verwendung von Ordnern: Ordner dienen als Container für Objekte und untergeordnete Ordner und ermöglichen so eine echte Verzeichnisstruktur in Cloud Storage-Buckets. Wenn Sie Ihre Daten in einer Ordnerstruktur speichern, wird die Leistung verbessert, die Konsistenz gewährleistet und die Verwaltung datenintensiver und dateiorientierter Arbeitslasten vereinfacht.
Ordneroperationen bieten Zuverlässigkeit und Verwaltungsfunktionen, einschließlich Erstellen, Auflisten, Löschen und atomares Umbenennen.
Ordner umbenennen: Mit der Operation zum Umbenennen von Ordnern können Sie den Pfad eines Ordners und seiner untergeordneten Ordner atomar umbenennen, ohne Objekte zu löschen. Diese Methode ist effizient und zeitsparend, insbesondere bei großen Ordnern mit mehreren Objekten.
Ordner auflisten: Mit der Operation zum Auflisten von Ordnern werden alle Ordner im Bucket oder unter einem bestimmten Ordner aufgelistet. So können Sie die Struktur Ihrer gespeicherten Daten verwalten und nachvollziehen.
Wann sollten Sie den hierarchischen Namespace verwenden?
Sie sollten den hierarchischen Namespace aktivieren, wenn Sie mit Anwendungen arbeiten, die eine Dateisystemhierarchie und ‑semantik erwarten. Der hierarchische Namespace eignet sich für datenintensive Aufgaben wie Analysen und KI/ML-Arbeitslasten. Hier sind einige häufige Szenarien, in denen Sie den hierarchischen Namespace verwenden sollten:
Hadoop-basierte Verarbeitung: Hadoop- und Spark-Arbeitslasten erfordern traditionell eine Dateisystem-Speicherstruktur und zeitbasierte Benennung für Dateien und Ordner. Der hierarchische Namespace lässt sich in den Cloud Storage-Connector einbinden, um den Durchsatz zu erhöhen und atomare Ordnerumbenennungen zu ermöglichen. So werden die Daten integrität und ‑konsistenz für viele Datenverarbeitungspipelines verbessert.
Verarbeitung dateiorientierter Arbeitslasten: Arbeitslasten wie die Batchanalyse Verarbeitung, Finanzdienstleistungen oder Hochleistungs-Computing sind in Partitionen unterteilt, die auf einer Hierarchie von Ordnern und Dateien basieren. Der hierarchische Namespace unterstützt die Verwaltung dieser Umgebungen mit einer speziellen API für die Ordnerverwaltung. Außerdem vereinfacht der hierarchische Namespace die Verwaltung von Ordnern, die andere Ordner und Objekte enthalten. Mit einem einzigen API-Befehl können Sie einen Ordner zusammen mit seinem gesamten Inhalt schnell umbenennen und so wertvolle Zeit und Ressourcen sparen.
KI/ML-Verarbeitung: KI/ML-Tools wie TensorFlow, Pandas und PyTorch erfordern eine Dateisystem-Zugriffssteuerung und ‑semantik. Der hierarchische Namespace bietet, insbesondere in Kombination mit Cloud Storage FUSE, einen höheren Durchsatz und einen effizienten Datenzugriff. Daher verbessert der hierarchische Namespace die Leistung und Zuverlässigkeit der ML-Modelliteration.
Bevor Sie den hierarchischen Namespace für Ihren Bucket aktivieren, sollten Sie die Einschränkungen des hierarchischen Namespaces berücksichtigen. Informationen zu Einschränkungen des hierarchischen Namespaces finden Sie unter Einschränkungen.
Vorteile des hierarchischen Namespaces
Wenn Sie den hierarchischen Namespace für Ihre Buckets aktivieren, haben Sie folgende Möglichkeiten:
Organisation optimieren: Sie können Ihre Daten in einer hierarchischen Ordnerstruktur organisieren, mit der Sie Dateien oder Datensätze verwalten und finden können.
Dateisystem-Ökosystem einrichten: Der hierarchische Namespace führt Dateisystemfunktionen wie Ordner, Ordnerumbenennung und Ordnerauflistung ein, die für dateiorientierte Anwendungen von Vorteil sind, einschließlich des Hadoop-Ökosystems und KI/ML-Arbeitslasten.
Leistungsverbesserung: Wenn Sie datenintensive Arbeitslasten so skalieren, dass sie einen höheren Durchsatz bewältigen können, können Sie die Gesamtleistung Ihrer Anwendung verbessern.
Plattform-Support
Buckets mit hierarchischem Namespace unterstützen die folgenden Cloud Storage-Plattformfunktionen:
Alle Cloud Storage-Objekt-APIs und häufig verwendete Cloud Storage-Funktionen. Weitere Informationen zu nicht unterstützten Funktionen, siehe Einschränkungen.
Datenübertragung von einem Standard-Bucket zu einem Bucket mit hierarchischem Namespace mit Storage Transfer Service.
Einbindung in die folgenden Produkte:
Cloud Storage-Connector, verwaltet von Managed Service for Apache Spark für Hadoop-Arbeitslasten. Weitere Informationen finden Sie unter Buckets mit aktiviertem hierarchischen Namespace für Hadoop-Arbeitslasten verwenden.
Cloud Storage FUSE für den dateisystemähnlichen Bucket-Zugriff mit Clients.
GCSFS-Python-Bibliothek für den dateisystemähnlichen Bucket-Zugriff mit Python. Der hierarchische Namespace wird von den GCSFS-Python-Bibliotheksversionen 2026.3.0 und höher unterstützt.
Kompatibilität mit Cloud Storage-Vorgängen und ‑Funktionen
Buckets mit aktiviertem hierarchischen Namespace interagieren anders mit Cloud Storage-Vorgängen als Buckets ohne hierarchischen Namespace.
Interaktionen mit Objektvorgängen
Buckets mit aktiviertem hierarchischem Namespace verarbeiten Objektvorgänge auf folgende Weise:
- Bei Vorgängen wie
Upload,RewriteundComposewerden fehlende übergeordnete Ordner automatisch erstellt, sofern Sie die erforderlichen Berechtigungen haben. Daher müssen Sie Ordner nicht vor dem Hochladen von Objekten erstellen. - Ordner können zwar automatisch bei Objektvorgängen erstellt werden, Sie
müssen sie jedoch explizit mit der
DeleteFolderOperation löschen. - Wenn Sie die
ListObjectsOperation mit demdelimiterParameter, geben Buckets jeden untergeordneten Ordner alsprefix.zurück. Leere Ordner werden jedoch standardmäßig ausgeschlossen. Wenn Sie leere Ordner ähnlich einer typischen Dateisystemauflistung einbeziehen möchten, müssen Sie den ParameterincludeFoldersAsPrefixesfestlegen. Informationen zu Methoden zur Leistungsoptimierung beim Auflisten von Objekten in Buckets mit aktiviertem hierarchischen Namespace finden Sie unter Objekte auflisten.
Interaktionen mit Bucket-Vorgängen
In den folgenden Abschnitten wird beschrieben, wie Bucket-Vorgänge verarbeitet werden, wenn der hierarchische Namespace aktiviert ist.
Sie können alle Buckets mit aktiviertem hierarchischen Namespace auflisten, unabhängig von ihrem Speicher-Layout. Das Speicher-Layout eines Buckets beschreibt, wie Objekte in einem Bucket angeordnet sind, entweder in einem flachen Namespace oder einem hierarchischen Namespace. Eine Anleitung zum Aufrufen des Speicher-Layouts eines Buckets finden Sie unter Speicher-Layout eines Buckets abrufen. Eine Anleitung zum Auflisten aller Buckets finden Sie unter Buckets auflisten.
Sie können Buckets löschen, für die der hierarchische Namespace aktiviert ist, sofern der Bucket leer ist. Leere Buckets enthalten keine Objekte oder verwalteten Ordner. Leere Buckets können leere Ordner (ohne Objekte) enthalten.
Interaktionen mit Vorgängen zur Verwaltung des Objektlebenszyklus
Mit der Verwaltung des Objektlebenszyklus können Sie Aktionen für Objekte
basierend auf Bedingungen wie Alter oder Präfix automatisieren. Regeln zur Verwaltung des Objektlebenszyklus können sich jedoch in Buckets mit hierarchischem Namespace und in Buckets mit flachem Namespace aufgrund der Operation RenameFolder unterschiedlich verhalten:
Regeln zur Verwaltung des Objektlebenszyklus für Buckets mit flachem Namespace: Beim Umbenennen wird jedes Objekt mit Tools umbenannt, indem jedes Objekt an einen Zielort kopiert und das ursprüngliche Objekt vom Quellort gelöscht wird. Dadurch werden am Zielort neue Objekte mit neuen Erstellungszeiten erstellt. Wenn altersbasierte Regeln zur Verwaltung des Objektlebenszyklus regeln für den Zielort angewendet werden, gelten sie nicht sofort für die neuen Objekte, da ihre Erstellungszeiten zurückgesetzt werden.
Regeln zur Verwaltung des Objektlebenszyklus für Buckets mit aktiviertem hierarchischen Namespace aktiviert: Das Umbenennen eines Ordners erfolgt auf Ordnerebene, ohne dass jedes einzelne Objekt umbenannt werden muss. Dadurch bleibt die Erstellungszeit der Objekte erhalten. Das bedeutet, dass die altersbasierten Regeln zur Verwaltung des Objektlebenszyklus sofort auf umbenannte Objekte angewendet werden, wenn sie die Alterskriterien erfüllen.
Zugriffssteuerung für Ordner mit zugehörigen verwalteten Ordnern
In Cloud Storage ist ein Ordner das tatsächliche Verzeichnis, in dem Ihre Daten gespeichert sind. Ein verwalteter Ordner ist eine separate, spezielle Ressource, mit der IAM-Berechtigungen auf das Verzeichnis angewendet werden. Wenn Sie den Zugriff auf einen Ordner und die darin enthaltenen Ressourcen steuern möchten, erstellen Sie einen zugehörigen verwalteten Ordner und legen IAM-Richtlinien für den zugehörigen verwalteten Ordner fest. Ein zugehöriger verwalteter Ordner ist ein verwalteter Ordner mit demselben Namen und Pfad wie Ihr tatsächlicher Ordner.
Der zugehörige verwaltete Ordner fungiert als Verwaltungsebene über dem vom Ordner erstellten Verzeichnis. Das bedeutet, dass ein Ordner und sein zugehöriger verwalteter Ordner untrennbar miteinander verbunden sind. Wenn Sie beispielsweise einen Ordner löschen, der einen zugehörigen verwalteten Ordner hat, wird auch der zugehörige verwaltete Ordner zusammen mit seinen IAM-Richtlinien gelöscht. Weitere Informationen dazu, wie sich Ordneroperationen auf zugehörige verwaltete Ordner auswirken, finden Sie unter Interaktionen zwischen Ordnern und zugehörigen verwalteten Ordnern.
Benennung für Ordner mit zugehörigen verwalteten Ordnern
Beim Erstellen von Ordnern mit zugehörigen verwalteten Ordnern gelten sowohl die Regeln für die Ordnerbenennung als auch die Regeln für die Benennung verwalteter Ordner. Ordnernamen können bis zu 50 Ebenen tief verschachtelt werden, Namen verwalteter Ordner jedoch nur bis zu 15 Ebenen. Die maximale Größe für einen Namen eines verwalteten Ordners beträgt 512 Byte, wenn er mit UTF-8 codiert ist. Wenn Sie also einen Ordner und einen zugehörigen verwalteten Ordner dafür erstellen möchten, kann der Ordner nur 15 verschachtelte untergeordnete Ordner haben und seine maximale Namensgröße beträgt 512 Byte, wenn er mit UTF-8 codiert ist.
Preise
Preisinformationen finden Sie unter Cloud Storage – Preise.
Beschränkungen
Hier sind die Einschränkungen für den hierarchischen Namespace:
Sie müssen beim Erstellen des Buckets auswählen, ob der hierarchische Namespace verwendet werden soll. Die Einstellung für den hierarchischen Namespace des Buckets kann nach dem Erstellen nicht mehr geändert werden.
Damit der hierarchische Namespace verwendet werden kann, muss für den Bucket auch der einheitliche Zugriff auf Bucket-Ebene aktiviert sein.
In Buckets mit aktiviertem hierarchischen Namespace beträgt die maximale Größe des Namens eines Objekts 1.024 Byte, wenn er mit UTF-8 codiert ist. Dabei haben das Ordnernamenssegment und das Basisnamenssegment jeweils ein Limit von 512 Byte, wenn sie mit UTF-8 codiert sind. In Buckets mit flachem Namespace enthalten Objektnamen keine Ordnernamenssegmente und haben ein Limit von 1.024 Byte, wenn sie mit UTF-8 codiert sind. Weitere Informationen zu den Limits für Objektnamen finden Sie unter Objekte.
Ordnernamen können bis zu 50 Ebenen tief verschachtelt werden (oder 15 Ebenen, wenn der Ordner einen zugehörigen verwalteten Ordner hat).
Die folgenden Cloud Storage-Funktionen werden für Buckets, die den hierarchischen Namespace verwenden, nicht unterstützt:
- Bucket-Sperre
- Bucket-Verschiebungen mit Schreibausfallzeit
- Bucket-übergreifende Replikation
- Objekt-Holds
- Zugriffssteuerungslisten (ACLs) auf Objektebene
- Objektaufbewahrungssperre
- Objektversionsverwaltung