Acerca de los grupos de lectura

Los grupos de lectura de Cloud SQL admiten el balanceo de cargas para tus grandes cargas de trabajo de lectura.

¿Qué son los grupos de lectura?

Un grupo de lectura es una colección de instancias de réplica de lectura que se usa para distribuir tus grandes cargas de trabajo de lectura. Estas cargas de trabajo se pueden redireccionar desde la instancia principal al grupo de lectura para reducir la carga en la instancia principal.

Cada réplica de lectura en el grupo de lectura se denomina nodo de grupo de lectura.

Puedes escalar tu grupo de lectura de varias maneras:

  • Aumentar o reducir la escala: Modifica la cantidad de nodos de grupo de lectura en el grupo de lectura para escalar la capacidad de balanceo de cargas de forma horizontal. Cada grupo de lectura admite entre 1 y 7 nodos de grupo de lectura.
  • Aumentar o reducir la escala verticalmente: Modifica el tipo de máquina asociado con un nodo de grupo de lectura para escalar la capacidad de balanceo de cargas de forma vertical. Una vez definida, la configuración se aplica de manera uniforme a cada nodo de grupo de lectura en el grupo de lectura.

Cuando modificas la configuración del nodo de grupo de lectura, como el almacenamiento, la conectividad o las marcas de configuración de la base de datos, los cambios se aplican automáticamente de manera uniforme a cada nodo de grupo de lectura en el grupo de lectura.

Accede a un grupo de lectura a través de un solo extremo de lectura

Se puede acceder al grupo de lectura a través de un solo extremo de lectura con una dirección IP inmutable. Las conexiones realizadas a través del extremo se redireccionan automáticamente a uno de los nodos de grupo de lectura. Cuando deseas que el grupo de lectura aumente o escale horizontalmente, no es necesario volver a configurar las aplicaciones que se conectaron anteriormente a este solo extremo de lectura, incluso si puedes crear nodos de grupo de lectura nuevos en el grupo de lectura o borrar los anteriores.

Cada nodo de grupo de lectura también tiene su propia dirección IP. Si bien no se recomienda como un enfoque eficiente para acceder a tus datos, puedes usar estas direcciones IP para solucionar problemas de rendimiento de nodos de grupo de lectura individuales.

Para obtener más información sobre cómo recuperar la información de conexión del grupo de lectura o los nodos de grupo de lectura (ya sean direcciones IP o una cadena de conexión), consulta Cómo ver la información del grupo de lectura.

Replicación

La replicación del grupo de lectura de Cloud SQL se implementa mediante grupos de disponibilidad de escalamiento de lectura de SQL Server.

Para obtener más información, consulta Acerca de la replicación.

Características del grupo de lectura

Se aplican las siguientes características:

  • Un grupo de lectura con dos o más nodos está cubierto por el Acuerdo de Nivel de Servicio (ANS).
  • Los nodos de grupo de lectura del grupo de lectura siempre residen en la misma región, según lo especificado por el usuario. Google Cloud alternates la residencia del nodo de grupo de lectura entre todas las zonas de la región.
  • Una instancia principal puede tener uno o más grupos de lectura.
  • Las siguientes operaciones generan un tiempo de inactividad de menos de un segundo:
    • Aumentar o reducir la escala (agregar o quitar nodos de grupo de lectura)
    • Aumentar o reducir la escala verticalmente (cambiar el tipo de máquina de los nodos en el grupo)
    • Convertir una réplica de lectura zonal existente en un grupo de lectura
  • Un grupo de lectura recibe mantenimiento antes que su instancia principal, de manera similar a réplicas de lectura. Al igual que las réplicas de lectura, los grupos de lectura reciben mantenimiento durante el período de mantenimiento de la instancia principal.
  • Cada nodo de grupo de lectura tiene las mismas métricas disponibles que una réplica de lectura de Cloud SQL.
  • Cuando se usa gcloud o la Google Cloud consola para describir los detalles de un proyecto, se muestra el nombre del grupo de lectura, pero no los nombres de los nodos de grupo de lectura individuales.

Limitaciones

