Panoramica del rendimento

Questa pagina descrive le prestazioni approssimative che Spanner può fornire in condizioni ottimali, i fattori che possono influire sulle prestazioni e i suggerimenti per testare e risolvere i problemi di prestazioni di Spanner.

Le informazioni in questa pagina si applicano sia ai database GoogleSQL che a PostgreSQL.

Miglioramenti delle prestazioni e dello spazio di archiviazione

I miglioramenti delle prestazioni e dell'archiviazione sono in fase di implementazione in tutte le configurazioni di istanze a livello di regione e più regioni di Spanner. Questi miglioramenti delle prestazioni dovrebbero comportare una maggiore velocità effettiva e una migliore latenza nei nodi Spanner nelle configurazioni di istanze a livello di regione e di più regioni. Aumento della velocità effettiva e dell'archiviazione in determinate configurazioni delle istanze. Non devi apportare modifiche all'applicazione o configurare manualmente nulla nelle istanze Spanner per sfruttare questi miglioramenti, che sono offerti senza costi aggiuntivi.

Aumento della velocità effettiva delle prestazioni

La tabella seguente fornisce la velocità effettiva approssimativa (query al secondo) per le configurazioni di istanze con prestazioni migliorate. Ogni nodo (1000 unità di elaborazione) di capacità di calcolo nell'istanza ha una velocità effettiva fino al 50% superiore.

Tipo di configurazione istanza Picco letture (QPS per regione)   Picco scritture (QPS totale)   Picco di scritture con scritture ottimizzate per la velocità effettiva (QPS totale)
A livello di regione 22.500 o 3.500 22.500
Più regioni 15.000 o 2.700 15.000

È disponibile una maggiore velocità effettiva delle prestazioni per tutte le configurazioni delle istanze Spanner, tranne:

  • Configurazioni di istanze a livello di regione: us-west4

  • Configurazioni di istanze multiregionali: nam10, nam-eur-asia1

Per informazioni sulla velocità effettiva delle prestazioni di queste configurazioni dell'istanza, consulta Prestazioni per carichi di lavoro tipici.

Le indicazioni per la lettura vengono fornite per regione (perché possono essere fornite da qualsiasi regione di lettura e scrittura o di sola lettura), mentre le indicazioni per la scrittura riguardano l'intera configurazione. Le indicazioni di lettura presuppongono che tu stia leggendo righe singole di 1 kB. Le indicazioni per la scrittura presuppone che tu stia scrivendo righe singole a 1 kB di dati per riga.

Il picco delle prestazioni di scrittura mediante scritture ottimizzate per la velocità effettiva si ottiene mediante un ritardo di batching di 100 ms.

In generale, sia le velocità effettiva di lettura che di scrittura di un'istanza Spanner scalano in modo lineare man mano che aggiungi più capacità di calcolo (nodi o unità di elaborazione) all'istanza. Ad esempio, se un'istanza Spanner a livello di singola regione con 2 nodi può fornire fino a 45.000 letture al secondo, un'istanza Spanner a una singola regione con 4 nodi può fornire fino a 90.000 letture al secondo.

Se non visualizzi le prestazioni desiderate per il carico di lavoro da Spanner, consulta la pagina sulla risoluzione dei problemi di regressione delle prestazioni per informazioni sulle cause comuni.

Spazio di archiviazione ampliato

Per alcune configurazioni di istanze Spanner regionali e multiregionali, ogni nodo (1000 unità di elaborazione) di capacità di calcolo nell'istanza ha una capacità di archiviazione aumentata di 10 TB. La tabella seguente fornisce le configurazioni delle istanze con maggiore spazio di archiviazione disponibile:

Configurazioni di istanze a livello di regione

africa-south1, asia-east1, asia-northeast2, asia-south1, asia-southeast1, australia-southeast1, europe-west3, europe-west4, southamerica-east1, us-central2, us-east1, us-east4 e us-east7

Configurazioni di istanze multiregionali

asia1, nam6, nam7, nam8, nam14

Prestazioni per carichi di lavoro tipici

