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 i test e la risoluzione dei problemi di prestazioni di Spanner.

Le informazioni in questa pagina si applicano ai database GoogleSQL e PostgreSQL.

Miglioramenti delle prestazioni e dello spazio di archiviazione

I miglioramenti delle prestazioni e dello spazio di archiviazione sono in fase di implementazione in tutte le configurazioni di istanze a livello di regione e multiregione di Spanner. Questi miglioramenti delle prestazioni dovrebbero comportare una velocità effettiva più elevata e una latenza migliore nei nodi Spanner nelle configurazioni di istanze a livello di regione e multiregionale. Velocità effettiva e spazio di archiviazione maggiori sono disponibili in determinate configurazioni di istanze. Non è necessario apportare modifiche all'applicazione o configurare manualmente nulla nelle istanze Spanner per sfruttare questi miglioramenti, 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 dell'istanza Picco letture (QPS per regione)   Picco scritture (QPS totale)
A livello di regione 22.500 o 3500
Più regioni 15.000 o 2700

Una maggiore velocità effettiva delle prestazioni è disponibile per tutte le configurazioni di istanze Spanner, ad eccezione di:

  • Configurazioni dell'istanza a livello di regione: us-west4

  • Configurazioni di istanze su più regioni: nam10, nam-eur-asia1

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

Le indicazioni di lettura vengono fornite in base alla regione (perché le letture possono essere fornite da qualsiasi regione di lettura/scrittura o di sola lettura), mentre le indicazioni di scrittura riguardano l'intera configurazione. La guida nella lettura presuppone che tu stia leggendo singole righe da 1 kB. La guida alla scrittura presuppone che tu stia scrivendo singole righe con 1 kB di dati per riga.

In generale, sia la velocità effettiva di lettura che quella di scrittura di un'istanza Spanner scalano in modo lineare quando si aggiunge più capacità di calcolo (nodi o unità di elaborazione) all'istanza. Ad esempio, se un'istanza Spanner a regione singola con due 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 tuo carico di lavoro da Spanner, consulta la sezione sulla risoluzione dei problemi di regressione delle prestazioni per informazioni sulle cause più 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 dell'istanza con lo spazio di archiviazione disponibile maggiore:

Configurazioni delle 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 su più regioni

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 migliorata, ogni nodo (1000 unità di elaborazione) di capacità di calcolo nell'istanza può fornire la seguente velocità effettiva approssimativa (query al secondo):

Tipo di configurazione dell'istanza Picco letture (QPS per regione)   Picco scritture (QPS totale)
A livello di regione 15.000 o 2300
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 ulteriori 5000 letture al secondo.

Prestazioni per configurazioni multiregionali

Ogni configurazione di istanza multiregionale di Spanner ha caratteristiche delle prestazioni leggermente diverse in base alla topologia di replica.

Ogni 1000 unità di elaborazione (1 nodo) di capacità di calcolo può fornire le seguenti prestazioni di picco (con il 100% della CPU):

Nome configurazione di base Letture massime approssimative (QPS per regione) Valori approssimativi di scrittura massima (QPS totale)
asia1 15.000 2700
asia2 15.000 2700
eur3 15.000 2700
eur5 15.000 2700
eur6 15.000
7500 per ogni replica di sola lettura facoltativa
2700
nam3 15.000
7500 per ogni replica di sola lettura facoltativa
2700
nam6 15.000 in us-central1 e us-east1
7500 in us-west1 e us-west2 [1]
2700
nam7 15.000
7500 per ogni replica di sola lettura facoltativa
2700
nam8 15.000 2700
nam9 15.000 2700
nam10 10.000 1800
nam11 15.000
7500 per ogni replica di sola lettura facoltativa
2700
nam12 15.000 2700
nam13 15.000 2700
nam14 15.000 2700
nam15 15.000 2700
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 di lettura vengono fornite in base alla regione (perché le letture possono essere fornite da qualsiasi luogo), mentre le indicazioni di scrittura riguardano l'intera configurazione. Le linee guida relative alla lettura e scrittura presuppongono che tu stia leggendo e scrivendo singole righe con una dimensione di 1 kB per riga.

Esegui i tuoi carichi di lavoro tipici su Spanner

Esegui sempre i tuoi carichi di lavoro tipici su un'istanza Spanner quando esegui la pianificazione della capacità, in modo da poter capire la migliore allocazione delle risorse per le tue applicazioni. PerfKit Benchmarker di Google utilizza YCSB per confrontare i servizi cloud. Puoi seguire il tutorial per PerfKitBenchmarker per Spanner per creare test per i tuoi carichi di lavoro. Durante questa operazione, devi ottimizzare i parametri nei file yaml di configurazione di benchmarking per assicurarti che il benchmark generato rifletta le seguenti caratteristiche nell'ambiente di produzione:

Riprodurre i valori di benchmark

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

Per eseguire il benchmark delle istanze in una configurazione dell'istanza che ha subito miglioramenti delle prestazioni, assicurati che i test vengano eseguiti in una di queste configurazioni di istanza 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 le istanze a livello di regione) o di un'intera regione (per le istanze multiregionali). Consulta gli avvisi per un utilizzo elevato della CPU per ulteriori informazioni sulla CPU massima consigliata.

Passaggi successivi