Questa pagina descrive Anywhere Cache, una funzionalità che fornisce una cache di lettura zonale basata su SSD per i bucket Cloud Storage. Anywhere Cache offre capacità di cache on demand dimensionando automaticamente la cache e la larghezza di banda disponibile in base alle tue esigenze. Grazie ai suoi vantaggi, Anywhere Cache è particolarmente utile per ridurre i costi di rete associati ai carichi di lavoro con molte operazioni di lettura.
Consulta Creare e gestire le cache per scoprire come creare e gestire le cache in Anywhere Cache.
Panoramica
Anywhere Cache ti consente di creare cache nella stessa zona dei tuoi workload. Quando crei una cache in una zona, le richieste di lettura dei dati provenienti dalla zona vengono elaborate dalla cache anziché dal bucket. Ogni cache serve i client all'interno della stessa zona della cache. I dati verranno inseriti nella cache dal bucket solo quando vengono letti da una VM che si trova nella stessa zona della cache. I metadati non vengono memorizzati nella cache e le richieste di metadati degli oggetti vengono elaborate dal bucket anziché dalla cache.
Quando crei una cache per un bucket, questa deve essere creata in una zona all'interno della località del bucket. Ad esempio, se il tuo bucket si trova
nella regione us-east1
, puoi creare una cache in us-east1-b
, ma non
in us-centra1-c
. Se il bucket si trova nella doppia regione ASIA
, puoi creare una cache in qualsiasi zona che compone le regioni asia-east1
e asia-southeast1
. Per un elenco delle zone, consulta Regioni e zone nella documentazione di Compute Engine.
Per ogni bucket, puoi creare una cache per zona. Ad esempio, se il tuo bucket
si trova nella multiregione US
e le tue VM Compute Engine sono in esecuzione nelle zone
us-east1-b
e us-central1-a
, potresti creare una cache in
us-east1-b
e un'altra cache in us-central1-a
.
Anywhere Cache è un servizio completamente gestito e restituisce sempre dati coerenti.
Per i prezzi dell'utilizzo di Anywhere Cache, consulta la pagina Prezzi di Anywhere Cache.
Vantaggi
Quando memorizzi nella cache i dati con Anywhere Cache, ottieni i seguenti vantaggi:
Accedi più rapidamente ai dati: Anywhere Cache colloca i dati nella stessa zona delle risorse di computing ed è completamente supportata da SSD. Ciò consente ai tuoi workload di ottenere fino a 2,5 TB/s di velocità effettiva e riduce la latenza per letture più veloci.
Evita le tariffe per il trasferimento di dati multiregionale: poiché i dati vengono pubblicati dalla cache, puoi utilizzare Anywhere Cache per evitare le tariffe per il trasferimento di dati associate alla lettura dei dati dai bucket multiregionali.
Evita le tariffe di recupero: le tariffe di recupero per i bucket in Nearline Storage, Coldline Storage e Archive Storage non si applicano alle letture dei dati dalla cache.
Accumula costi inferiori per le operazioni di lettura: le operazioni di lettura pubblicate dalla cache ovunque hanno un prezzo inferiore rispetto alle operazioni di classe B pubblicate da un bucket in Standard Storage.
Scalare automaticamente le dimensioni della cache: la memorizzazione nella cache SSD dinamica di Anywhere Cache viene scalata automaticamente in base all'utilizzo senza che tu debba specificare una dimensione della cache.
Utilizza le cache in modo efficiente: Anywhere Cache può essere abilitata sui bucket esistenti senza richiedere modifiche alle applicazioni o alle API esistenti. I dati archiviati in Anywhere Cache sono a elevata coerenza.
Per i dettagli sui prezzi, consulta Prezzi di Anywhere Cache. Per informazioni sulle quote, consulta Quote di Anywhere Cache.
Quando dovresti utilizzare Anywhere Cache?
Anywhere Cache è ideale per memorizzare nella cache i dati modificati raramente e letti di frequente, ad esempio i dati utilizzati per addestrare modelli di ML o eseguire carichi di lavoro di analisi.
Supponiamo che tu stia addestrando un modello di AI su molti nodi Google Kubernetes Engine, che leggono ripetutamente i dati archiviati nei bucket Cloud Storage e vengono eseguiti nella stessa zona. Quando crei una cache nella zona in cui viene eseguito il tuo workload, la cache fornisce larghezza di banda aggiuntiva e ti aiuta a evitare le commissioni di trasferimento di dati associate alla lettura dei dati nei bucket multiregionali, consentendoti di eseguire workload più grandi e scalati in modo più efficiente.
Località supportate
Le cache possono essere create in zone specifiche a condizione che sia disponibile capacità. Se la capacità di creare una cache non è disponibile, il servizio Anywhere Cache continua a tentare di creare una cache finché la capacità non diventa disponibile o il processo di creazione non viene interrotto dall'utente. La capacità potrebbe rimanere non disponibile per un lungo periodo di tempo.
Per ogni bucket, puoi creare al massimo una cache per zona. Ad esempio,
se un bucket si trova nella regione us-east1
, puoi creare una cache in
us-east1-b
e un'altra cache in us-east1-c
. Se un bucket si trova in una
multiregione che comprende us-central1
e us-east1
, puoi creare
una cache in us-central1-a
e un'altra cache in us-east1-b
.
Puoi utilizzare Anywhere Cache nelle seguenti zone. Queste zone possono essere utilizzate a seconda del tipo di località del bucket.
Area geografica | Località | ||||
---|---|---|---|---|---|
Nome zona | Regione | Doppia regione | Più regioni | Doppia regione personalizzata | |
Asia | |||||
asia-east1-a |
|||||
asia-east1-b |
|||||
asia-east1-c |
|||||
asia-northeast1-a |
|||||
asia-northeast1-b |
|||||
asia-northeast1-c |
|||||
asia-southeast1-a |
|||||
asia-southeast1-b |
|||||
asia-southeast1-c |
|||||
Europa | |||||
europe-north1-a |
|||||
europe-north1-b |
|||||
europe-north1-c |
|||||
europe-west1-b |
|||||
europe-west1-c |
|||||
europe-west1-d |
|||||
europe-west4-a |
|||||
europe-west4-b |
|||||
europe-west4-c |
|||||
europe-west6-a |
|||||
europe-west6-b |
|||||
Stati Uniti | |||||
us-central1-a |
|||||
us-central1-b |
|||||
us-central1-c |
|||||
us-central1-f |
|||||
us-east1-a |
|||||
us-east1-b |
|||||
us-east1-c |
|||||
us-east1-d |
|||||
us-east4-a |
|||||
us-east4-b |
|||||
us-east4-c |
|||||
us-east5-a |
|||||
us-east5-b |
|||||
us-east5-c |
|||||
us-south1-a |
|||||
us-south1-b |
|||||
us-south1-c |
|||||
us-west1-a |
|||||
us-west1-b |
|||||
us-west1-c |
|||||
us-west3-a |
|||||
us-west3-b |
|||||
us-west3-c |
|||||
us-west4-a |
|||||
us-west4-b |
|||||
us-west4-c |
Anywhere Cache Recommender
Il sistema di suggerimenti di Anywhere Cache fornisce consigli e approfondimenti per creare cache in coppie zona-bucket analizzando l'utilizzo e l'archiviazione dei dati. Per informazioni generali e istruzioni sull'utilizzo del motore per suggerimenti di Anywhere Cache, consulta Motore per suggerimenti di Anywhere Cache.
Operazioni della cache
Questa sezione descrive le operazioni che puoi eseguire sulle cache Anywhere Cache. Alcune operazioni sono asincrone e restituiscono un'operazione a lunga esecuzione, mentre altre sono sincrone, in cui le operazioni vengono eseguite immediatamente e restituiscono una risorsa AnywhereCache.
Creare una cache
Quando crei una cache, puoi configurare le seguenti proprietà:
La durata (TTL) è il periodo di tempo più lungo in cui un blocco di dati rimarrà nella cache dall'ultima lettura. Ad esempio, se il TTL è impostato su 24 ore, un blocco di dati letto l'ultima volta alle 11:00 di lunedì senza letture successive verrà rimosso dalla cache alle 11:00 di martedì.
Puoi impostare un TTL compreso tra 1 ora e 7 giorni. Se non specificato, il TTL è impostato su 24 ore.
Il criterio di ammissione determina se la cache importa i dati al primo o al secondo mancato accesso. L'importazione al secondo mancato accesso consente di importare i dati nella cache solo quando vengono letti una seconda volta entro il TTL specificato. L'importazione al secondo mancato accesso ti consente di ridurre il costo dell'utilizzo della cache Anywhere assicurandoti di memorizzare nella cache solo gli oggetti letti più di una volta, ma riduce anche il tasso di successo della cache.
Se non specificata, la norma di ammissione prevede l'inserimento al primo errore.
Quando crei una cache, questa entra nello stato CREAZIONE IN CORSO durante la creazione e nello stato IN ESECUZIONE quando diventa attiva. L'operazione di creazione della cache può richiedere fino a 48 ore, dopodiché scade.
L'API AnywhereCaches Create è asincrona. Un'operazione di creazione fa sì che venga restituita un'operazione a lunga esecuzione. L'operazione a lunga esecuzione fornisce uno stato dell'operazione di creazione e ti consente di annullarla prima che venga completata.
Aggiornare una cache
Puoi aggiornare il TTL o la policy di ammissione di una cache in stato IN ESECUZIONE. Quando una cache è in fase di aggiornamento, il campo pending_update
viene valutato come true
. Mentre il campo pending_update
restituisce true
,
la cache non può essere aggiornata di nuovo.
Una cache in stato CREAZIONE IN CORSO, IN PAUSA o DISABILITATA non può essere aggiornata. L'API AnywhereCaches Update è asincrona e restituisce un'operazione a lunga esecuzione.
Al termine dell'aggiornamento del TTL di una cache, il nuovo TTL viene applicato immediatamente ai dati appena importati e ai dati esistenti solo quando vengono letti. Ciò significa che i dati esistenti all'interno della cache mantengono il vecchio TTL finché non vengono letti o rimossi a causa della scadenza del TTL.
Ottenere una cache
Quando recuperi una cache, Anywhere Cache restituisce lo stato e la configurazione dell'istanza di cache. L'API AnywhereCaches Get è sincrona e restituisce una risorsa AnywhereCache.
Elenca cache
Puoi restituire un elenco di cache associate per un determinato bucket. L'API AnywhereCaches List è sincrona e supporta la paginazione.
Mettere in pausa una cache
Puoi mettere in pausa una cache per interrompere l'importazione dati di una cache nello stato IN ESECUZIONE. Quando una cache è in stato PAUSED, puoi comunque leggere i dati esistenti dalla cache, ma non puoi importare nuovi dati nella cache. La lettura dei dati esistenti dalla cache reimposta il TTL dei dati nella cache.
Quando riprendi una cache nello stato PAUSED, la cache entra nello stato RUNNING.
L'API AnywhereCaches Pause è sincrona e restituisce una risorsa AnywhereCache.
Riprendere una cache
Puoi riprendere le cache che si trovano nello stato IN PAUSA o DISABILITATO, a condizione che la cache disabilitata rientri nel periodo di tolleranza di 1 ora. Dopo il periodo di tolleranza di un'ora, l'operazione di ripristino viene eseguita al meglio delle possibilità, poiché la cache potrebbe essere eliminata in qualsiasi momento dopo il periodo di tolleranza. Una volta ripristinata, la cache entra nello stato RUNNING.
L'API AnywhereCaches Resume è sincrona e restituisce una risorsa AnywhereCache.
Disattivare una cache
Puoi disattivare una cache per rimuoverla definitivamente dalla configurazione del bucket. Quando disabiliti una cache, questa entra nello stato DISABILITATA. Durante questo stato, puoi comunque leggere i dati esistenti dalla cache, ma non puoi inserire nuovi dati nella cache.
Dopo aver disattivato una cache, hai un periodo di tolleranza di 1 ora durante il quale puoi annullare la disattivazione riattivando la cache. Trascorso questo periodo di tolleranza di un'ora, la cache viene eliminata. Quando la cache viene eliminata, tutti i dati al suo interno vengono rimossi e la cache viene eliminata dal bucket.
Durante il periodo di un'ora prima dell'eliminazione della cache, puoi ripristinare lo stato DISABLED riprendendo la cache, che riprenderà nello stato RUNNING.
L'API AnywhereCaches Disable è sincrona e restituisce una risorsa AnywhereCache.
Scalabilità automatica del limite di larghezza di banda e dimensioni della cache
Anywhere Cache fornisce spazio di archiviazione della cache temporaneo e larghezza di banda scalabili in base alle tue esigenze. Per saperne di più sui limiti di dimensioni e larghezza di banda per Anywhere Cache, consulta Quote e limiti di Cloud Storage.
Controlli dei costi
Di seguito sono riportati alcuni suggerimenti che puoi utilizzare per ridurre al minimo i costi di gestione di una cache:
Selezione del bucket: devi creare cache solo per i bucket che contengono i dati che vuoi memorizzare nella cache.
Selezione della zona: devi creare cache solo nelle zone in cui il tuo workload trarrà vantaggio dalla memorizzazione nella cache.
Inserimento alla seconda lettura: puoi specificare che i dati vengano inseriti solo alla seconda lettura anziché alla prima, il che contribuisce a garantire che la cache memorizzi solo i dati letti più di una volta.
Impostazione TTL: devi specificare il TTL minimo necessario per archiviare i dati nella cache. Il TTL può essere modificato senza interruzioni.
Mettere in pausa la cache: puoi mettere in pausa una cache per interrompere l'importazione dati e le relative tariffe di importazione della cache. La sospensione della cache ha effetto immediato. Puoi mettere in pausa una cache finché tutti i dati non vengono eliminati dopo la fine del TTL specificato. Quando tutti i dati vengono eliminati, non ti vengono più addebitati costi di archiviazione dei dati.
Disattivazione della cache: puoi disattivare una cache per rimuoverla definitivamente dal servizio e interrompere l'accumulo di tutte le tariffe della cache associate.
Limitazioni e restrizioni
Non puoi eliminare un bucket finché non sono state eliminate tutte le cache associate.
Quando esegui le operazioni di creazione, disattivazione, sospensione, ripresa o aggiornamento della cache, limita la frequenza delle operazioni a non più di una operazione al secondo. L'esecuzione di più di un'operazione al secondo può causare errori.
La cache Anywhere non è un'archiviazione durevole e i dati potrebbero essere rimossi dalla cache in vari scenari. Uno scenario si verifica quando la cache viene ridimensionata automaticamente per garantire che siano disponibili risorse sufficienti per i tuoi workload. In questo scenario, alcuni dati potrebbero essere eliminati in base a un algoritmo LRU (Least Recently Used) finché il servizio Anywhere Cache non avrà terminato di aumentare le dimensioni della cache.
In ogni caso, i tuoi dati rimangono archiviati in sicurezza nel bucket di origine. Quando i dati vengono eliminati dalla cache per motivi diversi dalla scadenza del TTL, il servizio Anywhere Cache tenterà di re-inserire i dati nella cache in modo trasparente e senza costi per te. Se i dati non possono essere re-ingested in modo trasparente o sono stati eliminati a causa della scadenza del TTL, il servizio Anywhere Cache li re-ingested alla prima o alla seconda lettura.
Anywhere Cache non può essere utilizzato per pubblicare dati per le richieste di lettura degli oggetti emesse da BigQuery. Quando utilizzi BigQuery per eseguire query sui dati in un bucket Cloud Storage come tabella esterna, i dati vengono pubblicati dal bucket e non vengono inseriti nella cache, anche se la cache è abilitata per il bucket.
I suggerimenti e gli approfondimenti generati dal sistema di suggerimenti della cache Anywhere non possono essere letti utilizzando BigQuery.
Risoluzione dei problemi relativi alla carenza temporanea di risorse
Le sezioni seguenti descrivono come risolvere i problemi quando si verifica una carenza temporanea di risorse, ovvero quando non è disponibile capacità SSD o capacità di pubblicazione sufficiente in una zona specificata per creare una cache, aumentare le dimensioni di una cache o aumentare il limite di larghezza di banda di una cache.
Impossibile creare una nuova cache
Anywhere Cache potrebbe non riuscire a creare una nuova cache in una zona specifica a causa di una mancanza di capacità SSD o di risorse di servizio di throughput, il che comporta una carenza temporanea di risorse. Durante questo periodo di tempo, Anywhere Cache tenta di creare la nuova cache per un massimo di 48 ore. Se le risorse diventano disponibili entro il periodo di 48 ore, Anywhere Cache completa correttamente la richiesta di creazione della cache. Se le risorse non diventano disponibili entro 48 ore, la richiesta di creazione della cache non va a buon fine.
Come risolvere il problema: per evitare interruzioni della memorizzazione nella cache, puoi annullare manualmente l'operazione di creazione della cache e crearne una nuova in una zona diversa che potrebbe avere capacità disponibile. Per monitorare o annullare un'operazione di creazione della cache, consulta Utilizzo di operazioni a lunga esecuzione.
Impossibilità di aumentare le dimensioni della cache
Anywhere Cache potrebbe non riuscire ad aumentare le dimensioni di una cache quando la quantità di capacità SSD richiesta non è disponibile nella zona della cache.
Sebbene Anywhere Cache offra aumenti automatici delle dimensioni della cache on demand, questi aumenti dipendono dalla disponibilità della capacità SSD. Se la capacità SSD non è disponibile quando viene effettuata la richiesta di aumento automatico delle dimensioni della cache, Anywhere Cache continua a inviare la richiesta finché non termina la carenza temporanea di risorse o non è più necessario un aumento delle dimensioni della cache.
Durante una carenza temporanea di risorse, i nuovi dati vengono inseriti e quelli esistenti nella cache vengono eliminati in base all'utilizzo meno recente. Le cache sufficientemente grandi da archiviare la maggior parte dei dati attivi hanno un impatto minimo o nullo sulle metriche della cache. Le cache con una capacità inferiore alla quantità di dati attivi possono eliminare i dati e reingerirli più spesso rispetto alle cache non interessate da carenze di risorse. Quando le dimensioni effettive della cache sono molto inferiori alla capacità necessaria, potresti riscontrare il seguente comportamento correlato alla carenza di risorse:
- Un limite di larghezza di banda della cache inferiore, una velocità effettiva della cache inferiore, un consumo della quota di larghezza di banda per il trasferimento dei dati superiore e un possibile impatto su altre metriche
- La fatturazione potrebbe essere interessata nei seguenti modi:
- Aumento dei costi dovuto alla tariffa di importazione della cache
- Costi ridotti della tariffa di archiviazione nella cache
- Costi ridotti della tariffa per il trasferimento di dati in uscita dalla cache
- Costi ridotti per le commissioni di trasferimento dei dati della cache
- Aumento dei costi dovuto alla commissione per il trasferimento di dati tra regioni
- Aumento dei costi derivante dall'utilizzo di operazioni di classe B
Per informazioni su queste tariffe, consulta Prezzi di Anywhere Cache.
Come risolvere i problemi: per ottenere risultati ottimali durante una carenza temporanea di risorse, ti consigliamo di monitorare le cache e mettere in pausa quelle non necessarie o i carichi di lavoro in base alle tue esigenze.
Impossibilità di aumentare il limite di larghezza di banda di una cache
Una carenza temporanea del limite di larghezza di banda della cache può verificarsi durante un aumento delle dimensioni della cache quando le risorse di servizio del throughput in una zona specifica non sono sufficienti per scalare il limite di larghezza di banda della cache delle cache esistenti a 20 Gbps per TiB. In caso di carenza di larghezza di banda della cache, Anywhere Cache non consente di scalare il limite di larghezza di banda della cache a 20 Gbps per TiB di dati, ma la cache continua a gestire le richieste di lettura. Le richieste di aumento del limite di larghezza di banda della cache vengono valutate singolarmente. In caso di carenza di larghezza di banda della cache disponibile, potresti notare un aumento del consumo di larghezza di banda di uscita dei dati del bucket.
Come risolvere i problemi: per ottenere risultati ottimali durante una carenza temporanea di risorse, ti consigliamo di monitorare le cache e mettere in pausa quelle non necessarie o i carichi di lavoro in base alle tue esigenze.