Questa pagina descrive le configurazioni delle istanze e i due tipi di configurazioni delle istanze offerte da Cloud Spanner: configurazioni a livello di regione e configurazioni a più regioni. Descrive inoltre le differenze e i compromessi tra configurazioni a livello di una o più regioni.
Configurazioni delle istanze
Una configurazione di istanza definisce il posizionamento geografico e la replica dei database in quell'istanza. Quando crei un'istanza, devi configurarla come regionale (tutte le risorse sono contenute in una singola regione Google Cloud) o come più regioni (le risorse coprono più di una regione). Puoi effettuare questa scelta selezionando una configurazione dell'istanza, che determina dove vengono archiviati i dati per quell'istanza.
Le configurazioni delle istanze con regioni fisse e topologie di replica sono dette configurazioni delle istanze di base. Puoi creare configurazioni di istanze personalizzate e aggiungere ulteriori repliche facoltative di sola lettura. Tieni presente che non puoi modificare la topologia di replica delle configurazioni delle istanze di base. Per saperne di più, consulta Repliche di sola lettura.
Puoi anche spostare l'istanza da qualsiasi configurazione di istanza a qualsiasi altra configurazione di istanze a una o più regioni.
Configurazioni per singole aree geografiche
I servizi Google Cloud sono disponibili in località in Nord America, Sud America, Europa, Asia e Australia. Se gli utenti e i 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 di base a livello di regione, Spanner gestisce tre repliche di lettura/scrittura, ciascuna all'interno di una diversa zona Google Cloud in quella regione. Ogni replica di lettura/scrittura contiene una copia completa del database operativo in grado di gestire richieste di lettura/scrittura e di sola lettura. Spanner utilizza 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 A basse emissioni di CO2 | ||
northamerica-northeast2 |
Toronto A basse emissioni di CO2 | ||
southamerica-east1 |
San Paolo A basse emissioni di CO2 | ||
southamerica-west1 |
Santiago A basse emissioni di CO2 | ||
us-central1 |
Iowa 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 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 A basse emissioni di CO2 | ||
europe-southwest1 |
Madrid | ||
europe-west1 |
Belgio A basse emissioni di CO2 | Sola lettura: us-central1 1-OR us-west1 1-OR |
|
europe-west2 |
Londra A basse emissioni di CO2 | ||
europe-west3 |
Francoforte A basse emissioni di CO2 | ||
europe-west4 |
Paesi Bassi | ||
europe-west6 |
Zurigo A basse emissioni di CO2 | ||
europe-west8 |
Milano | ||
europe-west9 |
Parigi 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 |
Replica
Le configurazioni a livello di regione di base contengono tre repliche di lettura-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 a livello di regione. Per ulteriori informazioni sulle regioni leader e sulle repliche di voto, consulta Replica.
Puoi creare una configurazione di istanza personalizzata a livello di regione 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 fanno parte dei quorum di scrittura e non influiscono sullo SLA (accordo sul livello del servizio) con Spanner >= 99, 99% per le istanze a livello di regione. Puoi aggiungere le località elencate nella colonna Regione facoltativa come repliche facoltative di sola lettura. Se non vedi la località della replica di sola lettura che preferisci, puoi richiedere una nuova regione facoltativa della 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:
- Progetta uno schema che prevenga gli hotspot e altri problemi di prestazioni.
- Colloca le risorse di computing critiche all'interno della stessa regione dell'istanza di Spanner.
- Esegui il provisioning di una capacità di calcolo sufficiente per mantenere l'utilizzo totale della CPU ad alta priorità al di sotto del 65%.
- Per la quantità di velocità effettiva per nodo Spanner, consulta le prestazioni per le configurazioni a livello di regione.
Configurazioni per più aree geografiche
Le configurazioni regionali di Spanner replicano i dati tra più zone all'interno di un'unica regione. Tuttavia, una configurazione a livello di regione potrebbe non essere ottimale nelle seguenti situazioni:
- Se la tua applicazione deve spesso leggere i dati da più posizioni geografiche (ad esempio, per fornire dati agli utenti sia in Nord America che in Asia)
- Se le operazioni di scrittura provengono da una località diversa da quella delle 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 multiregionali offrono altri vantaggi, ad esempio:
- Garantire 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.
- Gestisce le scritture da più regioni.
Le configurazioni multiregionali consentono di replicare i dati del database non solo in più zone, ma in più zone in più regioni, come definito dalla configurazione dell'istanza. Queste repliche aggiuntive consentono di leggere i dati con bassa latenza da più località vicine o all'interno delle regioni nella configurazione. Tuttavia, esistono dei compromessi, perché in una configurazione su più regioni, le repliche del quorum (lettura/scrittura) sono distribuite in più regioni. Di conseguenza, possono comportare un'ulteriore latenza di rete quando queste repliche comunicano tra loro per votare le scritture. In altre parole, le configurazioni multiregionali consentono alla tua applicazione di ottenere letture più veloci in più luoghi, a costo di un piccolo aumento della latenza di scrittura.
Configurazioni disponibili
Spanner offre le seguenti configurazioni di istanza di base in più regioni:
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 esperienza | Seul: asia-northeast3 |
|
asia2 A |
Asia | Mumbai: asia-south1 L,2R Delhi: asia-south2 2R Singapore: asia-southeast1 1R |
Nessuna esperienza | Nessuna esperienza | |
eur3 |
Europa | Belgio: europe-west1 L,2R Paesi Bassi: europe-west4 2R |
Nessuna esperienza | Finlandia: europe-north1 |
|
eur5 |
Europa | Londra: europe-west2 L,2R Belgio: europe-west1 2R |
Nessuna esperienza | 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 esperienza | 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 esperienza | Iowa: us-central1 |
Sola lettura: us-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 esperienza | 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 esperienza | 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 esperienza | Oklahoma: us-central2 |
|
nam11 |
Nord America | Iowa: us-central1 L,2R Carolina del Sud: us-east1 2R |
Nessuna esperienza | 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,2 D Iowa: us-central1 2 D |
Nessuna esperienza | Salt Lake City: us-west3 |
|
nam14 |
Nord America | Virginia del Nord: us-east4 L,2R Montréal: northamerica-northeast1 2R |
Nessuna esperienza | Carolina del Sud: us-east1 |
|
nam15 |
Nord America | Dallas: us-south1 L,2R Virginia del Nord: us-east4 2R |
Nessuna esperienza | Iowa: us-central1 |
Tre continenti
Nome configurazione di base | Località | Regioni di lettura/scrittura | Regioni di sola lettura | Regione testimone |
---|---|---|---|---|
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 |
nam-eur-asia3 |
Nord America Europa Asia |
Iowa: us-central1 S,2 D Carolina del Sud: us-east1 2 D |
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 di istanza regionale personalizzata e aggiungere una replica facoltativa di sola lettura. Per maggiori informazioni, consulta Creare una configurazione di istanze personalizzate.
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 (ove possibile) per mantenere una bassa latenza di lettura. Per maggiori informazioni, consulta Creare una configurazione di istanze personalizzate.
R: questa configurazione dell'istanza è limitata da una lista consentita. Per ottenere l'accesso, 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 distanti, puoi comunque utilizzare Spanner come se fosse un database in esecuzione su un'unica macchina. È garantito che le transazioni siano serializzabili e l'ordine delle transazioni all'interno del database è uguale a quello in cui i clienti osservano che le transazioni sono state impegnate. La coerenza esterna è una garanzia più efficace rispetto all'"elevata coerenza", offerta da alcuni altri prodotti. Scopri di più su questa proprietà in TrueTime e coerenza esterna.
Replica
Ogni configurazione di base con 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 inoltre una replica di sola lettura in una terza regione denominata regione di riferimento.
Ogni volta che un client invia una modifica al database, si forma un quorum di scrittura costituito da una delle repliche della regione leader predefinita e da due delle quattro repliche di voto aggiuntive. (Il quorum potrebbe essere formato da repliche da 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 di base per più regioni 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 vicine, 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 ad almeno alcune centinaia di chilometri) da evitare errori coordinati.
Puoi creare una configurazione di istanza personalizzata per più regioni con repliche facoltative di sola lettura. Le repliche di sola lettura personalizzate che crei non possono essere incluse nei quorum di scrittura. Puoi aggiungere le località elencate nella colonna Regione facoltativa come repliche facoltative di sola lettura. Se non vedi la località di replica di sola lettura che preferisci, puoi richiedere una nuova regione facoltativa della replica di sola lettura. Per saperne di più, consulta Repliche di sola lettura.
Best practice relative alle prestazioni per le configurazioni multiregionali
Per un rendimento ottimale, segui queste best practice:
- Progetta uno schema che prevenga gli hotspot e altri problemi di prestazioni.
- Per una latenza di scrittura ottimale, posiziona le risorse di computing per 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 periodo di inattività di almeno 15 secondi.
- Per evitare la dipendenza da un'unica regione per i tuoi carichi di lavoro, posiziona le risorse di computing critiche in almeno due regioni. Una buona opzione è posizionarle accanto alle due diverse regioni di lettura e scrittura in modo che l'eventuale interruzione di una singola regione non influisca sull'intera applicazione.
- 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 informazioni sulla quantità di velocità effettiva per nodo Spanner, consulta le prestazioni per le configurazioni multiregionali.
Tipi di regione
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, ognuna 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 suddivisione. In caso di errore della replica leader, l'altra replica nella regione leader predefinita assume automaticamente la leadership. Infatti, i leader eseguono controlli di salute 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 integro, ripristina automaticamente la leadership.
Le scritture vengono prima elaborate 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 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 sono idonee a essere leader. Nell'improbabile caso di 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 Modificare 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 all'esterno delle regioni di lettura-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 di commit, quindi non contribuiscono mai alla latenza di scrittura.
Alcune configurazioni di base a più regioni contengono repliche di sola lettura. Puoi anche creare una configurazione dell'istanza personalizzata e aggiungere repliche di sola lettura alle configurazioni delle 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 archiviazione del database. Inoltre, l'aggiunta di repliche di sola lettura alla configurazione di un'istanza non modifica gli SLA (accordo sul livello del servizio) di Spanner della configurazione delle istanze. Per saperne di più, consulta Repliche di sola lettura.
Regioni in cui è presente il testimone
Una regione testimone contiene una replica testimone, che viene utilizzata per votare le scritture. I testimoni diventano importanti nel raro evento in cui le regioni di lettura e 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 relative alle transazioni, tra cui un'elevata coerenza, durante lo spostamento.
Per scoprire di più sullo spostamento delle istanze 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 a più regioni. Per istruzioni sulla modifica della località della regione leader, consulta Cambiare la regione leader di un database. Le uniche regioni idonee a diventare la regione leader predefinita per il tuo database sono quelle di lettura/scrittura nella 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 di schema, che utilizza un'operazione a lunga esecuzione. Se necessario, puoi ottenere lo stato dell'operazione a lunga esecuzione.
Svantaggi: configurazioni regionali e configurazioni a più regioni
Configurazione | Disponibilità | Latenza | Costo | Località dei dati |
---|---|---|---|---|
Regionale | 99,99% | Ridurre la latenza di scrittura all'interno della regione. | Costo inferiore; vedi i pricing. | Abilita la governance geografica dei dati. |
Più regioni | 99,999% | Riduzione della latenza di lettura da più regioni geografiche e un lieve aumento della latenza di scrittura. | Costo maggiore; vedi i pricing. | Distribuisce i dati in più regioni all'interno della configurazione. |
Passaggi successivi
- Scopri come creare un'istanza Spanner.
- Scopri di più sulle regioni e sulle zone di Google Cloud.