En esta página, se presenta la herramienta Escalador automático para Spanner (escalador automático), una herramienta de código abierto que puedes usar como herramienta complementaria de Spanner. Esta herramienta te permite aumentar o reducir automáticamente la capacidad de procesamiento en una o más instancias de Spanner según la cantidad de capacidad que se esté usando.
Para obtener más información sobre el escalamiento en Spanner, consulta Ajuste de escala automático de Spanner. Para obtener información sobre la implementación de la herramienta de escalamiento automático, consulta lo siguiente:
- Implementa una herramienta de escalador automático por proyecto o centralizado para Spanner
- Implementa una herramienta de escalador automático distribuido para Spanner
En esta página, se presentan las características, la arquitectura, la configuración y las topologías de implementación del escalador automático. En los temas que continúan con esta serie, se te guiará a través de la implementación del escalador automático en cada una de las diferentes topologías.
Escalador automático
La herramienta de escalador automático es útil para administrar el uso y el rendimiento de tus implementaciones de Spanner. Para ayudarte a equilibrar el control de costos con las necesidades de rendimiento, la herramienta Autoscaler supervisa tus instancias y agrega o quita nodos o unidades de procesamiento de forma automática para garantizar que permanezcan dentro de los siguientes parámetros:
- Los máximos recomendados para el uso de CPU
El límite recomendado de almacenamiento por nodo
más o menos un margen configurable.
El ajuste de escala automático de las implementaciones de Spanner permite que tu infraestructura se adapte y escale de forma automática para satisfacer los requisitos de carga casi sin intervención. El ajuste de escala automático también aplica un tamaño adecuado a la infraestructura aprovisionada, lo que puede ayudarte a reducir costos.
Arquitectura
En esta sección, se describen los componentes del escalador automático y sus respectivos propósitos con más detalle.
La arquitectura de la herramienta de escalamiento automático consta de Cloud Scheduler, dos temas de Pub/Sub, dos funciones de Cloud Run y Firestore. La API de Cloud Monitoring se usa para obtener las métricas de uso de CPU y almacenamiento para las instancias de Spanner.
Cloud Scheduler
Con Cloud Scheduler, puedes definir con qué frecuencia la herramienta del escalador automático verifica los umbrales de las métricas de escalamiento de las instancias de Spanner. Un trabajo de Cloud Scheduler puede verificar una o varias instancias al mismo tiempo. Puedes definir tantos programas de trabajos como necesites.
Función de sondeo de Cloud Run
La función de Cloud Run de sondeo es responsable de recopilar y procesar las métricas de series temporales para una o más instancias de Spanner. El sondeo procesa previamente los datos de métricas para cada instancia de Spanner, de modo que solo los datos más relevantes se evalúan y se envían a la función de Cloud Run de Scaler. El procesamiento previo que realiza la función de sondeo de Cloud Run también simplifica el proceso de evaluación de los límites para las instancias regionales, birregionales y multirregionales de Spanner.
Función de Cloud Run de escalamiento
La función de escalamiento de Cloud Run evalúa los datos recibidos de la función de sondeo de Cloud Run y determina si necesitas ajustar la cantidad de nodos o unidades de procesamiento y, de ser así, en qué medida. La función de Cloud Run compara los valores de las métricas con el umbral, más o menos un margen permitido, y ajusta la cantidad de nodos o unidades de procesamiento según el método de escalamiento configurado. Para obtener más detalles sobre los métodos de escalamiento, consulta Funciones del escalador automático.
Flujo operativo
En esta sección, se detalla el modelo operativo de la herramienta Autoscaler, como se muestra en el siguiente diagrama de arquitectura.
- Define el programa, el tiempo y la frecuencia de tus trabajos de ajuste de escala automático en Cloud Scheduler.
- En el programa que definas, Cloud Scheduler envía un mensaje que contiene una carga útil JSON con los parámetros de configuración de la herramienta de escalador automático de una o más instancias de Spanner en el tema de sondeo de Pub/Sub.
- Cuando el mensaje se publica en el tema de sondeo, se crea una instancia de la función de sondeo de Cloud Run para manejar el mensaje.
- La función de sondeo de Cloud Run lee la carga útil del mensaje y consulta la API de Cloud Monitoring para recuperar las métricas de uso de cada instancia de Spanner.
- Para cada instancia de Spanner enumerada en el mensaje, la función de sondeo envía un mensaje al tema de escalamiento de Pub/Sub, que contiene las métricas y los parámetros de configuración que se evaluarán para la instancia específica de Spanner.
Para cada mensaje enviado al tema del escalador, la función de Cloud Run del escalador hace lo siguiente:
- Compara las métricas de las instancias de Spanner con los umbrales configurados, más o menos un margen configurable.
Puedes configurar el margen por tu cuenta o usar el valor predeterminado. 1. Determina si se debe escalar la instancia. 1. Calcula la cantidad de nodos o unidades de procesamiento a los que se debe escalar la instancia según el método de escalamiento elegido.
La función de Cloud Run de escalamiento recupera el tiempo en que la instancia se escaló por última vez desde Firestore y la compara con la hora actual para determinar si se permite el aumento o reducción de la escala según los períodos de enfriamiento.
Si ya pasó el período de enfriamiento configurado, la función de Cloud Run de escalamiento envía una solicitud a la instancia de Spanner para aumentar o disminuir la escala.
Durante el flujo, la herramienta de escalamiento automático escribe un resumen de sus recomendaciones y acciones en Cloud Logging para el seguimiento y la auditoría.
Sin importar la topología de implementación que elijas, la operación general de la herramienta de escalamiento automático sigue siendo la misma.
Funciones del escalador automático
En esta sección, se describen las funciones principales de la herramienta Autoscaler.
Administra varias instancias
La herramienta de escalamiento automático puede administrar varias instancias de Spanner en varios proyectos. Las instancias multirregionales, birregionales y regionales tienen diferentes umbrales de uso que se usan cuando se escala. Por ejemplo, las implementaciones multirregionales y de región doble se escalan con un 45% de uso de CPU de prioridad alta, mientras que las implementaciones regionales se escalan con un 65% de uso de CPU de prioridad alta, más o menos un margen permitido. Para obtener más información sobre los diferentes umbrales de escalamiento, consulta Alertas para el uso de CPU elevado.
Parámetros de configuración independientes
Cada instancia de Spanner con ajuste de escala automático puede tener uno o más programas de sondeo. Cada programa de sondeo tiene su propio conjunto de parámetros de configuración.
Estos parámetros determinan los siguientes factores:
- La cantidad mínima y máxima de nodos o unidades de procesamiento que controlan qué tan pequeña o grande es tu instancia, lo que te ayuda a controlar los costos.
- El método de escalamiento que se usa para ajustar la instancia de Spanner específica para tu carga de trabajo.
- Los períodos de inactividad para permitir que Spanner administre las divisiones de datos
Distintos métodos de escalamiento para diferentes cargas de trabajo
La herramienta de escalamiento automático proporciona tres métodos diferentes para el escalamiento ascendente y descendente de las instancias de Spanner: de forma gradual, lineal y directa. Cada método está diseñado para admitir diferentes tipos de cargas de trabajo. Puedes aplicar uno o más métodos a cada instancia de Spanner con ajuste de escala automático cuando creas programas de sondeo independientes.
Paso a paso
El escalamiento gradual es útil para cargas de trabajo que tienen picos pequeños o múltiples. Aprovisiona la capacidad para suavizarlos a todos con un solo evento de ajuste de escala automático.
En el siguiente gráfico, se muestra un patrón de carga con varias plataformas o pasos de carga, en el que cada paso tiene varios picos pequeños. Este patrón es adecuado para el método gradual.
Cuando se supera el límite de carga, este método aprovisiona y quita nodos o unidades de procesamiento con un número fijo, pero configurable. Por ejemplo, se agregan o quitan tres nodos para cada acción de escalamiento. Si cambias la configuración, puedes permitir que se agreguen o quiten incrementos más grandes de capacidad en cualquier momento.
Lineal
El escalamiento lineal se usa mejor con patrones de carga que cambian de manera más gradual o tienen algunos picos grandes. Con el método, se calcula la cantidad mínima de nodos o unidades de procesamiento necesarios para mantener el uso por debajo del umbral de escalamiento. La cantidad de nodos o unidades de procesamiento que se agregan o quitan en cada evento de escalamiento no se limita a un importe fijo.
En el patrón de carga de muestra del siguiente gráfico, se muestran mayores aumentos y disminuciones repentinos en la carga. Estas fluctuaciones no se agrupan en pasos perceptibles como en el gráfico anterior. Este patrón se maneja con mayor facilidad mediante el escalamiento lineal.
La herramienta del escalador automático usa la proporción del uso observado durante el límite de uso para calcular si se deben agregar o quitar nodos o unidades de procesamiento del número total actual.
La fórmula para calcular la cantidad nueva de nodos o unidades de procesamiento es la siguiente:
newSize = currentSize * currentUtilization / utilizationThreshold
Direct
El escalamiento directo proporciona un aumento inmediato de capacidad. Este método está diseñado para admitir cargas de trabajo por lotes en las que se requiere un recuento de nodos predeterminado más alto de forma periódica en un programa con hora de inicio conocida. Este método escala la instancia hasta la cantidad máxima de nodos o unidades de procesamiento especificados en el programa y está diseñado para usarse junto con un método lineal o gradual.
En el siguiente gráfico, se muestra el gran aumento planificado en la carga con capacidad aprovisionada de manera previa del escalador automático para usar el método directo.
Una vez que se completa la carga de trabajo por lotes y el uso vuelve a los niveles normales, según la configuración, se aplica un escalamiento lineal o gradual para reducir la escala de la instancia de forma automática.
Métodos de implementación
La herramienta de escalador automático se puede implementar en un proyecto individual o junto con las instancias de Spanner que administra. La herramienta de escalamiento automático está diseñada para permitir la flexibilidad y puede adaptarse a la separación existente de responsabilidades entre tus equipos de operaciones y aplicaciones. La responsabilidad de configurar el ajuste de escala automático de las instancias de Spanner se puede centralizar con un solo equipo de operaciones o se puede distribuir a los equipos más cercanos a las aplicaciones que entregan esas instancias de Spanner.
Los diferentes modelos de implementación se analizan con más detalle en Topologías de implementación.
Plataforma sin servidores para facilitar la implementación y la administración
La herramienta de escalamiento automático se compila solo con herramientas de Google Cloud sin servidores y de administración baja, como funciones de Cloud Run, Pub/Sub, Cloud Scheduler y Firestore. Este enfoque minimiza el costo y la sobrecarga operativa de ejecutar la herramienta de escalamiento automático.
Mediante el uso de herramientas integradas de Google Cloud , el escalador automático puede aprovechar al máximo IAM (IAM) para la autenticación y autorización.
Configuración
La herramienta Escalador automático tiene diferentes opciones de configuración que puedes usar para administrar el escalamiento de tus implementaciones de Spanner. En las siguientes secciones, se describen las opciones de configuración básica y las opciones de configuración más avanzadas.
Configuración básica
La herramienta Autoscaler administra las instancias de Spanner a través de la configuración definida en Cloud Scheduler. Si se deben consultar varias instancias de Spanner con el mismo intervalo, te recomendamos que las configures en el mismo trabajo de Cloud Scheduler. La configuración de cada instancia se representa como un objeto JSON. El siguiente es un ejemplo de una configuración en la que dos instancias de Spanner se administran con un trabajo de Cloud Scheduler:
[
{
"projectId": "my-spanner-project", "instanceId": "spanner1",
"scalerPubSubTopic": "projects/my-spanner-project/topics/spanner-scaling",
"units": "NODES", "minSize": 1, "maxSize": 3
},
{
"projectId":
"different-project", "instanceId": "another-spanner1", "scalerPubSubTopic":
"projects/my-spanner-project/topics/spanner-scaling", "units":
"PROCESSING_UNITS", "minSize": 500, "maxSize": 3000, "scalingMethod": "DIRECT"
}
]
Las instancias de Spanner pueden tener varias configuraciones en diferentes trabajos de Cloud Scheduler. Por ejemplo, una instancia puede tener una configuración de escalador automático con el método lineal para operaciones normales, pero también tiene otra configuración de escalador automático con el método directo para cargas de trabajo por lotes planificadas.
Cuando se ejecuta el trabajo de Cloud Scheduler, se envía un mensaje de Pub/Sub al tema de sondeo de Pub/Sub. La carga útil de este mensaje es el arreglo JSON de los objetos de configuración para todas las instancias configuradas en el mismo trabajo. Consulta la lista completa de opciones de configuración en el archivo README
de sondeo.
Configuración avanzada
La herramienta de escalamiento automático tiene opciones de configuración avanzada que te permiten controlar con mayor precisión cuándo y cómo se administran tus instancias de Spanner. En las siguientes secciones, se presenta una selección de estos controles.
Límites personalizados
La herramienta del escalador automático determina la cantidad de nodos o unidades de procesamiento que se agregarán o restarán a una instancia mediante los umbrales de Spanner recomendados para las siguientes métricas de carga:
- CPU de alta prioridad
- CPU promedio móvil de 24 horas
- Uso de almacenamiento
Te recomendamos que uses los umbrales predeterminados como se describe en Crea alertas para las métricas de Spanner. Sin embargo, en algunos casos, es posible que desees modificar los umbrales que usa la herramienta del escalador automático. Por ejemplo, puedes usar umbrales más bajos para lograr que la herramienta de escalamiento automático reaccione con mayor rapidez que para los umbrales más altos. Esta modificación ayuda a evitar que las alertas se activen en umbrales más altos.
Métricas personalizadas
Si bien las métricas predeterminadas en la herramienta de Autoscaler abordan la mayoría de las situaciones de rendimiento y escalamiento, hay algunas instancias en las que es posible que debas especificar tus propias métricas para determinar cuándo reducir la escala y escalar horizontalmente. Para estas situaciones, debes definir métricas personalizadas en la configuración con la propiedad metrics
.
Márgenes
Un margen define un límite superior y uno inferior alrededor del umbral. La herramienta del escalador automático solo activa un evento de ajuste de escala automático si el valor de la métrica supera el límite superior o es inferior.
El objetivo de este parámetro es evitar que los eventos de ajuste de escala automático se activen para fluctuaciones pequeñas de la carga de trabajo alrededor del umbral, lo que reduce la cantidad de fluctuación en las acciones del escalador automático. El umbral y el margen juntos definen el siguiente rango, según lo que desees que sea el valor de la métrica:
[threshold - margin, threshold + margin]
Especificar un parámetro de margen para una métrica es opcional y tiene un valor predeterminado de cinco puntos porcentuales tanto antes como debajo del parámetro.
Topologías de implementación
Para implementar la herramienta Autoscaler, decide cuál de las siguientes topologías es la mejor para satisfacer tus necesidades técnicas y operativas:
- Topología por proyecto: La infraestructura del escalador automático se implementa en el mismo proyecto que Spanner y necesita ajuste de escala automático.
- Topología centralizada: La herramienta de escalador automático se implementa en un proyecto y administra una o más instancias de Spanner en diferentes proyectos.
- Topología distribuida: La mayor parte de la infraestructura del escalador automático se implementa en un proyecto, pero algunos componentes de la infraestructura se implementan con instancias de Spanner con ajuste de escala automático en proyectos diferentes.
Topología por proyecto
En una implementación de topología por proyecto, cada proyecto con una instancia de Spanner que necesita ajuste de escala automático también tiene su propia implementación independiente de los componentes del escalador automático. Recomendamos esta topología para equipos independientes que desean administrar su propia infraestructura y configuración del escalador automático. También es un buen punto de partida para probar las capacidades de la herramienta Autoscaler.
En el siguiente diagrama, se muestra una vista conceptual de alto nivel de una implementación por proyecto.
Las implementaciones por proyecto que se muestran en el diagrama anterior tienen las siguientes características:
- Dos aplicaciones, aplicación 1 y aplicación 2, usan sus propias instancias de Spanner.
- Las instancias de Spanner (A) se encuentran en proyectos respectivos a la aplicación 1 y la aplicación 2.
- Se implementa un escalador automático independiente (B) en cada proyecto para controlar el ajuste de escala automático de las instancias dentro de un proyecto.
Para obtener un diagrama más detallado de una implementación por proyecto, consulta la sección Arquitectura.
Una implementación por proyecto tiene las siguientes ventajas y desventajas.
Ventajas:
- Diseño más simple: La topología por proyecto es el diseño más simple de las tres topologías, ya que todos los componentes del escalador automático se implementan junto con las instancias de Spanner para el ajuste de escala automático.
- Configuración: El control de los parámetros del programador pertenece al equipo que posee la instancia de Spanner, lo que le brinda al equipo más libertad para adaptar la herramienta de escalador automático a sus necesidades que una topología centralizada o distribuida.
- Límite claro de la responsabilidad de la infraestructura: el diseño de una topología por proyecto establece un límite claro de responsabilidad y seguridad en la infraestructura del escalador automático, debido a que el propietario del equipo de las instancias de Spanner también es el propietario de la infraestructura del escalador automático.
Desventajas:
- Más mantenimiento general: Cada equipo es responsable de la configuración y la infraestructura del escalador automático, por lo que puede ser difícil asegurarse de que todas las herramientas del escalador automático de la empresa sigan los mismos lineamientos de actualización.
- Auditoría más compleja: debido a que cada equipo tiene un alto nivel de control, una auditoría centralizada puede volverse más compleja.
Si deseas obtener información para configurar el escalador automático con una topología por proyecto, consulta Implementa una herramienta de escalador automático por proyecto o centralizado para Spanner.
Topología centralizada
Al igual que en la topología por proyecto, en una implementación de topología centralizada, todos los componentes de la herramienta de escalador automático residen en el mismo proyecto. Sin embargo, las instancias de Spanner se encuentran en proyectos diferentes. Esta implementación es adecuada para un equipo que administra la configuración y la infraestructura de varias instancias de Spanner desde una sola implementación de la herramienta del escalador automático en un lugar central.
En el siguiente diagrama, se muestra una vista conceptual de alto nivel de una implementación de proyecto centralizado:
La implementación centralizada que se muestra en el diagrama anterior tiene las siguientes características:
- Dos aplicaciones, aplicación 1 y aplicación 2, usan sus propias instancias de Spanner.
- Las instancias de Spanner (A) están en los proyectos respectivos a la aplicación 1 y la aplicación 2.
- El escalador automático (B) se implementa en un proyecto independiente para controlar el ajuste de escala automático de las instancias de Spanner en los proyectos de la Aplicación 1 y la Aplicación 2.
Si deseas obtener un diagrama más detallado de una implementación de proyecto centralizado, consulta Implementa una herramienta de escalador automático por proyecto o centralizado para Spanner.
Una implementación centralizada tiene las siguientes ventajas y desventajas.
Ventajas:
- Infraestructura y configuración centralizada: Un solo equipo controla los parámetros del programador y la infraestructura del escalador automático. Este enfoque puede ser útil en industrias muy reguladas.
- Menos mantenimiento general: El mantenimiento y la configuración suelen requerir menos esfuerzo en comparación con una implementación por proyecto.
- Políticas y auditoría centralizadas: las prácticas recomendadas entre los equipos pueden ser más fáciles de especificar y aplicar. Es posible que las auditorías sean más fáciles de ejecutar.
Desventajas:
- Configuración centralizada: Cualquier cambio en los parámetros del escalador automático debe pasar por el equipo centralizado, aunque el equipo que solicita el cambio sea propietario de la instancia de Spanner.
- Posible riesgo adicional: El equipo centralizado puede convertirse en un punto único de fallo, incluso si la infraestructura del escalador automático está diseñada para ofrecer una alta disponibilidad.
Si quieres ver un instructivo paso a paso para configurar la herramienta de escalador automático con esta opción, consulta Implementa una herramienta de escalador automático por proyecto o centralizado para Spanner.
Topología distribuida
En una implementación de topología distribuida, las instancias de Cloud Scheduler y Spanner que necesitan ajuste de escala automático residen en el mismo proyecto. Los componentes restantes de la herramienta de escalamiento automático residen en un proyecto administrado de forma central. Esta implementación es híbrida. Los equipos que poseen las instancias de Spanner solo administran los parámetros de configuración del escalador automático para sus instancias, y un equipo central administra la infraestructura restante del escalador automático.
En el siguiente diagrama, se muestra una vista conceptual de alto nivel de una implementación de proyecto distribuido.
La implementación híbrida que se muestra en el diagrama anterior tiene las siguientes características:
- Dos aplicaciones, aplicación 1 y aplicación 2, usan sus propias instancias de Spanner.
- Las instancias de Spanner (A) están en los proyectos de aplicación 1 y aplicación 2.
- Se implementa un componente independiente de Cloud Scheduler (C) en cada proyecto: aplicación 1 y aplicación 2.
- Los componentes restantes del escalador automático (B) se implementan en un proyecto independiente.
- La herramienta de escalador automático escala de forma automática las instancias de Spanner en los proyectos de aplicación 1 y aplicación 2 mediante las configuraciones enviadas por los componentes independientes de Cloud Scheduler en cada proyecto.
Para obtener un diagrama más detallado de la implementación de proyecto centralizado, consulta Implementa una herramienta de escalador automático distribuido para Spanner.
Una implementación distribuida tiene las siguientes ventajas y desventajas.
Ventajas:
- Los equipos de aplicaciones controlan la configuración y los programas: Cloud Scheduler se implementa junto con las instancias de Spanner que se escalan de forma automática, lo que brinda a los equipos de aplicaciones un mayor control sobre la configuración y la programación.
- El equipo de operaciones controla la infraestructura: Los componentes principales de la herramienta de escalamiento automático se implementan de forma centralizada, lo que permite que los equipos de operaciones controlen la infraestructura del escalador automático.
- Mantenimiento centralizado: La infraestructura de escalador automático está centralizada, lo que reduce la sobrecarga.
Desventajas:
- Configuración más compleja: Los equipos de aplicaciones deben proporcionar cuentas de servicio para escribir en el tema de sondeo.
- Posible riesgo adicional: La infraestructura compartida puede convertirse en un punto único de fallo, incluso si la infraestructura está diseñada para ofrecer una alta disponibilidad.
Para obtener información sobre cómo configurar la herramienta de escalador automático en una implementación distribuida, consulta Implementa una herramienta de escalador automático distribuido para Spanner.
Divisiones de datos
Spanner asigna rangos de datos llamados divisiones a los nodos o las subdivisiones de un nodo llamado unidades de procesamiento. El nodo o las unidades de procesamiento administran y entregan de forma independiente los datos en las divisiones asignadas. Las divisiones de datos se crean según varios factores, lo que incluye el volumen de datos y los patrones de acceso. Para obtener más detalles, consulta Spanner: esquema y modelo de datos.
Los datos se organizan en divisiones y Spanner administra las divisiones de forma automática. Por lo tanto, cuando la herramienta de escalamiento automático agrega o quita nodos o unidades de procesamiento, necesita permitir que el backend de Spanner tenga tiempo suficiente para reasignar y reorganizar las divisiones a medida que se agrega o se quita capacidad nueva de las instancias.
La herramienta del escalador automático usa períodos de enfriamiento en los eventos de escalamiento vertical y horizontal para controlar la rapidez con la que puede agregar o quitar nodos o unidades de procesamiento de una instancia. Este método permite que la instancia tenga el tiempo necesario para reorganizar las relaciones entre las notas de procesamiento o las unidades de procesamiento y las divisiones de datos. De forma predeterminada, los períodos de enfriamiento de escalamiento vertical y de reducción de escala se establecen en los siguientes valores mínimos:
- Valor de escalamiento vertical: 5 minutos
- Valor de reducción de escala: 30 minutos
Para obtener más información sobre las recomendaciones de escalamiento y los períodos de enfriamiento, consulta Escala instancias de Spanner.
Costos
El consumo de recursos de la herramienta de escalamiento automático es mínimo, por lo que, en la mayoría de los casos de uso, los costos son mínimos. Cuando se usa el escalador automático en Google Cloud, no hay costo. Por ejemplo, ejecutar una herramienta de escalador automático para administrar 3 instancias de Spanner con un intervalo de sondeo de 5 minutos por cada instancia está disponible sin costo. Esta estimación incluye lo siguiente:
- 3 trabajos de Cloud Scheduler
- 0.15 GB de mensajes de Pub/Sub
- 51840 invocaciones de 500 ms de funciones de Cloud Run
- Menos de 10 MB de datos en Firestore
La estimación no incluye los costos de operación de la base de datos de Spanner. Usa la calculadora de precios para generar una estimación de los costos según el uso previsto.
¿Qué sigue?
- Aprende a implementar la herramienta de escalador automático en una topología por proyecto o centralizada.
- Aprende a implementar la herramienta de escalador automático en una topología distribuida.
- Obtén más información sobre los límites recomendados de Spanner.
- Obtén más información sobre las métricas de uso de CPU y las métricas de latencia de Spanner.
- Obtén más información sobre las prácticas recomendadas para el diseño de esquemas de Spanner a fin de evitar los hotspots y cargar datos en Spanner.
- Explora arquitecturas de referencia, diagramas y prácticas recomendadas sobre Google Cloud. Consulta nuestro Cloud Architecture Center.