Configurazioni a livello di una o più aree geografiche

Questa pagina descrive le configurazioni delle istanze e i due tipi di configurazioni delle istanze offerte da Spanner: configurazioni a livello di regione e configurazioni per più regioni. Descrive inoltre le differenze e i compromessi tra le configurazioni a livello di una o più regioni.

Configurazioni delle istanze

Una configurazione dell'istanza definisce il posizionamento geografico e la replica dei database in tale istanza. Quando crei un'istanza, devi configurarla come regionale (tutte le risorse sono contenute in una singola regione di Google Cloud) o come più regioni (le risorse coprono più di una regione). Puoi scegliere questa opzione selezionando una configurazione dell'istanza, che determina dove vengono archiviati i tuoi dati per l'istanza.

Le configurazioni di istanze con regioni fisse e topologie di replica sono definite configurazioni delle istanze di base. Puoi creare configurazioni di istanze personalizzate e aggiungere ulteriori repliche facoltative di sola lettura. Non puoi modificare la topologia di replica delle configurazioni delle istanze di base. Per saperne di più, consulta Repliche di sola lettura.

Puoi spostare la tua istanza da qualsiasi configurazione dell'istanza a qualsiasi altra configurazione dell'istanza a una o più regioni (ad esempio da us-centra1 a nam3).Puoi anche creare una nuova configurazione dell'istanza personalizzata con repliche aggiuntive, quindi spostare l'istanza nella nuova configurazione dell'istanza personalizzata. Ad esempio, se l'istanza si trova in us-central1 e vuoi aggiungere una replica di sola lettura us-west1, devi creare una nuova configurazione dell'istanza personalizzata con us-central1 come configurazione di base e aggiungere us-west1 come replica di sola lettura. Quindi, sposta l'istanza in questa nuova configurazione dell'istanza personalizzata.

Configurazioni per singole aree geografiche

I servizi Google Cloud sono disponibili in località in Nord America, Sud America, Europa, Asia e Australia. Se i tuoi utenti e servizi si trovano all'interno di un'unica regione, scegli una configurazione dell'istanza a livello di regione per le operazioni di lettura e scrittura con la latenza più bassa.

Per qualsiasi configurazione a livello di regione di base, Spanner gestisce tre repliche di lettura e scrittura, ciascuna all'interno di una zona di Google Cloud diversa in quella regione. Ogni replica di lettura e scrittura contiene una copia completa del tuo database operativo in grado di gestire le richieste di lettura/scrittura e di sola lettura. Spanner utilizza le repliche in zone diverse in modo che, in caso di errore in una singola zona, il database rimanga disponibile.

Configurazioni disponibili

Spanner offre le seguenti configurazioni di istanza a livello di regione di base:

Nome configurazione di base Descrizione regione Regione facoltativa
Americhe
northamerica-northeast1 Montréal icona foglia A basse emissioni di CO2
northamerica-northeast2 Toronto icona foglia A basse emissioni di CO2
southamerica-east1 San Paolo icona foglia A basse emissioni di CO2
southamerica-west1 Santiago icona foglia A basse emissioni di CO2
us-central1 Iowa icona foglia A basse emissioni di CO2 Sola lettura: asia-northeast1 1-OR
asia-south1 1-OR
europe-west2 1-OR
europe-west9 1-OR
us-east1 Carolina del Sud Sola lettura: us-central1 1-OR
us-west1 1-OR
us-east4 Virginia del Nord
us-east5 Columbus
us-south1 Dallas
us-west1 Oregon icona foglia A basse emissioni di CO2
us-west2 Los Angeles
us-west3 Salt Lake City
us-west4 Las Vegas
Europa
europe-central2 Varsavia
europe-north1 Finlandia icona foglia A basse emissioni di CO2
europe-southwest1 Madrid
europe-west1 Belgio icona foglia A basse emissioni di CO2 Sola lettura: us-central1 1-OR
us-west1 1-OR
europe-west2 Londra icona foglia A basse emissioni di CO2
europe-west3 Francoforte icona foglia A basse emissioni di CO2
europe-west4 Paesi Bassi
europe-west6 Zurigo icona foglia A basse emissioni di CO2
europe-west8 Milano
europe-west9 Parigi icona foglia A basse emissioni di CO2
europe-west10 Berlino
europe-west12 Torino
Asia Pacifico
asia-east1 Taiwan
asia-east2 Hong Kong
asia-northeast1 Tokyo
asia-northeast2 Osaka
asia-northeast3 Seul
asia-south1 Mumbai
asia-south2 Delhi
asia-southeast1 Singapore
asia-southeast2 Giacarta
australia-southeast1 Sydney
australia-southeast2 Melbourne
Medio Oriente
me-central1 Doha
me-central2 Dammam
me-west1 Tel Aviv
Africa
africa-south1 Johannesburg

