En esta página se describe el rendimiento aproximado que puede ofrecer Spanner en condiciones óptimas, los factores que pueden afectar al rendimiento y consejos 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
Hemos implementado mejoras en el rendimiento y el almacenamiento en todas las configuraciones de instancias regionales, birregionales y multirregionales de Spanner. No es necesario que hagas ningún cambio en tu aplicación ni que configures nada manualmente en tus instancias de Spanner para aprovechar estas mejoras, que se ofrecen sin coste adicional. Estas mejoras de rendimiento se traducen en un mayor rendimiento y una mejor latencia en los nodos de Spanner en todas las configuraciones de instancias.
Mayor rendimiento
Todas las configuraciones de instancias de Spanner han mejorado su rendimiento y ofrecen un mayor volumen de operaciones. En la siguiente tabla se muestra el rendimiento aproximado (consultas por segundo) de las configuraciones de instancias de Spanner:
Tipo de configuración de instancia | Pico de lecturas (CPS por región) | Pico de escrituras (total de CPS) | Pico de escrituras con escrituras optimizadas para el rendimiento (QPS total) | ||
---|---|---|---|---|---|
Regional | SSD: 22.500 HDD: 1500 |
o | SSD: 3500 HDD: 3500 |
SSD: 22.500 HDD: 22.500 |
|
Birregional y multirregional | SSD: 15.000 HDD: 1000 |
o | SSD: 2700 HDD: 2700 |
SSD: 15.000 HDD: 15.000 |
Para obtener información sobre el rendimiento de estas configuraciones de instancias, consulta Rendimiento de las cargas de trabajo típicas. Para obtener más información sobre el uso de unidades de estado sólido (SSD) y unidades de disco duro (HDD) para almacenar tus datos, consulta Descripción general del almacenamiento por niveles.
Las recomendaciones de lectura se ofrecen por región (ya que las lecturas se pueden servir desde cualquier región de lectura y escritura o de solo lectura), mientras que las recomendaciones de escritura son para toda la configuración. La guía de lectura presupone que estás leyendo filas individuales de 1 KB. Las directrices de escritura presuponen que escribes filas individuales con 1 KB de datos por fila.
El pico de rendimiento de escritura con escrituras optimizadas para el rendimiento se consigue con una latencia de procesamiento por lotes de 100 ms.
En general, el rendimiento de lectura y escritura de una instancia de Spanner se escala linealmente a medida que se añade más capacidad de computación (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 observas el rendimiento esperado de tu carga de trabajo en Spanner, consulta la sección sobre solución de problemas de regresiones de rendimiento para obtener información sobre las causas habituales.
Más espacio de almacenamiento
En todas las configuraciones de instancias regionales, birregionales y multirregionales de Spanner, cada nodo (1000 unidades de procesamiento) de capacidad de computación de la instancia tiene una capacidad de almacenamiento aumentada de 10 TiB.
Rendimiento para cargas de trabajo habituales
Todas las configuraciones de instancias de Spanner han mejorado su rendimiento y ofrecen un mayor volumen de operaciones.
Rendimiento de las configuraciones regionales
Cada 1000 unidades de procesamiento (1 nodo) de capacidad de computación puede proporcionar el siguiente rendimiento máximo (con la CPU al 100 %) en una configuración de instancia regional:
Pico de lecturas (CPS por región) | Pico de escrituras (total de CPS) | Pico de escrituras con escrituras optimizadas para el rendimiento (QPS total) | ||
---|---|---|---|---|
SSD: 22.500 HDD: 1500 |
o | SSD: 3500 HDD: 3500 |
SSD: 22.500 HDD: 22.500 |
En las configuraciones de instancias regionales que permiten réplicas de solo lectura opcionales, estas pueden admitir 7500 lecturas por segundo adicionales en el caso del almacenamiento SSD y 500 lecturas por segundo en el caso del almacenamiento HDD.
Rendimiento de las configuraciones con dos regiones
Cada 1000 unidades de procesamiento (1 nodo) de capacidad de computación puede proporcionar el siguiente rendimiento máximo (con una CPU al 100 %) en una configuración de instancia de dos regiones. Usa escrituras optimizadas para el rendimiento para aumentar el rendimiento de escritura más allá de los números de la tabla.
Nombre de la configuración base | Lecturas máximas aproximadas (consultas por segundo por región) | Pico de escrituras aproximado (total de QPS) |
---|---|---|
dual-region-australia1 |
SSD: 15.000 HDD: 1000 |
SSD: 2700 HDD: 2700 |
dual-region-germany1 |
SSD: 15.000 HDD: 1000 |
SSD: 2700 HDD: 2700 |
dual-region-india1 |
SSD: 15.000 HDD: 1000 |
SSD: 2700 HDD: 2700 |
dual-region-japan1 |
SSD: 15.000 HDD: 1000 |
SSD: 2700 HDD: 2700 |
Las directrices de lectura se proporcionan por región (porque las lecturas se pueden servir desde cualquier lugar), mientras que las de escritura son para toda la configuración. Las directrices de lectura y escritura presuponen que lees y escribes filas individuales con 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 en función de la topología de replicación. Usa escrituras optimizadas para el rendimiento para aumentar el rendimiento de escritura más allá de los números de la tabla.
Cada 1000 unidades de procesamiento (1 nodo) de capacidad de computación puede proporcionar el siguiente rendimiento máximo (con la CPU al 100 %):
Nombre de la configuración base | Lecturas máximas aproximadas (consultas por segundo por región) | Pico de escrituras aproximado (total de QPS) |
---|---|---|
asia1 |
SSD: 15.000 HDD: 1000 |
SSD: 2700 HDD: 2700 |
asia2 |
SSD: 15.000 HDD: 1000 |
SSD: 2700 HDD: 2700 |
eur3 |
SSD: 15.000 HDD: 1000 |
SSD: 2700 HDD: 2700 |
eur5 |
SSD: 15.000 HDD: 1000 |
SSD: 2700 HDD: 2700 |
eur6 |
SSD: 15.000, 7500 por cada réplica de solo lectura opcional HDD: 1000, 500 por cada réplica de solo lectura opcional |
SSD: 2700 HDD: 2700 |
eur7 |
SSD: 15.000, 7500 por cada réplica de solo lectura opcional HDD: 1000, 500 por cada réplica de solo lectura opcional |
SSD: 2700 HDD: 2700 |
nam3 |
SSD: 15.000, 7500 por cada réplica de solo lectura opcional HDD: 1000, 500 por cada réplica de solo lectura opcional |
SSD: 2700 HDD: 2700 |
nam6 |
SSD: 15.000 en us-central1 y us-east1 7500 en us-west1 y us-west2 HDD: 1000 en us-central1 y us-east1 500 en us-west1 y us-west2 [1] |
SSD: 2700 HDD: 2700 |
nam7 |
SSD: 15.000, 7500 por cada réplica de solo lectura opcional HDD: 1000, 500 por cada réplica de solo lectura opcional |
SSD: 2700 HDD: 2700 |
nam8 |
SSD: 15.000 HDD: 1000 |
SSD: 2700 HDD: 2700 |
nam9 |
SSD: 15.000 HDD: 1000 |
SSD: 2700 HDD: 2700 |
nam10 |
SSD: 15.000 HDD: 1000 |
SSD: 2700 HDD: 2700 |
nam11 |
SSD: 15.000, 7500 por cada réplica de solo lectura opcional HDD: 1000, 500 por cada réplica de solo lectura opcional |
SSD: 2700 HDD: 2700 |
nam12 |
SSD: 15.000 HDD: 1000 |
SSD: 2700 HDD: 2700 |
nam13 |
SSD: 15.000 HDD: 1000 |
SSD: 2700 HDD: 2700 |
nam14 |
SSD: 15.000 HDD: 1000 |
SSD: 2700 HDD: 2700 |
nam15 |
SSD: 15.000 HDD: 1000 |
SSD: 2700 HDD: 2700 |
nam16 |
SSD: 15.000 HDD: 1000 |
SSD: 2700 HDD: 2700 |
nam-eur-asia1 |
SSD: 15.000 HDD: 1000 |
SSD: 2700 HDD: 2700 |
nam-eur-asia3 |
SSD: 15.000 HDD: 1000 |
SSD: 2700 HDD: 2700 |
- [1]:
us-west1
yus-west2
solo ofrecen la mitad del rendimiento de las CPS porque contienen una réplica por región en lugar de dos.
Las directrices de lectura se proporcionan por región (porque las lecturas se pueden servir desde cualquier lugar), mientras que las de escritura son para toda la configuración. Las directrices de lectura y escritura presuponen que lees y escribes filas individuales con 1 KB de datos por fila.
Ejecuta tus cargas de trabajo habituales en Spanner
Cuando planifiques la capacidad, ejecuta siempre tus cargas de trabajo típicas en una instancia de Spanner para determinar la mejor asignación de recursos para tus aplicaciones. PerfKit Benchmarker de Google usa YCSB para comparar servicios en la nube. Puedes seguir el tutorial de PerfKitBenchmarker para Spanner
para crear pruebas de tus propias cargas de trabajo. Al hacerlo, debes ajustar los parámetros de los archivos de configuración de las comparativas yaml
para asegurarte de que la comparativa generada refleje las siguientes características de tu entorno de producción:
- Tamaño total de tu base de datos
- Esquema (por ejemplo, tamaño de la clave de fila, número de columnas, tamaños de los datos de las filas)
- Patrón de acceso a datos (distribución de claves de fila)
- Mezcla de lecturas y escrituras
- Tipo y complejidad de las consultas
Reproducir números de referencia
Para reproducir los números de las pruebas de rendimiento, sigue el tutorial Pruebas de rendimiento de Spanner con PerfKit Benchmarker con los archivos yaml
correspondientes de la carpeta throughput_benchmark
.
Para comparar el rendimiento de las instancias de una configuración de instancia que haya experimentado mejoras de rendimiento, asegúrate de que tus pruebas se ejecuten en una de estas configuraciones de instancia mejoradas.
Protección contra fallos regionales y de zona
Cuando ejecute sus cargas de trabajo en producción, es importante que aprovisione suficiente capacidad de computación para seguir atendiendo su tráfico en caso de que se pierda una zona completa (en el caso de las instancias regionales) o una región completa (en el caso de las instancias birregionales y multirregionales). Para obtener más información sobre la CPU máxima recomendada, consulta las alertas de uso elevado de la CPU.
Siguientes pasos
- Consulta cómo diseñar un esquema de Spanner.
- Consulta cómo monitorizar el rendimiento de Spanner.
- Consulta cómo solucionar problemas con Key Visualizer.
- Consulta información sobre los precios de Spanner.