Configuraciones regionales, birregionales y multirregionales

En esta página, se describen los diferentes tipos de opciones de configuración de instancias disponibles en Spanner, y las diferencias y compensaciones entre ellas.

Configuración de instancias

La configuración de una instancia de Spanner define la posición geográfica y la replicación de las bases de datos en esa instancia. Cuando creas una instancia, debes configurarla como regional, birregional o multirregional. Para ello, debes seleccionar una configuración de instancia, que determina en qué lugar se almacenan los datos de la instancia:

Las opciones de configuración de instancias con regiones y topologías de replicación fijas se denominan configuraciones de instancia base. Puedes crear configuraciones de instancias personalizadas y agregar réplicas opcionales de solo lectura. No puedes cambiar la topología de replicación de la configuración de la instancia base. Para obtener más información, consulta Réplicas de solo lectura.

Puedes mover la instancia desde cualquier configuración de instancia a cualquier otra configuración de instancia regional o multirregional (por ejemplo, de us-centra1 a nam3).También puedes crear una nueva configuración de instancia personalizada con réplicas adicionales y, luego, mover la instancia a la nueva configuración de instancia personalizada. Por ejemplo, si tu instancia está en us-central1 y quieres agregar una réplica de solo lectura us-west1, debes crear una nueva configuración de instancia personalizada con us-central1 como la configuración base y agregar us-west1 como una réplica de solo lectura. Luego, mueve tu instancia a esta nueva configuración de instancias personalizada.

Configuraciones regionales

Los servicios de Google Cloud están disponibles en diferentes ubicaciones de América del Norte, América del Sur, Europa, Asia y Australia. Si tus usuarios y servicios se encuentran dentro de una misma región, elige una configuración de instancia regional para las lecturas y escrituras de latencia más baja.

Para cualquier configuración regional base, Spanner mantiene tres réplicas de lectura y escritura, cada una dentro de una zona diferente de Google Cloud en esa región. Cada réplica de lectura y escritura contiene una copia completa de tu base de datos operativa que puede entregar solicitudes de lectura y escritura y de solo lectura. Spanner usa réplicas en zonas diferentes para que, si se produce un error en una sola zona, tu base de datos permanezca disponible.

Opciones de configuración disponibles

Spanner ofrece las siguientes opciones de configuración de instancias regionales básicas:

Nombre de la configuración base Descripción de la región Región opcional
América
northamerica-northeast1 Montreal ícono de hoja Bajo CO2
northamerica-northeast2 Toronto ícono de hoja Bajo CO2
southamerica-east1 São Paulo ícono de hoja Bajo CO2
southamerica-west1 Santiago ícono de hoja Bajo CO2
us-central1 Iowa ícono de hoja Bajo CO2 Solo lectura: asia-northeast1 1-O
asia-south1 1-O
europe-west2 1-O
europe-west9 1-O
us-east1 Carolina del Sur Solo lectura: us-central1 1-O
us-west1 1-O
us-east4 Virginia del Norte
us-east5 Columbus
us-south1 Dallas ícono de hoja Bajo CO2
us-west1 Oregón ícono de hoja Bajo CO2
us-west2 Los Ángeles
us-west3 Salt Lake City
us-west4 Las Vegas
Europa
europe-central2 Varsovia
europe-north1 Finlandia ícono de hoja Bajo CO2
europe-southwest1 Madrid ícono de hoja Bajo CO2
europe-west1 Bélgica ícono de hoja Bajo CO2 Solo lectura: us-central1 1-O
us-west1 1-O
europe-west2 Londres ícono de hoja Bajo CO2
europe-west3 Fráncfort ícono de hoja Bajo CO2
europe-west4 Países Bajos ícono de hoja Bajo CO2
europe-west6 Zúrich ícono de hoja Bajo CO2
europe-west8 Milán
europe-west9 París ícono de hoja Bajo CO2
europe-west10 Berlín ícono de hoja Bajo CO2
europe-west12 Turín
Asia-Pacífico
asia-east1 Taiwán
asia-east2 Hong Kong
asia-northeast1 Tokio
asia-northeast2 Osaka
asia-northeast3 Seúl
asia-south1 Bombay
asia-south2 Delhi
asia-southeast1 Singapur
asia-southeast2 Yakarta
australia-southeast1 Sídney
australia-southeast2 Melbourne
Oriente Medio
me-central1 Doha
me-central2 Dammam
me-west1 Tel Aviv
África
africa-south1 Johannesburgo