Replica

Le configurazioni a livello di regione di base contengono tre repliche di lettura e scrittura. Ogni mutazione di Spanner richiede un quorum di scrittura composto dalla maggior parte delle repliche di voto. I quorum di scrittura sono formati da due delle tre repliche nelle configurazioni regionali. Per ulteriori informazioni sulle regioni leader e sulle repliche di voto, consulta Replica.

Puoi creare una configurazione personalizzata dell'istanza regionale e aggiungere repliche facoltative di sola lettura. Le repliche di sola lettura possono aiutare a scalare le letture e supportare le letture inattive a bassa latenza. Queste repliche di sola lettura non prendono parte ai quorum di scrittura e non influiscono sullo SLA (accordo sul livello del servizio) >= 99, 99% di Spanner per le istanze a livello di regione. Puoi aggiungere località elencate nella colonna Regione facoltativa come repliche facoltative di sola lettura. Se non vedi la località che hai scelto per la replica di sola lettura, puoi richiedere una nuova regione facoltativa per la replica di sola lettura. Per saperne di più, consulta Repliche di sola lettura.

Best practice per le prestazioni delle configurazioni a livello di regione

Per un rendimento ottimale, segui queste best practice:

Configurazioni per più aree geografiche

Le configurazioni regionali di Spanner replicano i dati tra più zone all'interno di una singola regione. Tuttavia, una configurazione a livello di regione potrebbe non essere ottimale se:

  • Spesso la tua applicazione deve leggere i dati da più posizioni geografiche (ad esempio per fornire dati agli utenti sia in Nord America che in Asia).
  • Le scritture provengono da una posizione diversa rispetto alle letture (ad esempio, se hai carichi di lavoro di scrittura di grandi dimensioni in Nord America e carichi di lavoro di lettura di grandi dimensioni in Europa).

Le configurazioni per più regioni possono:

  • Operazioni di scrittura da più regioni.
  • Mantieni la disponibilità in caso di errori a livello di regione.
  • Offri una disponibilità più elevata e SLA (accordi sul livello del servizio) rispetto alle configurazioni a livello di regione.

Le configurazioni multiregionali consentono di replicare i dati del database in più zone su più regioni, come definito dalla configurazione dell'istanza. Queste repliche aggiuntive ti consentono di leggere i dati con latenza inferiore da più località vicine o all'interno delle regioni nella configurazione.

Esistono però dei compromessi, perché in una configurazione per più regioni, le repliche del quorum (lettura-scrittura) sono distribuite in più di una regione. Potresti notare una maggiore latenza di rete quando queste repliche comunicano tra loro per formare un quorum di scrittura. Le letture non richiedono un quorum. Il risultato è che l'applicazione raggiunge letture più rapide in più posizioni, con un piccolo aumento della latenza di scrittura. Per maggiori informazioni, consulta Il ruolo delle repliche nelle operazioni di scrittura e lettura.

Configurazioni disponibili

Spanner offre le seguenti configurazioni di istanze multiregionali di base:

Un continente

