Spazio dei nomi gerarchico

Lo spazio dei nomi gerarchico è una funzionalità offerta da Cloud Storage che consente di organizzare gli oggetti in cartelle e archiviare i dati in una struttura logica del file system, semplificando le attività di gestione dei dati. Lo spazio dei nomi gerarchico fornisce la semantica delle directory ad alte prestazioni e le operazioni atomiche sulle cartelle necessarie per accelerare i workload di analisi e AI/ML con uso intensivo dei dati.

Questa pagina fornisce una panoramica dello spazio dei nomi gerarchico e dei relativi casi d'uso, incluse le funzionalità, i vantaggi e le limitazioni.

Come funziona

Per utilizzare le cartelle in un bucket, devi abilitare lo spazio dei nomi gerarchico quando crei il bucket. L'impostazione dello spazio dei nomi gerarchico del bucket non può essere modificata dopo la creazione del bucket. Per informazioni sull'abilitazione dello spazio dei nomi gerarchico per il bucket, consulta Creare e gestire bucket con lo spazio dei nomi gerarchico abilitato.

Il seguente diagramma mostra un esempio di un bucket con lo spazio dei nomi gerarchico abilitato in cui gli oggetti sono organizzati in una struttura gerarchica di cartelle. Una cartella in un bucket con lo spazio dei nomi gerarchico abilitato può contenere sia oggetti che cartelle secondarie.

Figura 1. Gerarchia dei bucket con cartelle e oggetti.
Figura 1. Gerarchia dei bucket con cartelle e oggetti.

Funzionalità e vantaggi

Lo spazio dei nomi gerarchico offre le seguenti funzionalità e vantaggi:

  • Query al secondo (QPS) iniziali più elevate: i bucket con spazio dei nomi gerarchico abilitato offrono limiti QPS iniziali fino a 8 volte superiori per la lettura e la scrittura di oggetti rispetto ai bucket senza spazio dei nomi gerarchico abilitato. Il QPS iniziale più elevato semplifica la scalabilità dei carichi di lavoro che richiedono un uso intensivo dei dati e offre una velocità effettiva migliorata. Per informazioni sui metodi di ottimizzazione del rendimento durante l'utilizzo delle cartelle nei bucket con lo spazio dei nomi gerarchico abilitato, consulta Gestione delle cartelle.

  • Possibilità di utilizzare le cartelle: le cartelle fungono da contenitore per oggetti e cartelle secondarie, consentendo una vera e propria struttura di directory all'interno dei bucket Cloud Storage. L'archiviazione dei dati in una struttura di cartelle migliora le prestazioni, garantisce la coerenza e semplifica la gestione dei carichi di lavoro orientati ai file e con un utilizzo intensivo dei dati.

    Le operazioni sulle cartelle offrono funzionalità di gestione e affidabilità, tra cui creazione, elenco, eliminazione e ridenominazione atomica.

    • Ridenominazione delle cartelle: l'operazione di ridenominazione delle cartelle consente di rinominare in modo atomico il percorso di una cartella e delle relative sottocartelle senza eliminare alcun oggetto. Questa tecnica è efficiente e consente di risparmiare tempo, soprattutto per le cartelle di grandi dimensioni con più oggetti.

    • Elenco delle cartelle: l'operazione di elenco delle cartelle elenca tutte le cartelle nel bucket o in una cartella specifica, aiutandoti a gestire e comprendere la struttura dei dati archiviati.

Quando è consigliabile utilizzare lo spazio dei nomi gerarchico?

Ti consigliamo di abilitare lo spazio dei nomi gerarchico quando lavori con applicazioni che prevedono una gerarchia e una semantica del file system. Lo spazio dei nomi gerarchico è utile per attività con uso intensivo dei dati come l'analisi e i carichi di lavoro di AI/ML. Ecco alcuni scenari comuni in cui dovresti prendere in considerazione l'utilizzo dello spazio dei nomi gerarchico:

  • Elaborazione basata su Hadoop: i carichi di lavoro Hadoop e Spark si aspettano tradizionalmente una struttura di archiviazione del file system e una denominazione basata sul tempo per file e cartelle. Lo spazio dei nomi gerarchico si integra con il connettore Cloud Storage per fornire un throughput migliorato e ridenominazioni atomiche delle cartelle, migliorando l'integrità e la coerenza dei dati per molte pipeline di elaborazione dei dati.

  • Elaborazione di carichi di lavoro orientati ai file: carichi di lavoro come l'elaborazione batch di analisi, i servizi finanziari o il computing ad alte prestazioni sono strutturati in partizioni in base a una gerarchia di cartelle e file. Lo spazio dei nomi gerarchico aiuta a gestire questi ambienti con un'API dedicata per la gestione delle cartelle. Inoltre, lo spazio dei nomi gerarchico semplifica la gestione delle cartelle che contengono altre cartelle e oggetti. Con un unico comando API, puoi rinominare rapidamente una cartella e tutti i suoi contenuti, risparmiando tempo e risorse preziosi.

  • Elaborazione AI/ML: gli strumenti AI/ML come TensorFlow, Pandas e PyTorch prevedonocontrollo dell'accessoo e la semantica del file system. Lo spazio dei nomi gerarchico, soprattutto se combinato con Cloud Storage FUSE, offre un throughput maggiore e un accesso efficiente ai dati. Di conseguenza, lo spazio dei nomi gerarchico migliora le prestazioni e l'affidabilità dell'iterazione del modello ML.

