Escalado
Escalar un clúster es el proceso de añadir o quitar nodos de un clúster en respuesta a los cambios en la carga de trabajo o las necesidades de almacenamiento de datos del clúster.
Puedes escalar un clúster de Bigtable de las siguientes formas:
- Escalado automático
- Asignación manual de nodos
En la mayoría de los casos, elige el autoescalado. Cuando habilitas el autoescalado en un clúster, Bigtable monitoriza continuamente el clúster y ajusta automáticamente el número de nodos en función de tu configuración.
Puedes escalar tu clúster de Bigtable en función de métricas como el uso de CPU del clúster. Por ejemplo, si tu clúster está sometido a una carga pesada y su utilización de la CPU es alta, puedes añadir nodos al clúster hasta que se reduzca el uso de la CPU. También puedes ahorrar dinero quitando nodos del clúster cuando no se esté usando mucho.
Factor de escalado de nodos
Cuando creas un clúster de Bigtable, tienes la opción de configurarlo con un factor de escalado de nodos de 2. Si eliges esta configuración, Bigtable tratará dos nodos estándar como un nodo de computación único más grande y el clúster siempre se escalará en incrementos de dos nodos. Por lo tanto, hay menos límites de computación entre los nodos del clúster. En función de la carga de trabajo, las ventajas de duplicar el escalado de nodos son las siguientes:
- Se ha mejorado el rendimiento y la estabilidad de la latencia final.
- Mayor capacidad para absorber puntos de acceso
Puedes crear un clúster con un factor de escalado de nodos de 2x habilitado cuando usas laGoogle Cloud consola o la CLI de gcloud.
Puedes configurar el escalado de nodos al doble con el autoescalado o la asignación manual de nodos.
Para ver las limitaciones, consulta Limitaciones del factor de escalado de nodos.
Clústeres pequeños
La escalabilidad de nodos al doble es óptima para cargas de trabajo más grandes. Si estás pensando en cambiar de un escalado de nodos estándar (por un factor de uno) a un escalado de nodos de 2x, ten en cuenta las implicaciones económicas. En el caso de cargas de trabajo más pequeñas, como las que se ejecutan en un clúster con un nodo, usar el escalado de nodos 2x cuesta el doble. Del mismo modo, si se usa el escalado de nodos 2x en una carga de trabajo que antes se ejecutaba en un clúster con 3 nodos, los costes aumentan un 33%.
Por otro lado, en el caso de una carga de trabajo que se haya ejecutado en un clúster grande, como un clúster con 50 nodos, el efecto de un factor de escalado de nodos de 2 es pequeño en relación con el número de nodos.
Bigtable devuelve un error si intentas crear un clúster con un factor de escalado de nodos de 2x en una zona no admitida.
Limitaciones
El escalado de clústeres está sujeto a la disponibilidad de los nodos, tarda en completarse, no puede compensar un diseño de esquema inadecuado y debe hacerse de forma gradual. En las siguientes secciones se describen estas limitaciones, así como las que se aplican al escalado de nodos al doble.
Disponibilidad de los nodos
Las cuotas de nodos se aplican tanto si un clúster tiene asignación manual de nodos como si tiene habilitado el autoescalado. Consulta Cuotas y disponibilidad de nodos para obtener más información.
Retraso mientras se reequilibran los nodos
Después de añadir nodos a un clúster, pueden pasar hasta 20 minutos con carga antes de que notes una mejora significativa en el rendimiento del clúster. Por lo tanto, si tu carga de trabajo implica picos cortos de actividad alta, añadir nodos a tu clúster en función de la carga de la CPU no mejorará el rendimiento, ya que, cuando Bigtable vuelva a equilibrar tus datos, el pico de actividad habrá terminado.
Para planificar este retraso, puedes añadir nodos al clúster, ya sea mediante programación o a través de la Google Cloud consola,antes de aumentar la carga del clúster. De esta forma, Bigtable tiene tiempo para reequilibrar tus datos en los nodos adicionales antes de que aumente la carga de trabajo. En los clústeres que usan la asignación manual de nodos, cambia el número de nodos. En los clústeres que usan el autoescalado, cambia el número mínimo de nodos. Cuando el tráfico vuelva a la normalidad, cambia de nuevo la configuración de los nodos.
Aumento de la latencia debido a una reducción demasiado rápida
Cuando disminuyas el número de nodos de un clúster para reducir la escala, intenta no reducir el tamaño del clúster en más de un 10% en un periodo de 10 minutos. Si se reduce la escala demasiado rápido, pueden producirse problemas de rendimiento, como un aumento de la latencia, si los nodos restantes del clúster se ven sobrecargados temporalmente.
Problemas de diseño de esquemas
Si hay problemas con el diseño del esquema de tu tabla, añadir nodos a tu clúster de Bigtable puede que no mejore el rendimiento. Por ejemplo, si realizas un gran número de lecturas o escrituras en una sola fila de tu tabla, todas las lecturas o escrituras se dirigirán al mismo nodo de tu clúster. Por lo tanto, añadir nodos no mejorará el rendimiento. Por el contrario, si las lecturas y escrituras se distribuyen de forma uniforme entre las filas de la tabla, añadir nodos generalmente mejorará el rendimiento.
Consulta Diseñar tu esquema para obtener información sobre cómo diseñar un esquema que permita a Bigtable escalar de forma eficaz.
Limitaciones del factor de escalado de nodos
No puedes convertir un clúster con escalado de nodos estándar para que use el escalado de nodos 2x. Debes crear un clúster y habilitar el escalado de nodos 2x al crearlo. Para obtener más información sobre cómo añadir un clúster a una instancia, consulta Modificar una instancia.
No puedes configurar el escalado de nodos al doble en un clúster de HDD.
Puedes crear clústeres configurados con un escalado de nodos de 2x en todas las regiones de Bigtable, pero no en todas las zonas. Las siguientes zonas no pueden contener un clúster con un escalado de nodos de 2x:
- 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
Siguientes pasos
- Consulta información sobre el autoescalado de Bigtable.
- Consulta cómo monitorizar tu instancia, tanto de forma programática como a través de la consola de Google Cloud .