Metadati degli oggetti

Gestisci

Questa pagina illustra i campi dei metadati di uso comune che vengono 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 in che modo deve essere gestito quando viene eseguito l'accesso. 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 possono essere modificati in qualsiasi momento, alcuni possono essere impostati solo al momento della creazione dell'oggetto e altri possono essere solo visualizzati. 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 le cui chiavi sono impostate, ma per i quali puoi specificare un valore.

  • Metadati personalizzati: i metadati che aggiungi specificando sia una chiave sia 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 del controllo dell'accesso

Cloud Storage utilizza Identity and Access Management (IAM) e Elenchi di controllo dell'accesso (ACL) per controllare l'accesso agli oggetti. Utilizza 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 della modalità di pubblicazione dei dati da Cloud Storage: se i dati possono essere memorizzati nella cache e se possono essere trasformati.

Memorizzazione nella cache dei dati

I metadati Cache-Control ti consentono di decidere se e per quanto tempo memorizzare le cache possono memorizzare nella cache gli oggetti, che possono essere pubblicati per soddisfare le esigenze future richieste. Le cache possono includere browser e cache Internet, nonché Memorizzazione nella cache integrata di Cloud Storage.

Se un oggetto applicabile non ha una voce di metadati Cache-Control, Cloud Storage utilizza il valore predefinito di:

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é queste versioni precedenti rimangono "aggiornate" nelle cache per un periodo di tempo determinato da 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. Questo significa che se revochi l'accesso pubblico a un oggetto, quest'ultimo può comunque essere fornito da una cache, a seconda di quando è stato eseguito l'ultimo accesso e Impostazione Cache-Control. Ad esempio, se l'oggetto è stato pubblicato con una Cache-Control di public, max-age=3600, può rimanere in una cache per un ora. Se vuoi impedire la pubblicazione di versioni memorizzate nella cache di versioni leggibili pubblicamente imposta Cache-Control: no-store sull'oggetto.

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 gli oggetti così come sono archiviati, senza applicare trasformazioni ai dati, ad esempio rimuovere la codifica del contenuto gzip per i 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. L'impostazione Content-Disposition consente di controllare lo stile di presentazione dei contenuti, ad esempio determinare se un allegato deve essere visualizzato automaticamente o se è necessaria qualche forma di azione da parte dell'utente per aprirlo. 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. Prima di caricarli, devi assicurarti che i file siano effettivamente compressi utilizzando il Content-Encoding specificato, altrimenti potrebbero verificarsi comportamenti imprevisti 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 risparmiare sui costi di rete e di archiviazione e di migliorare le prestazioni di pubblicazione dei contenuti. Tuttavia, per i contenuti già compressi per impostazione predefinita, come gli archivi e molti formati multimediali, l'applicazione di un altro livello di compressione e il relativo inserimento nei metadati Content-Encoding è in genere dannosa sia per le dimensioni dell'oggetto sia per il rendimento e deve essere evitata.

Content-Language

I metadati Content-Language indicano le lingue che 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 con una lunghezza massima di 100 caratteri.

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 l'oggetto e non può essere determinato, viene impostato su application/octet-stream o application/x-www-form-urlencoded, a seconda del modo in cui è stato caricato l'oggetto. Per un elenco dei tipi di contenuti validi, consulta IANA Media Type (Tipi di media IANA).

Custom-Time

I metadati Custom-Time sono una data e un'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 pari a 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 una volta impostato su un oggetto. Inoltre, il valore di Custom-Time non può diminuire. In altre parole, non puoi impostare Custom-Time su una data/ora precedente a quella esistente di Custom-Time. 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 Archiviazione a fini legali degli oggetti.

Configurazione della conservazione

Se presente, la configurazione della conservazione di un oggetto definisce una data e un'ora prima delle 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, specifica sia una chiave sia 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 le intestazioni dei metadati personalizzati dalle intestazioni delle richieste standard, entrambe le API prefiggono queste intestazioni dei metadati personalizzati con x-goog-meta-.

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, come la classe di archiviazione dell'oggetto o chiavi di crittografia gestite dal cliente. Altri metadati vengono aggiunti automaticamente e possono essere visualizzati, ad esempio il numero di generazione dell'oggetto o l'ora di 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.
  • Il valore generation di una versione dell'oggetto non cambia mai. Un nuovo oggetto con lo stesso nome può sostituire un oggetto esistente, ma al nuovo oggetto è sempre assegnato un generation diverso.
  • Non c'è alcuna garanzia che i numeri di generazione aumentino per le versioni successive, ma solo che ogni nuova versione ha un numero di generazione univoco.
  • Non esiste alcuna relazione tra i numeri di generazione di oggetti non correlati, anche se si trovano nello stesso bucket.
metageneration Identifica la versione dei metadati e aumenta ogni volta che i metadati di un determinato generation vengono aggiornati.
  • metageneration inizia a 1 per ogni nuovo generation di un oggetto.
  • La proprietà metageneration non ha significato senza la proprietà generation e deve essere utilizzata solo insieme a essa; è inutile confrontare le generazioni di metadati di due versioni degli oggetti.

Le proprietà generation e metageneration vengono utilizzate nelle seguenti tipologie circostanze:

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 dei metadati di controllo.

CRC32C

Tutti gli oggetti Cloud Storage hanno un hash CRC32C. Biblioteche per CRC32C include:

di Gemini Advanced.

Il CRC32C con codifica Base64 è in ordine di byte big-endian.

MD5

Gli oggetti Cloud Storage hanno un hash MD5 se soddisfano i seguenti criteri:

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 tramite Google Cloud CLI o tramite l'API Compute Engine. Nella maggior parte dei casi, gli utenti non devono fare supposizioni sul valore utilizzato in un ETag, tranne per il fatto che cambia ogni volta che cambiano i dati o i metadati sottostanti, come indicato nella specifica.

L'intestazione ETag di un oggetto restituisce il valore MD5 dell'oggetto se tutte le seguenti condizioni sono vere:

Ora di modifica

Come parte dei metadati, ogni oggetto Cloud Storage ha una proprietà 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, 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 degli oggetti.

Passaggi successivi