Se aplica la siguiente limitación:

  • Los grupos de lectura solo están disponibles para instancias de edición de Cloud SQL Enterprise Plus en la nueva arquitectura de red. La instancia principal asociada con un grupo de lectura también debe ser una instancia de edición de Cloud SQL Enterprise Plus.
  • Puedes crear un máximo de siete réplicas de lectura por instancia principal. Este valor puede incluir cualquier cantidad combinada de réplicas de lectura y recuento de nodos de grupo de lectura en una instancia de grupo de lectura. Por ejemplo, una instancia principal puede tener dos réplicas de lectura y un grupo de lectura independiente de cinco réplicas de lectura (nodos de grupo de lectura).
  • No se admite el ajuste de escala automático del grupo de lectura para instancias de SQL Server.
  • La recuperación ante desastres avanzada no es compatible con los grupos de lectura. Las instancias principales no pueden usar grupos de lectura ni réplicas en cascada.
  • El tráfico se entrega desde los nodos de grupo de lectura según si la base de datos está en buen estado, pero independientemente de qué tan alto sea el retraso de replicación en ese nodo de grupo de lectura. El tráfico se puede entregar desde un nodo de grupo de lectura con retraso, incluso si hay otro nodo de grupo de lectura disponible que no tenga retraso. Se considera que una base de datos está en buen estado si el proceso de la base de datos está en funcionamiento y puede responder consultas, pero no hay ningún requisito sobre qué tan recientes son los datos que se entregan.
  • No se garantiza que una sola sesión lógica se conecte a varios nodos de grupo de lectura en el grupo de lectura. Es posible que las solicitudes posteriores en una sesión se conecten a un nodo de grupo de lectura que tenga una posición de replicación más baja que el nodo de grupo de lectura que entregó una solicitud anterior, lo que puede hacer que el estado de la base de datos parezca retroceder en el tiempo.
  • No se admiten los siguientes tipos de actualizaciones:
    • Si bien los grupos de lectura aún reciben actualizaciones de mantenimiento de Cloud SQL, no puedes actualizar tu grupo de lectura ni su instancia principal asociada a una versión principal nueva de la base de datos.
    • Iniciar o detener nodos del grupo de lectura.
  • Además de las operaciones que no se admiten en las réplicas de lectura, las siguientes operaciones no se admiten en los grupos de lectura:
  • No se pueden usar certificados SSL/TLS con una CA compartida o una CA administrada por el cliente con un grupo de lectura.
  • Un grupo de lectura no puede replicarse en otra instancia, por ejemplo, una réplica en cascada o otro grupo de lectura.
  • Un grupo de lectura debe replicarse directamente desde una instancia principal. No puede ser una réplica en cascada.
  • Cuando creas o escalas un grupo de lectura, debes esperar a que finalicen las operaciones anteriores de creación de grupos, reducción de escala o escalado horizontal asociadas con el grupo de lectura. Esta restricción se aplica a cualquier otro grupo de lectura asociado con la misma instancia principal. Si deseas escalar varios grupos de lectura asociados con la misma instancia principal, debes esperar a que finalicen las operaciones de escalamiento asociadas con el primer grupo de lectura antes de comenzar a escalar el siguiente grupo de lectura. Si emites solicitudes simultáneas, es posible que recibas el siguiente error: Operation failed because another operation was already in progress..
  • Solo se puede convertir una réplica zonal ubicada en la misma región que la principal para usarla en un grupo de lectura.
  • Los nodos de grupo de lectura pueden experimentar diferentes niveles de retraso de replicación, lo que puede generar lecturas incoherentes. Si tu aplicación requiere una coherencia de lectura alta, te recomendamos que aumentes la escala verticalmente de una sola réplica de lectura en lugar de usar un grupo de lectura.
  • Cloud SQL repara automáticamente los nodos de grupo de lectura en las siguientes condiciones:
    • Cuando la instancia está inactiva
    • Cuando se interrumpe la replicación

    En estas situaciones, si creas accesos adicionales desde la instancia principal, no podrás acceder con esos accesos después de que se vuelva a crear el nodo de grupo de lectura Asegúrate de que el acceso que usas para el extremo de lectura esté disponible desde la instancia principal.

  • Microsoft no admite la replicación de objetos de servidor.

    Cualquier objeto a nivel del servidor que crees en una réplica de lectura también se debe crear y administrar en la instancia principal. Estos objetos no se replican automáticamente.

    Este comportamiento se aplica en las siguientes situaciones, aunque no es una lista exhaustiva:

    • Reparar un grupo de lectura
    • Convertir una réplica de lectura en un grupo de lectura
      • Los objetos a nivel del servidor, como los accesos, se vuelven inaccesibles.
      • Si creas un acceso que existe en la réplica de lectura original, pero no en la instancia principal, el acceso no se replica en el nuevo nodo de grupo de lectura.
    • Convertir un grupo de lectura en una réplica de lectura
      • Si creas un acceso en un grupo de lectura y no en la instancia principal, y luego inhabilitas el grupo de lectura, el acceso ya no existe.

    Estos son algunos ejemplos de objetos a nivel del servidor que no se replican:

    Para obtener más información, consulta la documentación de Microsoft.

  • El certificado de encriptación de datos transparente (TDE) está bloqueado para las operaciones de importación y exportación.
  • Siempre debes importar y exportar certificados TDE desde la instancia principal. Los certificados TDE se replicarán automáticamente en todas las réplicas de lectura del grupo de lectura, no importa el tipo de réplica.
  • No se admiten las operaciones de importación y exportación de TDE. Siempre importa el certificado TDE desde la instancia principal.

¿Qué sigue?