Prima di abilitare lo spazio dei nomi gerarchico per il bucket, devi considerare le limitazioni dello spazio dei nomi gerarchico. Per informazioni sulle limitazioni dello spazio dei nomi gerarchico, vedi Limitazioni.

Vantaggi dello spazio dei nomi gerarchico

Quando abiliti lo spazio dei nomi gerarchico per i bucket, puoi svolgere le seguenti operazioni:

  • Ottimizzare l'organizzazione: puoi organizzare i dati in una struttura di cartelle gerarchica, che ti aiuta a gestire e individuare file o set di dati.

  • Crea un ecosistema di file system: lo spazio dei nomi gerarchico introduce funzionalità del file system come cartelle, ridenominazione delle cartelle ed elenco delle cartelle, utili per le applicazioni orientate ai file, inclusi l'ecosistema Hadoop e i carichi di lavoro di AI/ML.

  • Miglioramento delle prestazioni: scalando i workload a uso intensivo di dati per gestire una velocità effettiva più elevata, puoi migliorare le prestazioni complessive della tua applicazione.

Supporto piattaforme

I bucket con spazi dei nomi gerarchici supportano le seguenti funzionalità della piattaforma Cloud Storage:

  • Tutte le API degli oggetti Cloud Storage e le funzionalità di Cloud Storage più utilizzate. Per informazioni dettagliate sulle funzionalità non supportate, vedi Limitazioni.

  • Trasferimento di dati da un bucket standard a un bucket con spazio dei nomi gerarchico utilizzando Storage Transfer Service.

  • Integrazione con i seguenti prodotti:

Compatibilità con operazioni e funzionalità di Cloud Storage

I bucket con lo spazio dei nomi gerarchico abilitato interagiscono con le operazioni di Cloud Storage in modo diverso rispetto ai bucket senza spazio dei nomi gerarchico.

Interazioni con le operazioni sugli oggetti

I bucket con lo spazio dei nomi gerarchico abilitato gestiscono le operazioni sugli oggetti nei seguenti modi:

  • Operazioni come Upload, Rewrite e Compose creano automaticamente le cartelle principali mancanti, a condizione che tu disponga delle autorizzazioni necessarie. Di conseguenza, non è necessario creare cartelle prima di caricare gli oggetti.
  • Sebbene le cartelle possano essere create automaticamente durante le operazioni sugli oggetti, devi eliminarle in modo esplicito utilizzando l'operazione DeleteFolder.
  • Quando utilizzi l'operazione ListObjects con il parametro delimiter, i bucket restituiscono ogni cartella secondaria come prefix.. Tuttavia, le cartelle vuote vengono escluse per impostazione predefinita. Per includere le cartelle vuote, in modo simile a un elenco tipico di file di sistema, devi impostare il parametro includeFoldersAsPrefixes. Per informazioni sui metodi di ottimizzazione del rendimento durante l'elenco degli oggetti nei bucket con lo spazio dei nomi gerarchico abilitato, consulta Elenco degli oggetti.

Interazioni con le operazioni bucket