Replicación

Las opciones de configuración regionales básicas contienen tres réplicas de lectura y escritura. Cada mutación de Spanner requiere un quórum de escritura compuesto por la mayoría de las réplicas de votación. Los quórums de escritura se forman a partir de dos de las tres réplicas en las configuraciones regionales. Para obtener más información sobre las regiones líderes y las réplicas de votación, consulta Replicación.

Puedes crear una configuración de instancia regional personalizada y agregar réplicas opcionales de solo lectura. Las réplicas de solo lectura pueden ayudar a escalar las lecturas y admitir lecturas inactivas de baja latencia. Estas réplicas de solo lectura no forman parte del quórum de escritura y no afectan el ANS de Spanner >= 99.99% para las instancias regionales. Puedes agregar las ubicaciones que se indican en la columna Región opcional como réplicas opcionales de solo lectura. Si no ves la ubicación de réplica de solo lectura que elegiste, puedes solicitar una nueva región de réplica de solo lectura opcional. Para obtener más información, consulta Réplicas de solo lectura.

Prácticas recomendadas de rendimiento para las configuraciones regionales

Para obtener un rendimiento óptimo, sigue estas prácticas recomendadas:

Parámetros de configuración birregionales

La configuración de región doble te permite replicar los datos de la base de datos en varias zonas de dos regiones en un solo país, según lo define la configuración de la instancia.

Los parámetros de configuración de región doble hacen lo siguiente:

  • Entrega lecturas de dos regiones en un solo país.
  • Proporcionar ANS y disponibilidad más altas que los de los parámetros de configuración regionales
  • Cumplir con los requisitos de residencia de datos

Spanner ofrece configuraciones birregionales en Australia, Alemania, India y Japón.

Opciones de configuración disponibles

Spanner ofrece las siguientes configuraciones base de instancias birregionales:

Nombre de la configuración base Ubicación del recurso Regiones de lectura y escritura
dual-region-australia1 Australia Sídney: australia-southeast1 L,2R
Melbourne: australia-southeast2 2R
dual-region-germany1 Alemania Berlín: europe-west10 L,2R
Fráncfort: europe-west3 2R
dual-region-india1 India Bombay: asia-south1 L,2R
Delhi: asia-south2 2R
dual-region-japan1 Japón Tokio: asia-northeast1 L, 2R
Osaka: asia-northeast2 2R

Ventajas

Las instancias birregionales ofrecen estos beneficios principales:

  • Disponibilidad del 99.999%: en dos regiones del mismo país, lo que es mayor que el 99.99% de disponibilidad que proporcionan las configuraciones regionales de Spanner.

  • Distribución de datos: Replica automáticamente tus datos entre las dos regiones con garantías de coherencia sólida.

  • Requisitos de residencia de datos: Cumple con los requisitos de residencia de datos en los países que aparecen en los Parámetros de configuración disponibles birregionales.

Replicación

Una región doble contiene seis réplicas, tres en cada región. Una de las regiones se designa como la región líder predeterminada (enumerada en la tabla anterior). Puedes cambiar la región líder de una base de datos. En cada región, hay dos réplicas de lectura y escritura y una réplica testigo. Cuando ambas regiones están en buen estado y se ejecutan en una configuración de región doble, el quórum se establece en las seis réplicas. Se requiere un mínimo de dos réplicas en cada región para formar un quórum y confirmar una transacción.

Conmutación por error y por recuperación

Después de crear una configuración birregional, puedes ver la métrica Disponibilidad de quórum birregional en el panel Estadísticas del sistema. Esta métrica solo está disponible para configuraciones birregionales. Muestra el estado de tres quórums:

  • el quórum birregional, que usa los siguientes nombres internos:
    • au para Australia
    • de para Alemania
    • in para India
    • asia1 para Japón
  • el quórum de una sola región en cada región (por ejemplo, asia-south1 y asia-south2)