Se la configurazione dell'istanza che stai utilizzando non ha subito una velocità effettiva delle prestazioni migliorata, ogni nodo (1000 unità di elaborazione) di capacità di calcolo nella tua istanza può fornire la seguente velocità effettiva approssimativa (query al secondo):

Tipo di configurazione istanza Picco letture (QPS per regione)   Picco scritture (QPS totale)
A livello di regione 15.000 o 2.300
Più regioni (suddivisione per configurazione di base) 10.000 o 1800

Per le configurazioni di istanze a livello di regione che consentono repliche facoltative di sola lettura, la replica facoltativa di sola lettura può supportare altre 5000 letture al secondo.

Prestazioni per le configurazioni multiregionali

Ogni configurazione di un'istanza Spanner multiregionale ha caratteristiche prestazionali leggermente diverse in base alla topologia di replica. Utilizza le scritture ottimizzate per la velocità effettiva per aumentare la velocità effettiva di scrittura oltre i numeri nella tabella.

Ogni 1000 unità di elaborazione (1 nodo) di capacità di calcolo può fornire i seguenti picchi di prestazioni (al 100% di CPU):

Nome configurazione di base Picco letture approssimative (QPS per regione) Picco di scritture approssimative (QPS totale)
asia1 15.000 2.700
asia2 15.000 2.700
eur3 15.000 2.700
eur5 15.000 2.700
eur6 15.000
7.500 per ogni replica di sola lettura facoltativa
2.700
nam3 15.000
7.500 per ogni replica di sola lettura facoltativa
2.700
nam6 15.000 in us-central1 e us-east1
7500 in us-west1 e us-west2 [1]
2.700
nam7 15.000
7.500 per ogni replica di sola lettura facoltativa
2.700
nam8 15.000 2.700
nam9 15.000 2.700
nam10 10.000 1800
nam11 15.000
7.500 per ogni replica di sola lettura facoltativa
2.700
nam12 15.000 2.700
nam13 15.000 2.700
nam14 15.000 2.700
nam15 15.000 2.700
nam-eur-asia1 10.000 1000
nam-eur-asia3 15.000 1500
  • [1]: us-west1 e us-west2 forniscono solo la metà delle prestazioni QPS perché contengono una replica per regione anziché due.

Le indicazioni per la lettura sono fornite per regione (perché le letture possono essere fornite ovunque), mentre le indicazioni per la scrittura sono per l'intera configurazione. Le indicazioni relative alla lettura e alla scrittura presuppongono che tu stia leggendo e scrivendo righe singole a 1 kB di dati per riga.

Esegui i tuoi carichi di lavoro tipici su Spanner

Quando pianifichi la capacità, esegui sempre i tuoi carichi di lavoro tipici su un'istanza Spanner, in modo da determinare la migliore allocazione delle risorse per le tue applicazioni. Lo strumento PerfKit Benchmarker di Google utilizza YCSB per eseguire i benchmark dei servizi cloud. Puoi seguire il tutorial di PerfKitBenchmarker per Spanner per creare test per i tuoi carichi di lavoro. Nel farlo, devi ottimizzare i parametri nei file yaml di configurazione di benchmarking per assicurarti che il benchmark generato rifletta le seguenti caratteristiche nel tuo ambiente di produzione:

Riprodurre i valori di benchmark

Per riprodurre i numeri di benchmark, segui il tutorial di Spanner per il benchmarking con il Benchmarker PerfKit utilizzando i file yaml corrispondenti nella cartella throughput_benchmark.

Per confrontare le istanze in una configurazione di istanza che è stata oggetto di miglioramenti delle prestazioni, assicurati che i test vengano eseguiti in una di queste configurazioni di istanze migliorate.

Protezione da errori a livello di zona e di regione

Quando esegui i carichi di lavoro in produzione, è importante eseguire il provisioning di capacità di calcolo sufficiente per continuare a gestire il traffico in caso di perdita di un'intera zona (per istanze a livello di regione) o di un'intera regione (per istanze multiregionali). Per ulteriori informazioni sulla CPU massima consigliata, consulta gli avvisi per l'utilizzo elevato della CPU.

Passaggi successivi