Nome configurazione di base Località Regioni di lettura/scrittura Regioni di sola lettura Regione testimone Regione facoltativa
asia1 Asia Tokyo: asia-northeast1 L,2R
Osaka: asia-northeast2 2R
Nessuna Seul: asia-northeast3 Sola lettura: us-west1 1-OR
us-east5 1-OR
asia2 R Asia Mumbai: asia-south1 L,2R
Delhi: asia-south2 2R
Singapore: asia-southeast1 1R
Nessuna Nessuna
eur3 Europa Belgio: europe-west1 L,2R
Paesi Bassi: europe-west4 2R
Nessuna Finlandia: europe-north1
eur5 Europa Londra: europe-west2 L,2R
Belgio: europe-west1 2R
Nessuna Paesi Bassi: europe-west4 Sola lettura: us-central1 1-OR
us-east1 1-OR
eur6 Europa Paesi Bassi: europe-west4 L,2R
Francoforte: europe-west3 2R
Nessuna Zurigo: europe-west6 Sola lettura: us-east1 2-OR
nam3 Nord America Virginia del Nord: us-east4 L,2R
Carolina del Sud: us-east1 2R
Nessuna Iowa: us-central1 Sola lettura: us-west2 1-OR
asia-southeast1 1-OR
asia-southeast2 1-OR
europe-west1 1-OR
europe-west2 1-OR
nam6 Nord America Iowa: us-central1 L,2R
Carolina del Sud: us-east1 2R
Oregon: us-west1 1R
Los Angeles: us-west2 1R
Oklahoma: us-central2
nam7 Nord America Iowa: us-central1 L,2R
Virginia del Nord: us-east4 2R
Nessuna Oklahoma: us-central2 Sola lettura: us-east1 2-OR
us-south1 1-OR
europe-west1 2-OR
nam8 Nord America Los Angeles: us-west2 L,2R
Oregon: us-west1 2R
Nessuna Salt Lake City: us-west3 Sola lettura: asia-southeast1 2R
europe-west2 2R
nam9 Nord America Virginia del Nord: us-east4 L,2R
Iowa: us-central1 2R
Oregon: us-west1 2R Carolina del Sud: us-east1
nam10 Nord America Iowa: us-central1 L,2R
Salt Lake City: us-west3 2R
Nessuna Oklahoma: us-central2
nam11 Nord America Iowa: us-central1 L,2R
Carolina del Sud: us-east1 2R
Nessuna Oklahoma: us-central2 Sola lettura: us-west1 1-OR
nam12 Nord America Iowa: us-central1 L,2R
Virginia del Nord: us-east4 2R
Oregon: us-west1 2R Oklahoma: us-central2
nam13 Nord America Oklahoma: us-central2 L,2R
Iowa: us-central1 2R
Nessuna Salt Lake City: us-west3
nam14 Nord America Virginia del Nord: us-east4 L,2R
Montréal: northamerica-northeast1 2R
Nessuna Carolina del Sud: us-east1
nam15 Nord America Dallas: us-south1 L,2R
Virginia del Nord: us-east4 2R
Nessuna Iowa: us-central1

Tre continenti

Nome configurazione di base Località Regioni di lettura/scrittura Regioni di sola lettura Regione testimone Regione facoltativa
nam-eur-asia1 Nord America
Europa
Asia
Iowa: us-central1 L,2R
Oklahoma: us-central2 2R
Belgio: europe-west1 2R
Taiwan: asia-east1 2R
Carolina del Sud: us-east1 Sola lettura: us-west2 1-OR
nam-eur-asia3 Nord America
Europa
Asia
Iowa: us-central1 L,2R
Carolina del Sud: us-east1 2R
Belgio: europe-west1 1R
Paesi Bassi: europe-west4 1R
Taiwan: asia-east1 2R
Oklahoma: us-central2
  • L: regione leader predefinita. Per maggiori informazioni, consulta Modificare la regione leader di un database.

  • 1R: una replica nella regione.

  • 2R: due repliche nella regione.

  • 1-OR: una replica facoltativa. Puoi creare una configurazione dell'istanza regionale personalizzata e aggiungere una replica facoltativa di sola lettura. Per maggiori informazioni, consulta Creare una configurazione dell'istanza personalizzata.

  • 2-OR: fino a due repliche facoltative. Puoi creare una configurazione di istanza regionale personalizzata e aggiungere una o due repliche facoltative di sola lettura. Ti consigliamo di aggiungerne due (se possibile) per mantenere una bassa latenza di lettura. Per maggiori informazioni, consulta Creare una configurazione dell'istanza personalizzata.

  • A: questa configurazione dell'istanza è limitata con una lista consentita. Per accedervi, contatta il tuo Technical Account Manager.

Vantaggi

Le istanze multiregionali offrono i seguenti vantaggi principali:

  • Disponibilità del 99,999%, superiore alla disponibilità del 99,99% offerta dalle configurazioni regionali di Spanner.

  • Distribuzione dei dati: Spanner replica automaticamente i dati tra regioni con garanzie di elevata coerenza. Ciò consente di archiviare i dati dove vengono utilizzati, il che può ridurre la latenza e migliorare l'esperienza utente.

  • Coerenza esterna: anche se Spanner esegue la replica in località geografiche lontane, puoi comunque utilizzare Spanner come se fosse un database in esecuzione su un'unica macchina. È garantito che le transazioni siano seriizzabili e l'ordine delle transazioni all'interno del database è lo stesso dell'ordine in cui i clienti osservano che le transazioni sono state confermate. La coerenza esterna è una garanzia più efficace rispetto all'"elevata coerenza", che è offerta da alcuni altri prodotti. Scopri di più su questa proprietà in TrueTime e coerenza esterna.

