Questa pagina illustra i campi di metadati di uso comune archiviati insieme agli oggetti in Cloud Storage.
Introduzione
Agli oggetti archiviati in Cloud Storage sono associati metadati.
I metadati identificano le proprietà dell'oggetto e specificano come
gestirlo quando vi si accede. I metadati esistono come coppie chiave:valore. Ad esempio, la classe di archiviazione di un oggetto è rappresentata dalla voce di metadati storageClass:STANDARD
. storageClass
è la chiave
per i metadati e a tutti gli oggetti è associata una chiave di questo tipo.
STANDARD
specifica il valore dell'oggetto specifico e varia da oggetto ad oggetto.
La mutabilità dei metadati varia: alcuni metadati possono essere modificati in qualsiasi momento, alcuni
metadati che puoi impostare solo al momento della creazione dell'oggetto e alcuni
metadati che puoi solo visualizzare. Ad esempio, puoi modificare il valore dei metadati Cache-Control
in qualsiasi momento, ma puoi assegnare i metadati storageClass
solo quando l'oggetto viene creato o riscritto. Inoltre, non puoi modificare direttamente il valore per i metadati generation
, anche se il valore generation
cambia quando l'oggetto viene sostituito.
Metadati modificabili
Esistono due categorie di metadati che gli utenti possono modificare per gli oggetti:
Metadati a chiave fissa: metadati per i quali sono impostate le chiavi, ma per i quali puoi specificare un valore.
Metadati personalizzati: i metadati che aggiungi specificando una chiave e un valore associati alla chiave.
Quando modifichi i metadati, in genere dovresti evitare caratteri non ASCII, perché non sono consentiti nelle intestazioni HTTP utilizzate dall'API XML.
Metadati a chiave fissa
Puoi modificare i seguenti metadati per gli oggetti, ma devi disporre di un'autorizzazione sufficiente per farlo:
- Metadati di controllo dell'accesso
- Controllo cache
- Disposizione dei contenuti
- Codifica dei contenuti
- Contenuti-Lingua
- Tipo di contenuto
- Ora personalizzata
- Blocco di oggetti
- Configurazione di conservazione
Metadati di controllo dell'accesso
Cloud Storage utilizza Identity and Access Management (IAM) e gli elenchi di controllo dell'accesso (ACL) per controllare l'accesso agli oggetti. Utilizza questi link per scoprire di più su questi metodi di controllo dell'accesso#39;accesso e sui metadati associati.
Cache-Control
I metadati Cache-Control
possono specificare due aspetti diversi del modo in cui i dati vengono forniti da Cloud Storage: se i dati possono essere memorizzati nella cache e se i dati possono essere trasformati.
Memorizzazione nella cache dei dati
I metadati Cache-Control
ti consentono di controllare se e per quanto tempo le cache del browser e di internet possono memorizzare nella cache i tuoi oggetti, che possono poi essere pubblicati per soddisfare richieste future. La rete Cloud Storage prende in considerazione l'impostazione Cache-Control
di un oggetto solo quando accede agli oggetti che:
- Sono accessibili pubblicamente.
- Non vengono archiviati in un bucket in cui è abilitato Requester Pays (Pagamenti a carico del richiedente).
- Non sono criptati utilizzando chiavi di crittografia fornite dal cliente.
Cloud Storage rispetta i valori standard per
Cache-Control
, come i seguenti:
public
: l'oggetto può essere memorizzato nella cache ovunque.private
: l'oggetto può essere memorizzato nella cache locale del richiedente.no-cache
: l'oggetto può essere memorizzato nella cache, ma non può essere utilizzato per soddisfare richieste future se non prima convalidato da Cloud Storage.no-store
: l'oggetto non può essere memorizzato nella cache.max-age=TIME_IN_SECONDS
: il periodo di tempo durante il quale un oggetto può essere memorizzato nella cache prima che venga considerato inattivo. Puoi impostaremax-age
su qualsiasi intervallo di tempo. Gli oggetti inattivi non vengono pubblicati dalle cache, se non in circostanze speciali.
Se un oggetto applicabile non ha una voce di metadati Cache-Control
, Cloud Storage utilizza il valore predefinito di:
public, max-age=3600
, se l'oggetto non è criptato utilizzando una chiave di crittografia gestita dal cliente o archiviato all'interno di un perimetro di servizio Virtual Private Cloud.no-cache, no-store, max-age=0
, se l'oggetto è criptato utilizzando una chiave di crittografia gestita dal cliente.private, max-age=0
, se l'oggetto è archiviato all'interno di un perimetro di servizio Virtual Private Cloud.no-cache, no-store, max-age=0, must-revalidate
, se l'oggetto è archiviato all'interno di un perimetro di servizio Virtual Private Cloud e criptato tramite una chiave di crittografia gestita dal cliente.
Se consenti la memorizzazione nella cache, i download potrebbero continuare a ricevere versioni precedenti di un oggetto, anche dopo aver caricato una versione più recente. Questo perché la versione precedente rimane "aggiornata" nella cache per un periodo di tempo determinato da max-age
. Inoltre, poiché gli oggetti possono essere memorizzati nella cache in varie posizioni su internet, non c'è modo di forzare la scadenza globale di un oggetto memorizzato nella cache. Se vuoi impedire la pubblicazione di versioni memorizzate nella cache di oggetti leggibili pubblicamente, imposta Cache-Control: no-store
sull'oggetto.
Per ulteriori informazioni sulla memorizzazione nella cache con Cloud Storage e Cloud CDN, consulta Memorizzazione nella cache.
Se hai bisogno di un maggiore controllo sul comportamento della cache, puoi configurare Cloud CDN davanti al tuo bucket.
Trasformazione dei dati
Inoltre, i metadati Cache-Control
ti consentono di pubblicare oggetti man mano che vengono archiviati,
senza applicare alcuna trasformazione ai dati, come la rimozione della codifica
dei contenuti gzip per client non compatibili. Per pubblicare un oggetto così com'è, imposta Cache-Control:no-transform
.
Content-Disposition
I metadati Content-Disposition
specificano le informazioni di presentazione
dei dati trasmessi. L'impostazione di Content-Disposition
consente di controllare lo stile di presentazione dei contenuti, ad esempio
determinando se un allegato deve essere visualizzato automaticamente o se
è necessario un qualche tipo di azione da parte dell'utente per aprirlo. Consulta la pagina
https://datatracker.ietf.org/doc/html/rfc6266 per la
specifica Content-Disposition
.
Content-Encoding
I metadati Content-Encoding
possono essere utilizzati per indicare che un oggetto è
compresso, mantenendo comunque il valore Content-Type
sottostante dell'oggetto.
Ad esempio, un file di testo compresso con gzip può avere il fatto che
si tratta di un file di testo indicato in Content-Type
e il fatto che sia
compresso con gzip indicato in Content-Encoding
. Devi assicurarti che
i file vengano effettivamente compressi utilizzando il valore Content-Encoding
specificato prima
di caricarli, altrimenti potrebbe verificarsi un comportamento imprevisto durante il tentativo di
scaricare gli oggetti. Per ulteriori informazioni, consulta la pagina Transcodifica.
Per i contenuti comprimibili, come il testo, l'utilizzo di Content-Encoding: gzip
consente di ridurre i costi di rete e di archiviazione e migliorare le prestazioni di distribuzione dei contenuti. Tuttavia, per i contenuti già intrinsecamente compressi, come archivi e molti formati multimediali, l'applicazione di un altro livello di compressione e la marcatura nei metadati Content-Encoding
in genere pregiudica sia le dimensioni che le prestazioni dell'oggetto ed è pertanto da evitare.
Content-Language
I metadati Content-Language
indicano le lingue a cui
è destinato l'oggetto. Fai riferimento ai codici lingua ISO 639-1 per i valori tipici di questi metadati.
Cloud Storage supporta valori Content-Language
di massimo 100 caratteri.
Content-Type
Il metadato più comunemente impostato è Content-Type
(noto anche come tipo multimediale),
che consente ai browser di visualizzare correttamente l'oggetto. Tutti gli oggetti hanno un valore
specificato nei metadati Content-Type
, ma questo valore non deve
corrispondere al tipo sottostante dell'oggetto. Ad esempio, se Content-Type
non è specificato dall'utente che ha caricato il video e non può essere determinato, viene impostato su
application/octet-stream
o application/x-www-form-urlencoded
, a seconda di
come hai caricato l'oggetto. Per un elenco dei tipi di contenuti validi, consulta la pagina Tipi di media IANA.
Ora personalizzata
I metadati Custom-Time
sono la data e l'ora specificate dall'utente, rappresentate nel formato RFC 3339 YYYY-MM-DD'T'HH:MM:SS.SS'Z'
o YYYY-MM-DD'T'HH:MM:SS'Z'
, quando i millisecondi sono zero. Questi metadati vengono in genere impostati per utilizzare la condizione DaysSinceCustomTime
in Gestione del ciclo di vita degli oggetti.
Non puoi rimuovere Custom-Time
dopo averlo impostato su un oggetto. Inoltre, il valore di Custom-Time
non può diminuire. Ciò significa che non puoi impostare Custom-Time
come data/ora precedente a quella di Custom-Time
esistente. Tuttavia, puoi
rimuovere o reimpostare Custom-Time
in modo efficace
riscrivendo l'oggetto.
Blocchi degli oggetti
Utilizza i flag di metadati per applicare blocchi degli oggetti, che impediscono l'eliminazione o la sostituzione degli oggetti. Per ulteriori informazioni, consulta la pagina Blocchi di oggetti.
Configurazione della conservazione
Se presente, la configurazione della conservazione di un oggetto definisce una data e un'ora precedenti le quali l'oggetto non può essere eliminato o sostituito. Per ulteriori informazioni, consulta Blocco della conservazione degli oggetti.
Metadati personalizzati
I metadati personalizzati sono metadati per i quali definisci sia la chiave sia il valore. Per creare metadati personalizzati, devi specificare sia una chiave sia un valore. Dopo aver creato una coppia di metadati personalizzati key:value
, puoi eliminare la chiave o modificare il valore.
I metadati personalizzati sono soggetti a un limite di dimensioni e comportano costi di archiviazione.
La pagina Visualizzazione e modifica dei metadati include informazioni sull'impostazione dei metadati personalizzati.
Il prefisso x-goog-meta-
L'API XML imposta e recupera i metadati degli oggetti utilizzando le intestazioni delle richieste, mentre l'API JSON consente di impostare metadati personalizzati nella richiesta finale di un caricamento ripristinabile utilizzando le intestazioni delle richieste. Per distinguere chiaramente le intestazioni dei metadati personalizzate da quelle delle richieste standard, entrambe le API antepongono il prefisso x-goog-meta-
a queste intestazioni di metadati personalizzate.
Metadati non modificabili
Alcuni metadati non possono essere modificati direttamente. Questi metadati vengono impostati al momento della creazione o della riscrittura dell'oggetto. Durante la creazione o la riscrittura dell'oggetto, puoi impostare alcuni metadati di questo tipo, ad esempio la classe di archiviazione dell'oggetto o le chiavi di crittografia gestite dal cliente. Altri metadati vengono aggiunti automaticamente e possono essere visualizzati solo, come il numero di generazione dell'oggetto o l'ora di creazione.
Numeri di generazione e metagenerazione
Ogni oggetto Cloud Storage include una proprietà generation
numerica e una proprietà metageneration
numerica che identifica in modo univoco l'oggetto:
Proprietà | Descrizione |
---|---|
generation |
Identifica la versione di un oggetto ed esiste per tutti gli oggetti, a prescindere dal fatto che un bucket utilizzi il controllo delle versioni degli oggetti.
|
metageneration |
Identifica la versione dei metadati e aumenta ogni volta che i metadati di un determinato generation vengono aggiornati.
|
Le proprietà generation
e metageneration
vengono utilizzate nelle seguenti
circostanze:
Quando utilizzi le condizioni preliminari nelle richieste: se la condizione preliminare non è soddisfatta, la richiesta non riesce. Se non avviene in questo modo, la richiesta non può essere applicata a una versione imprevista di un oggetto, come il recupero dei dati dell'oggetto errati o la modifica dello stato errato dei metadati di un oggetto.
Quando elenchi, accedi, ripristina ed elimini le versioni non correnti degli oggetti: Le versioni non correnti degli oggetti sono pertinenti in modo specifico nei bucket che utilizzano o il controllo delle versioni degli oggetti utilizzato in precedenza.
Ora di modifica
Come parte dei metadati, ogni oggetto Cloud Storage include una proprietà updated
che indica l'ultima volta che i metadati dell'oggetto sono stati modificati. L'ora
updated
è inizialmente impostata sulla data e l'ora di creazione dell'oggetto, per poi cambiare
ogni volta che vengono modificati i metadati dell'oggetto. Ciò include le modifiche apportate da un richiedente, ad esempio la modifica dei metadati personalizzati, nonché le modifiche apportate da Cloud Storage per conto di un richiedente, come la modifica della classe di archiviazione in base a una configurazione del ciclo di vita dell'oggetto.
Passaggi successivi
- Visualizza e modifica i metadati degli oggetti.
- Scopri di più sulle classi di archiviazione disponibili.
- Per una descrizione dettagliata di tutti i campi dei metadati degli oggetti disponibili nell'API JSON, consulta la documentazione di riferimento degli oggetti per JSON.
- Scopri di più sui report sull'inventario di Storage Insights, che consentono di ottenere i metadati per tutti gli oggetti in un bucket contemporaneamente.