La métrica tiene un menú desplegable de disponibilidad de quórum, que muestra qué regiones se encuentran en modo en buen estado o de interrupción.

La métrica Disponibilidad de quórum birregional te ayuda a tomar decisiones autoadministradas cuando ocurre una conmutación por error en caso de fallas regionales. La conmutación por error autoadministrada suele completarse en un minuto. Para realizar una conmutación por error y por recuperación de forma manual, consulta Cambia el quórum birregional. Spanner también admite conmutaciones por error automáticas administradas por Google, que pueden tardar hasta 45 minutos desde el momento en que se detecta la falla por primera vez.

Ten en cuenta lo siguiente cuando tomes decisiones sobre conmutación por error y por recuperación:

  • Si los tres quórums están en buen estado, no se necesita ninguna acción.

  • Si en una de las regiones se muestra una interrupción, es probable que haya una interrupción del servicio regional. Esto puede provocar que las bases de datos que se ejecutan en tu quórum de región doble experimenten menos disponibilidad. Las operaciones de escritura también pueden fallar, ya que no se puede establecer un quórum y, con el tiempo, se agota el tiempo de espera de las transacciones. Mediante el panel Estadísticas del sistema, observa las tasas de errores y la latencia en tu base de datos. Si hay aumentos en las tasas de error o la latencia, recomendamos la conmutación por error, lo que significa cambiar el quórum birregional de la región doble a la que aún está en buen estado. Una vez que la región interrumpida vuelva a estar en buen estado, debes realizar una conmutación por recuperación y cambiar el quórum birregional de una región única a una birregional. Google realiza automáticamente la conmutación por error y por recuperación cuando detecta una interrupción regional. También puedes conmutar por error manualmente si detectas una interrupción. Sin embargo, debes recordar hacer una conmutación por recuperación manual.

  • Si el quórum birregional muestra una interrupción a pesar de que ambas regiones están en buen estado, hay un problema con la partición de red. Las dos regiones ya no pueden comunicarse entre sí, por lo que cada una se muestra en buen estado, aunque el sistema general no lo esté. En esta situación, te recomendamos realizar una conmutación por error a la región líder predeterminada. Una vez que se resuelve el problema de la partición de red y el quórum birregional vuelve a estar en buen estado, debes realizar una conmutación por recuperación manual.

La región doble no proporciona un objetivo de punto de recuperación (RPO) porque no hay pérdida de datos durante una interrupción regional o cuando surge un problema de partición de red.

Para verificar el modo (individual o doble) de tu quórum birregional, consulta Verifica el quórum birregional.

Prácticas recomendadas de conmutación por error y por recuperación

Entre las prácticas recomendadas de conmutación por error y por recuperación, se incluyen las siguientes:

  • No realices la conmutación por error a una sola región si no se producen fallas o interrupciones en la región. La conmutación por error a una sola región aumenta la posibilidad de que el sistema no esté disponible si esa única región falla.
  • Ten cuidado cuando selecciones la región para la conmutación por error. Si eliges una región incorrecta para la conmutación por error, la base de datos no estará disponible, la cual no se podrá recuperar antes de que la región vuelva a estar en línea.
  • Recuerda realizar la conmutación por error manualmente si realizaste una conmutación por error manual.

Limitaciones

Los parámetros de configuración de región doble tienen las siguientes limitaciones:

Configuraciones multirregionales

Los parámetros de configuración regionales de Spanner replican los datos entre varias zonas dentro de una misma región. Sin embargo, una configuración regional podría no ser óptima en los siguientes casos:

  • A menudo, tu aplicación necesita leer datos de varias ubicaciones geográficas (por ejemplo, para entregar datos a usuarios de Norteamérica y Asia).
  • Las operaciones de escritura se originan en una ubicación diferente a la de las operaciones de lectura (por ejemplo, si tienes cargas de trabajo de escritura grandes en Norteamérica y grandes cargas de trabajo de lectura en Europa).

