Scaling

Le scaling d'un cluster est le processus consistant à ajouter ou supprimer des nœuds d'un cluster en réponse aux modifications des charges de travail ou des besoins en stockage de données. Lorsque vous créez un cluster, vous pouvez également configurer le facteur de scaling des nœuds pour le cluster. Avant de configurer le scaling, prenez connaissance des limites.

Vous pouvez effectuer le scaling de votre cluster Bigtable en fonction de métriques telles que l'utilisation du processeur du cluster. Par exemple, si votre cluster est soumis à une charge importante et que l'utilisation du processeur est élevée, vous pouvez ajouter des nœuds au cluster jusqu'à ce que l'utilisation du processeur diminue. Vous pouvez également réaliser des économies en supprimant des nœuds du cluster lorsqu'il n'est pas utilisé de manière intensive.

Vous pouvez procéder au scaling d'un cluster Bigtable de différentes manières :

Scaling horizontal

Dans la plupart des cas, choisissez l'autoscaling. Lorsque vous activez l'autoscaling pour un cluster, Bigtable surveille en permanence le cluster et ajuste automatiquement le nombre de nœuds en fonction de vos paramètres.

Scaling vertical du niveau en mémoire

Le niveau en mémoire Bigtable utilise un scaling vertical entièrement géré pour le débit, ce qui permet aux clusters de répondre presque instantanément aux pics de trafic de lecture ponctuelle.

Le scaling vertical ajuste automatiquement chaque nœud pour répondre aux exigences de la charge de travail et fonctionne de manière fluide avec l'autoscaling Bigtable. Chaque nœud Bigtable pour lequel le niveau en mémoire est activé est soumis à une limite de scaling vertical. Si cette limite est atteinte, l'autoscaling Bigtable ajoute des nœuds dans la configuration maximale des nœuds pour prendre en charge la charge de travail et rééquilibrer le trafic.

Pour en savoir plus sur les limites de scaling vertical, consultez Quotas et limites. Pour en savoir plus sur la capacité de débit en mémoire par nœud, consultez Comprendre les performances.

Facteur de scaling des nœuds

Lorsque vous créez un cluster Bigtable, vous pouvez le configurer avec un facteur de scaling de nœud de 2x. Lorsque vous choisissez cette configuration, Bigtable traite deux nœuds standards comme un seul nœud de calcul plus grand, et le cluster est toujours mis à l'échelle par incréments de deux nœuds. Par conséquent, il y a moins de limites de calcul entre les nœuds du cluster. Selon la charge de travail, les avantages du scaling de nœuds 2x sont les suivants :

  • Amélioration du débit et de la stabilité de la latence de queue
  • Meilleure capacité à absorber les hotspots

Vous pouvez créer un cluster avec un facteur de scaling de nœud x2 activé à l'aide de la consoleGoogle Cloud ou de la gcloud CLI.

Vous pouvez configurer le scaling des nœuds x2 avec l'autoscaling ou l'allocation manuelle des nœuds. Dans l'édition Enterprise Plus, vous devez activer le scaling des nœuds x2 pour accéder à la limite de stockage hiérarchisé étendue de 64 To par nœud (preview).

Pour connaître les limites, consultez Limites du facteur de scaling des nœuds.

Petits clusters

Le scaling de nœuds x2 est optimal pour les charges de travail plus importantes. Si vous envisagez de passer d'un scaling de nœud standard (par un facteur de un) à un scaling de nœud x2, tenez compte des implications financières. Pour une charge de travail plus petite, par exemple une charge de travail exécutée sur un cluster avec un nœud, l'utilisation d'un scaling de nœud 2x coûte deux fois plus cher. De même, l'utilisation d'un scaling de nœud 2x pour une charge de travail qui était auparavant exécutée sur un cluster de trois nœuds augmente les coûts de 33 %.

En revanche, pour une charge de travail qui s'exécutait auparavant sur un grand cluster, par exemple un cluster de 50 nœuds, l'effet d'un facteur de scaling de nœud de 2x est faible par rapport au nombre de nœuds.

Limites

Le scaling de cluster est soumis à la disponibilité des nœuds, prend du temps, ne peut pas compenser une conception de schéma inappropriée et doit être effectué progressivement. Les sections suivantes décrivent ces limites, ainsi que celles qui s'appliquent au scaling de nœuds 2x.

Disponibilité des nœuds

Les quotas de nœuds s'appliquent si l'allocation manuelle ou l'autoscaling sont activés sur le cluster. Pour en savoir plus, consultez la section Quotas et disponibilité des nœuds.

Délai pendant le rééquilibrage des nœuds

Une fois que vous avez ajouté des nœuds à un cluster, un délai de 20 minutes peut s'écouler avant que vous constatiez une amélioration significative des performances du cluster. Par conséquent, si votre charge de travail implique des pics d'utilisation courts, l'ajout de nœuds en fonction de la charge de processeur n'améliorera pas les performances de votre cluster, car le pic d'utilisation sera probablement terminé avant que Bigtable ne rééquilibre vos données.

Pour gérer ce délai, vous pouvez ajouter des nœuds à votre cluster de façon automatisée ou via la console Google Cloud avant d'augmenter la charge du cluster. Cette approche donne suffisamment de temps à Bigtable pour rééquilibrer vos données entre les nœuds supplémentaires avant d'augmenter la charge de travail. Sur les clusters qui utilisent l'allocation manuelle de nœuds, modifiez le nombre de nœuds. Sur les clusters qui utilisent l'autoscaling, modifiez le nombre minimal de nœuds. Une fois que votre trafic revient à la normale, rétablissez vos anciens paramètres de nœud.

Le niveau en mémoire gère les pics de trafic grâce à un scaling vertical presque instantané. Lorsque Bigtable ajoute des nœuds via l'autoscaling et que la capacité de débit du niveau en mémoire augmente, il gère automatiquement le partitionnement des données dans le niveau en mémoire.

Augmentation de la latence provoquée par une réduction trop rapide de la capacité

Lorsque vous diminuez le nombre de nœuds d'un cluster pour effectuer un scaling à la baisse, essayez de ne pas réduire la taille du cluster de plus de 10 % sur une période de 10 minutes. Un scaling à la baisse trop rapide peut entraîner des problèmes de performances, tels qu'une augmentation de la latence, si les nœuds restants du cluster sont temporairement surchargés.

Problèmes de conception de schémas

Si vous rencontrez des problèmes lors de la conception du schéma de votre table, l'ajout de nœuds à votre cluster Bigtable peut ne pas améliorer les performances. Par exemple, si vous avez un grand nombre de lectures ou d'écritures sur une seule ligne de votre table, toutes les lectures ou écritures sont envoyées au même nœud de votre cluster. Par conséquent, l'ajout de nœuds n'améliore pas les performances. En revanche, si les lectures et les écritures sont réparties uniformément sur les lignes de votre table, l'ajout de nœuds améliore généralement les performances.

Consultez la page Concevoir votre schéma pour savoir comment concevoir un schéma permettant à Bigtable d'évoluer efficacement.

Limites des éditions

Le niveau en mémoire et le scaling vertical ne sont disponibles que pour les clusters SSD de l'édition Enterprise Plus.

Limites du facteur de scaling des nœuds

Vous ne pouvez pas convertir un cluster avec scaling de nœuds standard pour utiliser le scaling de nœuds x2. Vous devez créer un cluster et activer le scaling de nœuds x2 au moment de la création. Pour en savoir plus sur l'ajout d'un cluster à une instance, consultez Modifier une instance.

Vous ne pouvez pas configurer le scaling de nœuds 2x pour un cluster HDD.

Étapes suivantes