Le sezioni seguenti descrivono la gestione delle operazioni sui bucket quando lo spazio dei nomi gerarchico è abilitato.

  • Puoi elencare tutti i bucket con lo spazio dei nomi gerarchico abilitato, indipendentemente dal layout di archiviazione. Il layout di archiviazione di un bucket descrive la modalità di organizzazione degli oggetti all'interno di un bucket, in uno spazio dei nomi piatto o gerarchico. Per istruzioni su come visualizzare il layout di archiviazione di un bucket, consulta Recuperare il layout di archiviazione di un bucket. Per elencare tutti i bucket, segui le istruzioni riportate in Elencare i bucket.

  • Puoi eliminare i bucket con lo spazio dei nomi gerarchico abilitato a condizione che il bucket sia vuoto. I bucket vuoti non contengono oggetti o cartelle gestite. I bucket vuoti possono contenere cartelle vuote (senza oggetti all'interno).

Interazioni con le operazioni di gestione del ciclo di vita degli oggetti

La gestione del ciclo di vita degli oggetti ti consente di automatizzare le azioni sugli oggetti in base a condizioni, ad esempio età o prefisso. Tuttavia, le regole di gestione del ciclo di vita degli oggetti possono comportarsi in modo diverso nei bucket con spazio dei nomi gerarchico e nei bucket con spazio dei nomi piatto a causa dell'operazione RenameFolder:

  • Regole di gestione del ciclo di vita degli oggetti per i bucket con uno spazio dei nomi piatto: l'operazione di ridenominazione prevede la ridenominazione di ogni oggetto utilizzando strumenti copiando ogni oggetto in una posizione di destinazione ed eliminando l'oggetto originale dalla posizione di origine. Di conseguenza, i nuovi oggetti vengono creati con nuovi orari di creazione nella località di destinazione. Se vengono applicate regole di gestione del ciclo di vita degli oggetti basate sull'etàper la posizione di destinazione, queste non verranno applicate immediatamente ai nuovi oggetti perché i relativi orari di creazione vengono reimpostati.

  • Regole di gestione del ciclo di vita degli oggetti per i bucket con spazio dei nomi gerarchico abilitato: la ridenominazione di una cartella opera a livello di cartella, senza dover rinominare ogni singolo oggetto. Di conseguenza, l'ora di creazione degli oggetti viene mantenuta, il che significa che le regole di Gestione del ciclo di vita degli oggetti basate sull'età vengono applicate immediatamente agli oggetti rinominati se soddisfano i criteri di età.

Controllo dell'accesso per le cartelle con cartelle gestite associate

In Cloud Storage, una cartella è la directory effettiva che contiene i dati, mentre una cartella gestita è una risorsa separata e specializzata utilizzata per applicare le autorizzazioni IAM alla directory. Per controllare l'accesso a una cartella e alle risorse al suo interno, crea una cartella gestita associata e imposta i criteri IAM nella cartella gestita associata. Una cartella gestita associata è una cartella gestita che ha lo stesso nome e percorso della tua cartella effettiva.

La cartella gestita associata funge da livello amministrativo sulla directory creata dalla cartella, il che significa che una cartella e la relativa cartella gestita associata sono indissolubilmente collegate. Ad esempio, se elimini una cartella con una cartella gestita associata, viene eliminata anche la cartella gestita associata insieme alle relative policy IAM. Per maggiori dettagli su come le operazioni sulle cartelle influenzano le cartelle gestite associate, vedi Interazioni tra cartelle e cartelle gestite associate.

Denominazione delle cartelle con cartelle gestite associate

Quando crei cartelle con cartelle gestite associate, si applicano sia le regole di denominazione delle cartelle sia le regole di denominazione delle cartelle gestite. I nomi delle cartelle possono essere nidificati fino a 50 livelli, ma i nomi delle cartelle gestite possono essere nidificati solo fino a 15 livelli. La dimensione massima del nome di una cartella gestita è 512 byte se codificata in UTF-8. Ciò significa che se prevedi di creare una cartella e una cartella gestita associata, la cartella può contenere solo 15 cartelle secondarie impilate e la dimensione massima del nome è di 512 byte con codifica UTF-8.

Prezzi

Per informazioni sui prezzi, consulta la pagina Prezzi di Cloud Storage.

Limitazioni

Di seguito sono riportate le limitazioni dello spazio dei nomi gerarchico:

  • Devi scegliere se utilizzare o meno lo spazio dei nomi gerarchico quando crei il bucket. L'impostazione dello spazio dei nomi gerarchico del bucket non può essere modificata dopo la creazione del bucket.

  • Per abilitare lo spazio dei nomi gerarchico, un bucket deve abilitare anche l' accesso uniforme a livello di bucket.

  • Le seguenti funzionalità di Cloud Storage non sono supportate per i bucket che utilizzano lo spazio dei nomi gerarchico:

    • Blocco bucket
    • Spostamento dei bucket
    • Replica tra bucket
    • Blocchi degli oggetti
    • Blocco della conservazione degli oggetti
    • Controllo delle versioni degli oggetti

Passaggi successivi

Provalo

Se non conosci Google Cloud, crea un account per valutare le prestazioni di Cloud Storage in scenari reali. I nuovi clienti ricevono anche 300 $di crediti senza costi per l'esecuzione, il test e il deployment dei workload.

Prova Cloud Storage gratuitamente