Los parámetros de configuración multirregionales pueden hacer lo siguiente:

  • Entrega escrituras desde varias regiones.
  • Mantener la disponibilidad en caso de fallas regionales
  • Proporcionar ANS y disponibilidad más altas que los de los parámetros de configuración regionales

La configuración multirregional te permite replicar los datos de la base de datos en varias zonas de varias regiones, según lo define la configuración de la instancia. Estas réplicas adicionales te permiten leer datos con menor latencia desde varias ubicaciones cercanas o dentro de las regiones en la configuración.

Sin embargo, existen compensaciones porque, en una configuración multirregional, las réplicas de quórum (lectura y escritura) se distribuyen en más de una región. Es posible que observes latencia de red adicional cuando estas réplicas se comunican entre sí para formar un quórum de escritura. Las lecturas no requieren quórum. El resultado es que tu aplicación logra lecturas más rápidas en más lugares a costa de un pequeño aumento en la latencia de escritura. Para obtener más información, consulta El rol de las réplicas en las operaciones de escritura y lectura.

Opciones de configuración disponibles

Spanner ofrece las siguientes opciones de configuración de instancias multirregionales base:

Un continente

Nombre de la configuración base Ubicación del recurso Regiones de lectura y escritura Regiones de solo lectura Región testigo Región opcional
asia1 asia1 Tokio: asia-northeast1 L, 2R
Osaka: asia-northeast2 2R
Ninguna Seúl: asia-northeast3 Solo lectura: us-west1 1-O
us-east5 1-O
asia2 A asia2 Bombay: asia-south1 L,2R
Delhi: asia-south2 2R
Singapur: asia-southeast1 1R
Ninguna Ninguna
eur3 eur3 Bélgica: europe-west1 L, 2R
Países Bajos: europe-west4 2R
Ninguna Finlandia: europe-north1
eur5 eur5 Londres: europe-west2 L2R
Bélgica: europe-west1 2R
Ninguna Países Bajos: europe-west4 Solo lectura: us-central1 1-O
us-east1 1-O
eur6 eur6 Países Bajos: europe-west4 L,2R
Fráncfort: europe-west3 2R
Ninguna Zúrich: europe-west6 Solo lectura: us-east1 2-O
nam3 nam3 Virginia del Norte: us-east4 L2R
Carolina del Sur: us-east1 2R
Ninguna Iowa: us-central1 Solo lectura: us-west2 1-O
asia-southeast1 1-O
asia-southeast2 1-O
europe-west1 1-O
europe-west2 1-O
nam6 nam6 Iowa: us-central1 L2R
Carolina del Sur: us-east1 2R
Oregón: us-west1 1R
Los Ángeles: us-west2 1R
Oklahoma: us-central2
nam7 nam7 Iowa: us-central1 L,2R
Virginia del Norte: us-east4 2R
Ninguna Oklahoma: us-central2 Solo lectura: us-east1 2-O
us-south1 1-O
europe-west1 2-O
nam8 nam8 Los Ángeles: us-west2 L,2R
Oregón: us-west1 2R
Ninguna Salt Lake City: us-west3 Solo lectura: asia-southeast1 2R
europe-west2 2R
nam9 nam9 Virginia del Norte: us-east4 L,2R
Iowa: us-central1 2R
Oregón: us-west1 2R Carolina del Sur: us-east1
nam10 nam10 Iowa: us-central1 L,2R
Salt Lake City: us-west3 2R
Ninguna Oklahoma: us-central2
nam11 nam11 Iowa: us-central1 L2R
Carolina del Sur: us-east1 2R
Ninguna Oklahoma: us-central2 Solo lectura: us-west1 1-O
nam12 nam12 Iowa: us-central1 L,2R
Virginia del Norte: us-east4 2R
Oregón: us-west1 2R Oklahoma: us-central2
nam13 nam13 Oklahoma: us-central2 L,2R
Iowa: us-central1 2R
Ninguna Salt Lake City: us-west3
nam14 nam14 Virginia del Norte: us-east4 L,2R
Montreal: northamerica-northeast1 2R
Ninguna Carolina del Sur: us-east1
nam15 nam15 Dallas: us-south1 L,2R
Virginia del Norte: us-east4 2R
Ninguna Iowa: us-central1

