Coerenza

Questa pagina spiega quali operazioni di Cloud Storage sono a elevata coerenza che alla fine sono coerenti. Nel caso dei contenuti memorizzabili nella cache, leggibili pubblicamente controllare il grado di efficienza delle operazioni sugli oggetti coerente.

Operazioni a elevata coerenza

Cloud Storage offre un'elevata coerenza globale per operations:

  • Read-after-write
  • Read-after-metadata-update
  • Read-after-delete
  • Elenco dei bucket
  • Elenco degli oggetti

Quando scrivi un oggetto in Cloud Storage, ad esempio quando lo carichi, scrivere o copiare un oggetto, quest'ultimo è immediatamente disponibile per la lettura e operazioni sui metadati non appena ricevi una risposta positiva alla tua scrittura richiesta. Questo vale per tutti i bucket e per tutte le classi di archiviazione. questo vale sia per la creazione di nuovi oggetti sia per la sostituzione di oggetti esistenti.

Poiché le scritture sono a elevata coerenza, non riceverai mai un 404 Not Found o dati inattivi per un evento read-after-write o read-after-metadata-update anche per i bucket situati in due o più regioni. Nel il raro evento in cui i tuoi dati non sono ancora stati replicati tra regioni ma la posizione in cui è stato scritto per la prima volta non è più disponibile, per accedere all'oggetto restituisce una risposta di errore 500 riprovabile.

La coerenza globale elevata si estende anche alle operazioni di eliminazione degli oggetti. Se la richiesta di eliminazione ha esito positivo, un tentativo immediato di scaricare l'oggetto o nei metadati viene restituito il codice di stato 404 Not Found. Ricevi l'errore 404 perché l'oggetto non esiste più dopo la riuscita dell'eliminazione.

L'elenco dei bucket e degli oggetti sono a elevata coerenza: quando crei un bucket o oggetto ed eseguire immediatamente l'operazione list pertinente, il bucket o l'oggetto appena creato compare nell'elenco restituito.

Per i bucket, mentre gli aggiornamenti dei metadati sono a elevata coerenza operazioni read-after-metadata-update, le modifiche alla configurazione risultanti la propagazione richiede del tempo. Ad esempio, se abiliti il controllo delle versioni degli oggetti su una devi attendere almeno 30 secondi prima di eliminarlo o sostituirlo di oggetti strutturati.

Analogamente, per le chiavi HMAC, c'è un ritardo massimo di 3 minuti tra quando richiedi di modificare lo stato della chiave e quando la modifica dello stato viene applicata. Ad esempio, se disabiliti una chiave HMAC, devi attendere almeno tre minuti prima di effettuare una richiesta di eliminazione della chiave, perché tenta di farlo i primi 3 minuti potrebbero non andare a buon fine.

Operazioni a coerenza finale

Le seguenti operazioni sono coerenti alla fine:

  • Concessione dell'accesso alle risorse o revoca dell'accesso.

L'applicazione di queste operazioni richiede in genere circa un minuto. In alcuni potrebbe richiedere diversi minuti in più.

Come esempio di comportamento che può derivare dalla coerenza finale, se rimuovi l'accesso di un utente a un bucket, questa modifica si riflette immediatamente metadati per il bucket; ma l'utente potrebbe avere ancora accesso al bucket per un breve periodo di tempo.

Controllo e coerenza della cache

Gli oggetti memorizzati nella cache leggibili pubblicamente potrebbero non mostrare un'elevata coerenza. Se si consente di memorizzare un oggetto nella cache e l'oggetto si trova nella cache quando viene aggiornato o eliminato, l'oggetto memorizzato nella cache non viene aggiornato o eliminato fino per tutta la durata della cache.

La durata della cache di un oggetto è definita dai metadati Cache-Control associate all'oggetto. I metadati Cache-Control possono essere impostati utilizzando un Intestazione della richiesta Cache-Control inclusa nel caricamento iniziale dell'oggetto, o in un aggiornamento successivo dei metadati dell'oggetto. Perché controlli i metadati Cache-Control, controlli anche la misura in cui sono coerenti. Inoltre, anche se le richieste di l'oggetto può includere la propria intestazione Cache-Control, queste intestazioni sono ignorati da Cloud Storage se sono impostati per evitare i contenuti memorizzati nella cache.

Operazioni atomiche

Cloud Storage offre garanzie di atomicità per la maggior parte delle operazioni che coinvolgono singoli oggetti, come il caricamento di un oggetto, l'aggiornamento metadati ed eliminazione di un oggetto. Operazioni che coinvolgono più oggetti contemporaneamente, come copiare o rinominare più oggetti, non sono atomici.

Passaggi successivi