Replica

Ogni configurazione di base per più regioni contiene due regioni designate come regioni di lettura-scrittura, ciascuna delle quali contiene due repliche di lettura-scrittura. Una di queste regioni di lettura-scrittura è designata come regione leader predefinita, il che significa che contiene le repliche leader del database. Spanner posiziona anche una replica di test in una terza regione chiamata regione di test.

Ogni volta che un client invia una modifica al tuo database, si forma un quorum di scrittura, composto da una delle repliche della regione leader predefinita e due delle altre quattro repliche di voto. (Il quorum potrebbe essere formato da repliche di due o tre delle regioni che compongono la tua configurazione, a seconda di quali altre repliche partecipano al voto.) Oltre a queste cinque repliche di voto, alcune configurazioni multiregionali di base contengono repliche di sola lettura per la gestione di letture a bassa latenza. Le regioni che contengono repliche di sola lettura sono chiamate regioni di sola lettura.

In generale, le regioni di voto in una configurazione multiregionale sono posizionate geograficamente vicino, a meno di mille miglia di distanza l'una dall'altra, per formare un quorum a bassa latenza che consente scritture rapide (scopri di più). Tuttavia, le regioni sono ancora abbastanza distanti (di solito almeno qualche centinaio di chilometri) per evitare errori coordinati. Inoltre, se l'applicazione client si trova in un'area geografica non principale, Spanner utilizza il routing basato sui leader per instradare le transazioni di lettura e scrittura in modo dinamico e ridurre la latenza nel database. Per ulteriori informazioni, consulta la sezione Routing basato sui leader.

Puoi creare una configurazione personalizzata di istanze multiregionali con repliche di sola lettura facoltative. Le repliche di sola lettura personalizzate non possono essere incluse nei quorum di scrittura. Puoi aggiungere località elencate nella colonna Regione facoltativa come repliche facoltative di sola lettura. Se non vedi la località scelta per la replica di sola lettura, puoi richiedere una nuova regione facoltativa per la replica di sola lettura. Per saperne di più, consulta Repliche di sola lettura.

Best practice per le prestazioni per le configurazioni multiregionali

Per un rendimento ottimale, segui queste best practice:

  • Progetta uno schema che impedisca gli hotspot e altri problemi di prestazioni.
  • Per una latenza di scrittura ottimale, posiziona le risorse di computing per i carichi di lavoro ad alta intensità di scrittura all'interno o nelle vicinanze della regione leader predefinita.
  • Per prestazioni di lettura ottimali al di fuori della regione leader predefinita, utilizza un tempo di inattività di almeno 15 secondi.
  • Per evitare una dipendenza da una singola regione per i carichi di lavoro, posiziona le risorse di computing critiche in almeno due regioni. Una buona opzione è posizionarle accanto a due diverse regioni di lettura e scrittura in modo che l'interruzione di una singola regione non influisca su tutte le tue applicazioni.
  • Esegui il provisioning di una capacità di calcolo sufficiente per mantenere l'utilizzo totale della CPU ad alta priorità al di sotto del 45% in ogni regione.
  • Per la quantità di velocità effettiva per nodo Spanner, consulta le prestazioni per le configurazioni multiregionali.

Tipi di regioni

Spanner prevede tre tipi di regioni: regioni di lettura-scrittura, regioni di sola lettura e regioni di visualizzazione.

Regioni di lettura/scrittura

Ogni configurazione per più regioni contiene due regioni di lettura-scrittura, ciascuna delle quali contiene due repliche di lettura-scrittura.

Una di queste regioni di lettura-scrittura è designata come regione leader predefinita. Viene selezionato un leader tra le repliche nella regione leader predefinita per ogni segmento. In caso di errore della replica leader, l'altra replica nella regione leader predefinita assume automaticamente la leadership. Infatti, i leader eseguono controlli di integrità su se stessi e possono rinunciare preventivamente alla leadership se rilevano di essere insalubri. Nella maggior parte dei casi, quando l'regione leader predefinita torna a uno stato sano, la dirigenza riprende automaticamente.