Tres continentes

Nombre de la configuración base Ubicación del recurso Regiones de lectura y escritura Regiones de solo lectura Región testigo Región opcional
nam-eur-asia1 nam-eur-asia1 Iowa: us-central1 L,2R
Oklahoma: us-central2 2R
Bélgica: europe-west1 2R
Taiwán: asia-east12R
Carolina del Sur: us-east1 Solo lectura: us-west2 1-O
nam-eur-asia3 nam-eur-asia3 Iowa: us-central1 L,2R
Carolina del Sur: us-east1 2R
Bélgica: europe-west1 1R
Países Bajos: europe-west4 1R
Taiwán: asia-east1 2R
Oklahoma: us-central2
  • L: Es la región líder predeterminada. Para obtener más información, consulta Modifica la región líder de una base de datos.

  • 1R: Una réplica en la región.

  • 2R: Dos réplicas en la región.

  • 1-OR: Una réplica opcional. Puedes crear una configuración de instancia regional personalizada y agregar una réplica opcional de solo lectura. Para obtener más información, consulta Crea una configuración de instancias personalizada.

  • 2-O: hasta dos réplicas opcionales. Puedes crear una configuración de instancia regional personalizada y agregar una o dos réplicas opcionales de solo lectura. Recomendamos agregar dos (cuando sea posible) para ayudar a mantener una latencia de lectura baja. Para obtener más información, consulta Crea una configuración de instancias personalizada.

  • R: La configuración de esta instancia está restringida mediante una lista de entidades permitidas. Para obtener acceso, comunícate con tu administrador técnico de cuentas.

La ubicación del recurso para una configuración de instancias multirregional determina la garantía de la zona de recuperación ante desastres para la configuración. Define dónde se almacenan los datos en reposo.

Ventajas

Las instancias multirregionales ofrecen los siguientes beneficios principales:

  • 99.999% de disponibilidad, que es mayor que la disponibilidad del 99.99% que proporcionan la configuración regional de Spanner.

  • Distribución de datos: Spanner replica de forma automática tus datos entre regiones con garantías de coherencia sólida. Esto permite que tus datos se almacenen donde se usan, lo que puede reducir la latencia y mejorar la experiencia del usuario.

  • Coherencia externa: Aunque Spanner se replica en ubicaciones distantes geográficamente, puedes usar Spanner como si fuera una base de datos que se ejecuta en una sola máquina. Se garantiza que las transacciones son serializables, y el orden de las transacciones dentro de la base de datos es el mismo que el orden en el que los clientes observan las transacciones que se han realizado. La coherencia externa es una garantía más sólida que la “coherencia sólida”, que ofrecen otros productos. Obtén más información sobre esta propiedad en la página sobre TrueTime y la coherencia externa.

Replicación

Cada configuración multirregional básica contiene dos regiones que se designan como regiones de lectura y escritura, cada una de las cuales contiene dos réplicas de lectura y escritura. Una de estas regiones de lectura y escritura se designa como la región líder predeterminada, lo que significa que contiene las réplicas líderes de tu base de datos. Spanner también coloca una réplica testigo en una tercera región llamada región testigo.

Cada vez que un cliente emite una mutación a tu base de datos, se crean quórums de escritura, que consisten en una de las réplicas de la región líder predeterminada y dos de las cuatro réplicas de votación adicionales. (El quórum puede estar formado por réplicas de dos o tres de las regiones que conforman tu configuración, según las otras réplicas que participen en el voto). Además de estas cinco réplicas de votación, algunas configuraciones multirregionales base contienen réplicas de solo lectura para entregar lecturas de baja latencia. Las regiones que contienen réplicas de solo lectura se denominan regiones de solo lectura.

En general, las regiones de votación en una configuración multirregional se ubican geográficamente cerca, a menos de mil millas de distancia, para formar un quórum de baja latencia que permite escrituras rápidas (más información). Sin embargo, las regiones se encuentran a una distancia suficiente (en general, al menos, unas cientos de millas) para evitar fallas coordinadas. Además, si tu aplicación cliente se encuentra en una región no líder, Spanner usa el enrutamiento adaptado a líderes para enrutar transacciones de lectura y escritura de forma dinámica y, así, reducir la latencia en la base de datos. Para obtener más información, consulta Enrutamiento adaptado para líderes.

