Questa pagina illustra i campi di metadati di uso comune archiviati insieme in Cloud Storage.
Introduzione
Agli oggetti archiviati in Cloud Storage sono associati metadati.
I metadati identificano le proprietà dell'oggetto e specificano il modo in cui
deve essere gestito quando vi si accede. I metadati esistono come key:value
coppie. 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 un oggetto all'altro.
La mutabilità dei metadati varia: alcuni metadati possono essere modificati in qualsiasi momento, altri
metadati che puoi impostare solo al momento della creazione dell'oggetto e alcuni metadati
che puoi solo visualizzare. Ad esempio, puoi modificare il valore dell'attributo Cache-Control
metadati in qualsiasi momento, ma puoi assegnare i metadati storageClass
solo quando
l'oggetto viene creato o riscritto e non puoi modificarne 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 specificare un valore.
Metadati personalizzati: i metadati che aggiungi specificando sia una chiave che un valore associato alla chiave.
Quando modifichi i metadati, in genere dovresti evitare caratteri non ASCII, perché non sono consentite nelle intestazioni HTTP utilizzate dall'API XML.
Metadati a chiave fissa
Puoi modificare i seguenti metadati per gli oggetti, anche se 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 Elenchi di controllo dell'accesso (ACL) per controllare l'accesso agli oggetti. Usa questi link per saperne di più su questi metodi di controllo dell'accesso e sui metadati associati.
Cache-Control
I metadati Cache-Control
possono specificare due aspetti diversi
di come i dati vengono pubblicati 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 decidere se e per quanto tempo
del browser e di internet sono autorizzati a memorizzare nella cache gli oggetti, che a loro volta
per soddisfare richieste future. Solo la rete Cloud Storage
prende in considerazione l'impostazione Cache-Control
di un oggetto 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
, ad esempio:
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 le esigenze future a meno che non venga convalidato prima da Cloud Storage.no-store
: l'oggetto non può essere memorizzato nella cache.max-age=TIME_IN_SECONDS
: la durata di un oggetto possono essere memorizzate nella cache prima che vengano considerate obsolete. Puoi impostaremax-age
su qualsiasi da una parte all'altra. Gli oggetti inattivi non vengono pubblicati dalle cache, ad eccezione di circostanze.
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 un oggetto chiave di crittografia gestita dal cliente o archiviata in una Perimetro di servizio Virtual Private Cloud.no-cache, no-store, max-age=0
, se l'oggetto è criptato tramite un chiave di crittografia gestita dal cliente.private, max-age=0
, se l'oggetto è archiviato all'interno di un oggetto 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 chiave di crittografia gestita dal cliente.
Se consenti la memorizzazione nella cache, i download potrebbero continuare a ricevere versioni precedenti
anche dopo aver caricato una versione più recente. Questo perché la versione precedente
la versione rimane "nuova" nella cache per un periodo di tempo determinato
max-age
. Inoltre, poiché gli oggetti possono essere memorizzati nella cache in vari punti del
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 Cloud CDN, vedi Memorizzazione nella cache.
Per avere un maggiore controllo sul comportamento della cache, puoi configurare Cloud CDN davanti al bucket.
Trasformazione dei dati
I metadati Cache-Control
ti consentono anche di pubblicare oggetti mentre vengono archiviati,
senza applicare alcuna trasformazione ai dati, come la rimozione di gzip
la codifica dei contenuti per client incompatibili. Per pubblicare un oggetto così com'è, imposta
Cache-Control:no-transform
.
Content-Disposition
I metadati Content-Disposition
specificano la presentazione
informazioni sui dati trasmessi. Impostazione di Content-Disposition
ti permette di controllare lo stile di presentazione dei contenuti, ad esempio
determinare se un allegato deve essere visualizzato automaticamente o se
per aprirla deve essere richiesta una qualche forma di azione da parte dell'utente. Consulta
https://datatracker.ietf.org/doc/html/rfc6266 per il
specifica Content-Disposition
.
Content-Encoding
I metadati Content-Encoding
possono essere utilizzati per indicare che un oggetto è
compresso, pur mantenendo 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 del fatto che sia
gzip compresso indicato in Content-Encoding
. Devi assicurarti che
vengono compressi utilizzando il valore Content-Encoding
specificato prima
per poterli caricare, altrimenti potrebbero verificarsi comportamenti imprevisti
per scaricare gli oggetti. Per ulteriori informazioni, consulta la pagina Transcodifica.
Per contenuti comprimibili, come il testo, vengono utilizzati Content-Encoding: gzip
salvataggi
rete e spazio di archiviazione e migliora le prestazioni di distribuzione dei contenuti. Tuttavia,
per i contenuti già intrinsecamente compressi, come archivi e molti
formati multimediali, applicando un ulteriore livello di compressione e contrassegnandolo
I metadati Content-Encoding
di solito danneggiano sia le dimensioni dell'oggetto
le prestazioni e andrebbero evitate.
Content-Language
I metadati Content-Language
indicano le lingue che
a cui è destinato l'oggetto. Consulta i codici lingua ISO 639-1
per i valori tipici di questi metadati.
Cloud Storage supporta valori Content-Language
fino a 100 caratteri
di lunghezza.
Content-Type
I metadati impostati più di frequente sono Content-Type
(noto anche come tipo di media),
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 necessariamente
che corrispondano al tipo sottostante dell'oggetto. Ad esempio, se Content-Type
è
non specificato dall'utente che ha caricato il video e non può essere determinato, è impostato su
application/octet-stream
o application/x-www-form-urlencoded
, a seconda
in che modo hai caricato l'oggetto. Per un elenco dei tipi di contenuti validi, consulta
IANA Media Type (Tipi di media IANA).
Ora personalizzata
I metadati Custom-Time
sono la data e l'ora specificate dall'utente rappresentate in
il formato RFC 3339 YYYY-MM-DD'T'HH:MM:SS.SS'Z'
oppure
YYYY-MM-DD'T'HH:MM:SS'Z'
quando i millisecondi sono zero. Questi metadati sono
in genere viene impostata per utilizzare la condizione DaysSinceCustomTime
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. vale a dire che non puoi impostare
Custom-Time
sia una data/ora precedente a quella di Custom-Time
esistente. Tu
può tuttavia rimuovere o reimpostare Custom-Time
in modo efficace
e riscrivere l'oggetto.
Blocchi degli oggetti
Utilizzare i flag di metadati per posizionare blocchi di oggetti, che impediscono agli oggetti di essere eliminati o sostituiti. 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 in cui non è possibile eliminare o sostituire l'oggetto. Per ulteriori informazioni, vedi Blocco della conservazione degli oggetti.
Metadati personalizzati
I metadati personalizzati sono metadati per i quali definisci sia la chiave sia il valore. A
creare metadati personalizzati, devi specificare una chiave e un valore. Dopo aver ottenuto
ha creato una coppia di metadati personalizzati key:value
, puoi eliminare la chiave o modificare
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 e metadati personalizzati.
Il prefisso x-goog-meta-
L'API XML imposta e recupera i metadati degli oggetti utilizzando le intestazioni delle richieste.
l'API JSON consente di impostare
metadati personalizzati nella richiesta finale di un
caricamento ripristinabile mediante le intestazioni delle richieste. Per distinguere chiaramente
intestazioni di metadati personalizzate da intestazioni di richiesta standard, sia il prefisso delle API come
intestazioni di metadati personalizzate con x-goog-meta-
.
Metadati non modificabili
Alcuni metadati non possono essere modificati direttamente. Questi metadati sono impostati al momento la creazione o la riscrittura degli oggetti. Durante la creazione o la riscrittura dell'oggetto, puoi impostare alcuni metadati di questo tipo, come la classe di archiviazione dell'oggetto o chiavi di crittografia gestite dal cliente. Gli altri metadati vengono automaticamente aggiunti e possono essere solo visualizzati, ad esempio il numero di generazione dell'oggetto al momento della creazione.
Numeri di generazione e metagenerazione
Come parte dei metadati, ogni oggetto Cloud Storage ha un numero
generation
e una proprietà metageneration
numerica che hanno un valore univoco
identifica l'oggetto:
Proprietà | Descrizione |
---|---|
generation |
Identifica la versione di un oggetto ed esiste per ogni oggetto, indipendentemente 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 tipologie
circostanze:
Quando utilizzi le precondizioni nelle richieste: le precondizioni causano la richiesta non sarà completata se la condizione preliminare non è soddisfatta. Se questo non avviene, l'applicazione della richiesta a una versione imprevista di un oggetto, come recuperare i dati errati dell'oggetto o modificare lo stato errato metadati.
Quando elenchi, accedi, ripristina ed elimini le versioni non correnti dell'oggetto: Le versioni degli oggetti non attuali sono pertinenti in modo specifico nei bucket che utilizzano o il controllo delle versioni degli oggetti utilizzato in precedenza.
Checksum
I checksum sono metadati calcolati dai dati dell'oggetto associato. Checksum vengono utilizzati per convalidare il fatto che i dati dell'oggetto non siano danneggiati. Gli oggetti Cloud Storage hanno diversi campi di metadati per il checksum.
CRC32C
Tutti gli oggetti Cloud Storage hanno un hash CRC32C. Biblioteche per CRC32C include:
- CRC32C di Google per C++
- hash/crc32 per Go
- GoogleAPIs Guava per Java
- google-crc32c per Python
- digest-crc in Ruby
Il CRC32C codificato in Base64 è in ordine di byte big-endian.
MD5
Gli oggetti Cloud Storage hanno un hash MD5 se soddisfano i seguenti criteri:
- L'oggetto non è un oggetto composito
- L'oggetto non è stato caricato utilizzando un caricamento multiparte dell'API XML
Questo hash si applica solo a un oggetto completo, quindi non può essere utilizzato per l'integrità controllare i download parziali causati dall'esecuzione di un intervallo GET.
ETags
Tutti gli oggetti Cloud Storage hanno un ETag. Tuttavia, lo stesso oggetto può avere un valore ETag diverso quando viene richiesto dall'API XML rispetto al valore JSON API. Nella maggior parte dei casi, gli utenti non devono fare ipotesi sul valore utilizzato in una l'ETag, tranne che cambia ogni volta che cambiano i dati o i metadati sottostanti. in base alla specifica.
L'intestazione ETag di un oggetto restituisce il valore MD5 dell'oggetto se tutte le seguenti sono vero:
- La richiesta viene effettuata tramite l'API XML
- L'oggetto utilizza solo chiavi di proprietà di Google e gestite da Google per il lato server. crittografia
- L'oggetto non è un oggetto composito e non è stato caricato utilizzando un Caricamento multiparte API XML
Ora di modifica
Come parte dei metadati, ogni oggetto Cloud Storage ha un updated
che indica l'ultima volta che i metadati dell'oggetto sono stati modificati. La
Il tempo di updated
è inizialmente impostato sull'ora di creazione dell'oggetto e poi viene modificato
ogni volta che vengono modificati i metadati dell'oggetto. Sono incluse le modifiche apportate da un
richiedente, come la modifica dei metadati personalizzati e le modifiche apportate
Cloud Storage per conto di un richiedente, ad esempio la modifica dello spazio di archiviazione.
in base a una configurazione del ciclo di vita degli oggetti.
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 di metadati degli oggetti disponibili in API JSON, consulta la documentazione di riferimento degli oggetti per JSON.
- Scopri di più sui report sull'inventario di Storage Insights, che ti consentono di ottenere e i metadati per tutti gli oggetti in un bucket contemporaneamente.