Le scritture vengono elaborate prima nella regione leader predefinita. Puoi monitorare la percentuale di repliche all'interno di una determinata regione utilizzando la metrica di monitoraggio instance/leader_percentage_by_region. Per ulteriori informazioni, consulta la sezione Metriche di Spanner.

La seconda regione di lettura/scrittura contiene repliche aggiuntive che gestiscono le letture e partecipano alle votazioni per le scritture di commit. Queste repliche aggiuntive nella seconda regione di lettura-scrittura possono essere leader. Nell'improbabile eventualità della perdita di tutte le repliche nella regione leader predefinita, le nuove repliche leader vengono scelte dalla seconda regione di lettura/scrittura.

Puoi configurare la regione leader di un database seguendo le istruzioni in Cambiare la regione leader di un database. Per ulteriori informazioni, consulta la sezione Configurare la regione leader predefinita.

Regioni di sola lettura

Le regioni di sola lettura contengono repliche di sola lettura, che possono gestire letture a bassa latenza per i client che si trovano al di fuori delle regioni di lettura e scrittura. Le repliche di sola lettura conservano una copia completa dei tuoi dati, che viene replicata dalle repliche di lettura e scrittura. Non partecipano alle votazioni per le scritture, quindi non contribuiscono mai alla latenza di scrittura.

Alcune configurazioni di base per più regioni contengono repliche di sola lettura. Puoi anche creare una configurazione di istanza personalizzata e aggiungere repliche di sola lettura alle tue configurazioni di istanze personalizzate per scalare le letture e supportare letture inattive a bassa latenza. Tutte le repliche di sola lettura sono soggette ai costi di capacità di calcolo e di archiviazione del database. Inoltre, l'aggiunta di repliche di sola lettura alla configurazione di un'istanza non modifica gli SLA di Spanner della configurazione dell'istanza. Per saperne di più, consulta Repliche di sola lettura.

Regioni di riferimento

Una regione testimone contiene una replica testimoni, che viene utilizzata per votare le scritture. I testimoni diventano importanti nel raro evento in cui le regioni di lettura-scrittura non siano più disponibili.

Sposta un'istanza

Puoi spostare l'istanza Spanner da qualsiasi configurazione di istanza a qualsiasi altra configurazione di istanza, anche tra configurazioni a livello di una o più regioni. Lo spostamento dell'istanza non causa tempi di inattività e Spanner continua a fornire le consuete garanzie di transazioni, tra cui un'elevata coerenza, durante lo spostamento.

Per scoprire di più sullo spostamento di un'istanza Spanner, consulta Spostare un'istanza.

Configura la regione leader predefinita

Per cambiare la località della regione leader predefinita del tuo database in modo che sia più vicina alla connessione dei client per ridurre la latenza delle applicazioni, puoi cambiare la regione leader per qualsiasi istanza Spanner che utilizza una configurazione multiregionale. Per istruzioni su come modificare la località della regione leader, consulta Modificare la regione leader di un database. Le uniche regioni idonee a diventare la regione leader predefinita per il tuo database sono le regioni di lettura e scrittura nella tua configurazione per più regioni.

La regione leader è responsabile della gestione di tutte le scritture del database, pertanto se la maggior parte del traffico proviene da un'area geografica, puoi spostarlo in quella regione per ridurre la latenza. L'aggiornamento dell'area geografica leader predefinita è economico e non prevede trasferimenti di dati. L'applicazione del nuovo valore richiede alcuni minuti.

La modifica della regione leader predefinita è una modifica allo schema, che utilizza un'operazione a lunga esecuzione. Se necessario, puoi recuperare lo stato dell'operazione a lunga esecuzione.

Svantaggi: configurazioni a livello di una o più regioni

Configurazione Disponibilità Latenza Costo Località dei dati
Regionale 99,99% Latenze di scrittura ridotte all'interno della regione. Costo inferiore; vedi i pricing. Consente la governance dei dati geografici.
Più regioni 99,999% Riduzione della latenza di lettura da più regioni geografiche; piccolo aumento della latenza di scrittura. Costo maggiore; vedi i pricing. Distribuisce i dati in più regioni all'interno della configurazione.

Passaggi successivi