Escalamiento

El escalamiento de un clúster es el proceso de agregarle o quitarle nodos en respuesta a los cambios en su carga de trabajo o en las necesidades de almacenamiento de datos. Cuando creas un clúster, también puedes configurar el factor de ajuste de escala de nodos para el clúster. Antes de configurar el ajuste de escala, debes comprender las limitaciones.

Puedes escalar un clúster de Bigtable de las siguientes maneras:

En la mayoría de los casos, elige el ajuste de escala automático. Cuando habilitas el ajuste de escala automático para un clúster, Bigtable supervisa de forma continua el clúster y ajusta automáticamente la cantidad de nodos según tu configuración.

Puedes escalar tu clúster de Bigtable según métricas como el uso de CPU del clúster. Por ejemplo, si tu clúster tiene una carga pesada y su uso de CPU es alto, puedes agregar nodos al clúster hasta que el uso de CPU disminuya. Además, para ahorrar dinero, puedes quitar nodos del clúster cuando no se use con cargas pesadas.

Factor de escala del nodo

Cuando creas un clúster de Bigtable, tienes la opción de configurarlo con un factor de ajuste de escala de nodos de 2 veces. Cuando eliges esta configuración, Bigtable trata dos nodos estándar como un solo nodo de procesamiento más grande, y el clúster siempre se escala en incrementos de dos nodos. Como resultado, hay menos límites de procesamiento entre los nodos del clúster. Según la carga de trabajo, los beneficios del ajuste de escala de nodos 2 veces mayor incluyen lo siguiente:

  • Mejoras en la capacidad de procesamiento y la estabilidad de la latencia final
  • Mayor capacidad para absorber hotspots

Puedes crear un clúster con el factor de ajuste de escala de nodos 2x habilitado cuando usas la consola deGoogle Cloud o la CLI de gcloud.

Puedes configurar el ajuste de escala de nodos 2x con el ajuste de escala automático o la asignación manual de nodos.

Para conocer las limitaciones, consulta Limitaciones del factor de escalamiento de nodos.

Clústeres pequeños

El ajuste de escala de nodos 2x es óptimo para cargas de trabajo más grandes. Si planeas cambiar de un ajuste de escala de nodos estándar (por un factor de uno) a un ajuste de escala de nodos de 2x, ten en cuenta las implicaciones en los costos. Para una carga de trabajo más pequeña, como una que se ejecuta en un clúster con un nodo, usar el ajuste de escala de nodos 2x cuesta el doble. Del mismo modo, usar el doble de nodos para escalar una carga de trabajo que antes se ejecutaba en un clúster con 3 nodos aumenta los costos en un 33%.

Por otro lado, para una carga de trabajo que se ejecutó anteriormente en un clúster grande, como un clúster con 50 nodos, el efecto de un factor de ajuste de nodos de 2 veces es pequeño en relación con la cantidad de nodos.

Bigtable devuelve un error si intentas crear un clúster con un factor de ajuste de nodos de 2 en una zona no compatible.

Limitaciones

El escalamiento del clúster está sujeto a la disponibilidad de los nodos, tarda en completarse, no puede compensar un diseño de esquema inadecuado y debe realizarse de forma gradual. En las siguientes secciones, se describen estas limitaciones, así como las que se aplican al ajuste de escala de nodos 2x.

Disponibilidad de nodos

Las cuotas de nodos se aplican si un clúster tiene asignada de forma manual o el ajuste de escala automático habilitado. Consulta Cuotas y disponibilidad de nodos para obtener más detalles.

Retraso mientras los nodos se rebalancean

Después de agregar nodos a un clúster, pueden pasar hasta 20 minutos con carga para que veas una mejora notoria en el rendimiento. Como resultado, si tu carga de trabajo genera aumentos breves de actividad alta, agregar nodos a tu clúster en función de la carga de CPU no mejorará el rendimiento, ya que, para cuando Bigtable haya rebalanceado los datos, el aumento de actividad ya habrá terminado.

Para planificar esta demora, puedes agregar nodos a tu clúster, ya sea de manera programática o a través de la consola de Google Cloud , antes de aumentar la carga del clúster. Este enfoque permite que Bigtable tenga tiempo de rebalancear tus datos en los nodos adicionales antes de que aumente la carga de trabajo. En los clústeres que usan la asignación de nodos manual, cambia la cantidad de nodos. En los clústeres que usan el ajuste de escala automático, cambia la cantidad mínima de nodos. Después de que el tráfico vuelva a la normalidad, cambia la configuración del nodo.

Aumentos de latencia debido a una disminución del escalamiento demasiado rápida

Cuando disminuyes la cantidad de nodos en un clúster para disminuir el escalamiento, intenta no reducir el tamaño del clúster en más de un 10% en un período de 10 minutos. Disminuir el escalamiento demasiado rápido puede causar problemas de rendimiento, como un aumento de la latencia, si los nodos restantes del clúster se sobrecargan de forma temporal.

Problemas de diseño de esquemas

Si hay problemas con el diseño del esquema de tu tabla, es posible que agregar nodos a tu clúster de Bigtable no ayude a mejorar el rendimiento. Por ejemplo, si tienes una gran cantidad de lecturas o escrituras en una sola fila de tu tabla, todas estas irán al mismo nodo del clúster; por lo tanto, agregar nodos no mejorará el rendimiento. Por el contrario, si estas están distribuidas de manera uniforme entre las filas de tu tabla, por lo general, agregar nodos mejorará el rendimiento.

Consulta Diseña tu esquema para obtener detalles sobre cómo diseñar un esquema que permita que Bigtable se escale de manera efectiva.

Limitaciones del factor de escala del nodo

No puedes convertir un clúster con ajuste de escala de nodos estándar para que use el ajuste de escala de nodos 2x. Debes crear un clúster nuevo y habilitar el ajuste de escala de nodos 2x en el momento de la creación. Para obtener más información sobre cómo agregar un clúster a una instancia, consulta Modifica una instancia.

No puedes configurar el ajuste de escala de nodos 2x para un clúster de HDD.

Puedes crear clústeres configurados con un ajuste de escala de nodos de 2 veces en cada región de Bigtable, pero no en todas las zonas. Las siguientes zonas no pueden contener un clúster con un escalamiento de nodos de 2 veces:

  • asia-south1-c
  • europe-central2-c
  • me-central2-b
  • me-central2-c
  • northamerica-northeast1-a
  • northamerica-northeast1-b
  • southamerica-east1-c
  • us-south1-b
  • us-south1-c

¿Qué sigue?