Puedes crear una configuración de instancia multirregional personalizada con réplicas opcionales de solo lectura. Las réplicas de solo lectura personalizadas que crees no se pueden incluir en el quórum de escritura. Puedes agregar las ubicaciones que se indican en la columna Región opcional como réplicas opcionales de solo lectura. Si no ves la ubicación de réplica de solo lectura que elegiste, puedes solicitar una nueva región de réplica de solo lectura opcional. Para obtener más información, consulta Réplicas de solo lectura.

Prácticas recomendadas de rendimiento para las configuraciones multirregionales

Para obtener un rendimiento óptimo, sigue estas prácticas recomendadas:

  • Diseña un esquema que evite los hotspots y otros problemas de rendimiento.
  • Para obtener una latencia de escritura óptima, ubica los recursos de procesamiento de las cargas de trabajo con alto volumen de operaciones de escritura en la región líder predeterminada o cerca de ella.
  • A fin de obtener un rendimiento de lectura óptimo fuera de la región líder predeterminada, usa un estado de inactividad de al menos 15 segundos.
  • A fin de evitar la dependencia de una sola región para tus cargas de trabajo, coloca recursos de procesamiento críticos en al menos dos regiones. Una buena opción es colocarlas junto a las dos regiones diferentes de lectura y escritura para que una interrupción en una sola región no afecte a toda la aplicación.
  • Aprovisiona suficiente capacidad de procesamiento para mantener el uso total de CPU de alta prioridad por debajo del 45% en cada región.
  • Si deseas conocer la cantidad de capacidad de procesamiento por nodo de Spanner, consulta el rendimiento de las configuraciones multirregionales.

Traslada una instancia

Puedes trasladar tu instancia de Spanner desde cualquier configuración de instancia a cualquier otra configuración de instancia, incluidas las configuraciones regionales y multirregionales. Trasladar la instancia no causa tiempo de inactividad, y Spanner continúa proporcionando las garantías de transacción habituales, incluida la coherencia sólida, durante el traslado.

Para obtener más información sobre el traslado de instancias de Spanner, consulta Traslada una instancia.

Configura la región líder predeterminada

Para cambiar la ubicación de la región líder predeterminada de la base de datos y que esté más cerca de conectar los clientes y reducir la latencia de la aplicación, puedes cambiar la región líder de cualquier instancia de Spanner que use una configuración multirregional. Si quieres obtener instrucciones para cambiar la ubicación de la región líder, consulta Cambia la región líder de una base de datos. Las únicas regiones aptas para convertirse en la región líder predeterminada de tu base de datos son las regiones de lectura y escritura en la configuración multirregional.

La región líder es responsable de controlar todas las escrituras de la base de datos, por lo tanto, si la mayor parte de tu tráfico proviene de una región geográfica, puedes moverlo a esa región para reducir la latencia. La actualización de la región líder predeterminada es económica y no implica la transferencia de datos. El nuevo valor tarda unos minutos en aplicarse.

Cambiar la región líder predeterminada es un cambio de esquema, que utiliza una operación de larga duración. Si es necesario, puedes obtener el estado de la operación de larga duración.

Ventajas y desventajas: configuraciones regionales frente a birregionales o multirregionales.

Configuración Disponibilidad Latencia Costo Localidad de datos
Regional 99.99% Latencias bajas de escritura dentro de la región. Menor costo, consulta pricing. Habilita la administración de datos geográficos.
Birregional 99.999% Latencias de lectura más bajas de dos regiones geográficas; un aumento pequeño en la latencia de escritura. Mayor costo, consulta pricing. Distribuye los datos en dos regiones en un solo país.
Multirregión 99.999% Latencias de lectura más bajas de varias regiones geográficas; un aumento pequeño en la latencia de escritura. Mayor costo, consulta pricing. Distribuye datos en varias regiones de la configuración.

¿Qué sigue?