En esta página, se describe el rendimiento aproximado que Spanner puede proporcionar en condiciones óptimas, los factores que pueden afectar el rendimiento y sugerencias para probar y solucionar problemas de rendimiento de Spanner.
La información de esta página se aplica a las bases de datos de GoogleSQL y PostgreSQL.
Mejoras de rendimiento y almacenamiento
Se lanzaron mejoras de rendimiento y almacenamiento en todas las configuraciones de instancias regionales, birregionales y multirregionales de Spanner. No es necesario que realices ningún cambio en la aplicación ni configures nada de forma manual en las instancias de Spanner para aprovechar estas mejoras, que se ofrecen sin costo adicional. Estas mejoras de rendimiento generan una mayor capacidad de procesamiento y una mejor latencia en los nodos de Spanner en todas las configuraciones de instancias.
Mayor rendimiento de la capacidad de procesamiento
Todas las configuraciones de instancias de Spanner tienen un mejor rendimiento y ofrecen una mayor capacidad de procesamiento. En la siguiente tabla, se proporciona la productividad aproximada (consultas por segundo) para las configuraciones de instancias de Spanner:
Tipo de configuración de la instancia | Lecturas máximas (QPS por región) | Escrituras máximas (QPS en total) | Escrituras máximas con operaciones de escritura optimizadas para la capacidad de procesamiento (QPS en total) | ||
---|---|---|---|---|---|
Regional | 22,500 | o | 3,500 | 22,500 | |
Birregional y multirregional | 15,000 | o | 2,700 | 15,000 |
Para obtener información sobre la capacidad de procesamiento de rendimiento de estas configuraciones de instancias, consulta Rendimiento de las cargas de trabajo típicas.
La orientación de lectura se proporciona por región (porque las lecturas se pueden entregar desde cualquier región de lectura y escritura o de solo lectura), mientras que la orientación de escritura es para toda la configuración. La orientación de lectura supone que lees filas individuales de 1 KB. La orientación de escritura supone que escribes filas individuales a 1 KB de datos por fila.
El máximo rendimiento de escritura con operaciones de escritura optimizadas para la capacidad de procesamiento se logra con una demora de procesamiento por lotes de 100 ms.
En general, las capacidades de procesamiento de lectura y escritura de una instancia de Spanner se escalan de forma lineal a medida que agregas más capacidad de procesamiento (nodos o unidades de procesamiento) a la instancia. Por ejemplo, si una instancia de Spanner de una sola región con 2 nodos puede proporcionar hasta 45,000 lecturas por segundo, una instancia de Spanner de una sola región con 4 nodos puede proporcionar hasta 90,000 lecturas por segundo.
Si no ves el rendimiento esperado para tu carga de trabajo de Spanner, consulta Cómo solucionar problemas de regresión de rendimiento para obtener información sobre las causas comunes.
Mayor espacio de almacenamiento
Para todas las configuraciones de instancias regionales, de doble región y multirregionales de Spanner, cada nodo (1,000 unidades de procesamiento) de capacidad de procesamiento en la instancia tiene una capacidad de almacenamiento superior de 10 TB.
Rendimiento en cargas de trabajo típicas
Todas las configuraciones de instancias de Spanner tienen un mejor rendimiento y ofrecen una mayor capacidad de procesamiento.
Rendimiento de las configuraciones regionales
Cada 1,000 unidades de procesamiento (1 nodo) de capacidad de procesamiento pueden proporcionar el siguiente rendimiento máximo (al 100% de la CPU) en una configuración de instancia regional:
Lecturas máximas (QPS por región) | Escrituras máximas (QPS en total) | Escrituras máximas con operaciones de escritura optimizadas para la capacidad de procesamiento (QPS en total) | ||
---|---|---|---|---|
22,500 | o | 3,500 | 22,500 |
En el caso de las configuraciones de instancias regionales que permiten réplicas de solo lectura opcionales, la réplica de solo lectura opcional puede admitir 5,000 lecturas por segundo adicionales.
Rendimiento de las configuraciones birregionales
Cada 1,000 unidades de procesamiento (1 nodo) de capacidad de procesamiento pueden proporcionar el siguiente rendimiento máximo (al 100% de la CPU) en una configuración de instancia de doble región. Usa operaciones de escritura optimizadas para la capacidad de procesamiento para aumentar la capacidad de procesamiento de escritura más allá de los números de la tabla.
Nombre de la configuración base | Lecturas máximas aproximadas (QPS por región) | Escrituras máximas aproximadas (QPS en total) |
---|---|---|
dual-region-australia1 |
15,000 | 2,700 |
dual-region-germany1 |
15,000 | 2,700 |
dual-region-india1 |
15,000 | 2,700 |
dual-region-japan1 |
15,000 | 2,700 |
La orientación de lectura se proporciona por región (porque las lecturas se pueden entregar desde cualquier lugar), mientras que la orientación de escritura es para toda la configuración. En las instrucciones de lectura y escritura, se supone que lees y escribes filas individuales a 1 KB de datos por fila.
Rendimiento de las configuraciones multirregionales
Cada configuración de instancia multirregional de Spanner tiene características de rendimiento ligeramente diferentes según la topología de replicación. Usa operaciones de escritura optimizadas para la capacidad de procesamiento para aumentar la capacidad de procesamiento de escritura más allá de los números de la tabla.
Cada 1,000 unidades de procesamiento (1 nodo) de capacidad de procesamiento pueden proporcionar el siguiente rendimiento máximo (al 100% de la CPU):
Nombre de la configuración base | Lecturas máximas aproximadas (QPS por región) | Escrituras máximas aproximadas (QPS en total) |
---|---|---|
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 por cada réplica opcional de solo lectura |
2,700 |
nam3 |
15,000 7,500 por cada réplica opcional de solo lectura |
2,700 |
nam6 |
15,000 en us-central1 y us-east1 7,500 en us-west1 y us-west2 [1] |
2,700 |
nam7 |
15,000 7,500 por cada réplica opcional de solo lectura |
2,700 |
nam8 |
15,000 | 2,700 |
nam9 |
15,000 | 2,700 |
nam10 |
15,000 | 2,700 |
nam11 |
15,000 7,500 por cada réplica opcional de solo lectura |
2,700 |
nam12 |
15,000 | 2,700 |
nam13 |
15,000 | 2,700 |
nam14 |
15,000 | 2,700 |
nam15 |
15,000 | 2,700 |
nam16 |
15,000 | 2,700 |
nam-eur-asia1 |
15,000 | 1,500 |
nam-eur-asia3 |
15,000 | 1,500 |
- [1]:
us-west1
yus-west2
solo proporcionan la mitad del rendimiento de QPS, ya que contienen una réplica por región en lugar de dos.
La orientación de lectura se proporciona por región (porque las lecturas se pueden entregar desde cualquier lugar), mientras que la orientación de escritura es para toda la configuración. En las instrucciones de lectura y escritura, se supone que lees y escribes filas individuales a 1 KB de datos por fila.
Ejecuta tus cargas de trabajo típicas en Spanner
Siempre debes ejecutar tus propias cargas de trabajo típicas en una instancia de Spanner cuando planifiques la capacidad, de modo que puedas determinar la mejor asignación de recursos para tus aplicaciones. PerfKit Benchmarker de Google usa YCSB para comparar servicios en la nube. Si deseas crear pruebas en tus propias cargas de trabajo, puedes seguir el instructivo de PerfKitBenchmarker para Spanner. Cuando lo hagas, debes ajustar los parámetros en los archivos de configuración yaml
de las comparativas para asegurarte de que la comparativa que se genera refleje las siguientes características en tu entorno de producción:
- Tamaño total de tu base de datos
- Esquema (por ejemplo, tamaño de la clave de fila, cantidad de columnas, tamaños de los datos de la fila)
- Patrón de acceso a los datos (distribución de la clave de fila)
- Combinación de operaciones de lectura y de escritura
- Tipo y complejidad de las consultas
Cómo reproducir números de comparativas
Para reproducir los números de comparativas, sigue el instructivo de comparativas de Spanner con PerfKit Benchmarker con los archivos yaml
correspondientes en la carpeta throughput_benchmark.
Para obtener comparativas de instancias en una configuración de instancia que haya tenido mejoras de rendimiento, asegúrate de que tus pruebas se ejecuten en una de estas configuraciones de instancias mejoradas.
Protección contra fallas zonales y regionales
Cuando ejecutas tus cargas de trabajo en producción, es importante aprovisionar suficiente capacidad de procesamiento para seguir entregando tu tráfico en caso de que se pierda una zona completa (para instancias regionales) o una región completa (para instancias de doble región y multirregionales). Para obtener más información sobre la CPU máxima recomendada, consulta alertas para el uso elevado de CPU.
¿Qué sigue?
- Aprende a diseñar un esquema de Spanner.
- Descubre cómo supervisar el rendimiento de Spanner.
- Aprende cómo solucionar problemas con Key Visualizer.
- Obtén más información sobre los precios de Spanner.