Prepara la base de datos antes de que se inicie la aplicación

Antes de lanzar una aplicación, te recomendamos que prepares la base de datos con cargas de datos de prueba para aprovechar las funciones de paralelización de Spanner.

Spanner es una base de datos distribuida, lo que significa que, a medida que la base de datos crece, Spanner divide el espacio de claves de los datos en fragmentos llamados divisiones. Cada división es un rango de filas que contiene un subconjunto de la tabla. A medida que Spanner divide los datos en función de la carga y el tamaño, mueve divisiones individuales de forma dinámica y las asigna a diferentes recursos de servidor para equilibrar la carga general en la base de datos.

Cuando insertas datos por primera vez en una base de datos vacía, Spanner escribe los datos en una sola división. La base de datos aún se encuentra en un estado “frío”. A medida que insertas más datos, Spanner comienza a dividirlos para volver a balancear la carga en otros recursos de servidor disponibles. Ahora Spanner se encuentra en un estado “caliente” con divisiones entre los recursos de servidor disponibles para maximizar el paralelismo y mejorar el rendimiento.

Como práctica recomendada, te sugerimos que inicies tu aplicación cuando Spanner se encuentre en estado caliente con divisiones ya creadas y equilibradas en los recursos del servidor. Para preparar la base de datos y preparar las cargas de datos de prueba, sigue estos pasos:

  1. Asegúrate de que las claves primarias que generes para tus cargas de datos de prueba estén en el mismo espacio de claves y tengan las mismas propiedades de distribución que las claves que usas para el tráfico de producción.
  2. Ejecuta una prueba de carga no más de dos días antes del lanzamiento. Ejecuta la prueba de carga durante al menos una hora a la carga máxima esperada. La prueba de carga hace que Spanner cree más divisiones debido a la división basada en la carga.
  3. Una vez finalizada la prueba de carga, puedes borrar de tus tablas las filas generadas por la prueba de carga, pero no borres las tablas. Así mantendrás las divisiones disponibles para la ventana de lanzamiento.