• Call us: 1(704) - 858 - 0065
  • Email us: dmngaya@dmnbigdata.com
  • Working Hours: 8am - 6pm

Bonnes pratiques pour le dimensionnement d’un Cluster Cassandra

1.0 Introduction

1.1 But

Ce document est destiné à fournir des informations sur les meilleures pratiques de dimensionnement des clusters Cassandra et DataStax Enterprise.

2.0 Dimensionnement de Cluster Cassandra

Parlons de la taille de notre cluster. C’est un gros processus, il y a beaucoup de règles à suivre. Nous devons comprendre ce que nous faisons.
Le processus

  • Nous devrons comprendre
  • Modèle de données d’application et cas d’utilisation
  • Volume de données dans le temps
  • Vélocité des données: à quelle vitesse cela peut-il aller

2.1  Modèle de données et cas d’utilisation

  • Quel est le biais de lecture / écriture? Combien de lectures / seconde et écrit / seconde nous faisons.
  • C’est plus lu ou plus écrit?
  • Quels sont mes SLA? Le processus commercial nous donnera les accords de niveau de service.
  • Dois-je séparer mes données? Tout ira bien si mes données disparaissent après un an ou si je dois les conserver indéfiniment dans le temps.

2.2  Volume de données

  • Estimez la base de volume de votre application: vous consulterez des tableaux pour connaître les différents types de données et leur quantité par type de données. Combien de lignes par données aurez-vous? Cassandra ne stocke que les données que vous allez lui donner.
  • Données par nœud
(Moy. quantité de données par ligne) X (nombre de lignes) / # noeuds

2.3  Vélocité des données

  • Combien d’écritures par seconde? Si nous avons beaucoup d’écritures par seconde, cela peut augmenter votre capacitéCombien de lectures par seconde? Cela peut suivre avec le temps avec les écritures
  • Volume de données par opération: Si vous effectuez un million d’écritures par seconde, quel est le volume de données dans chaque écriture? Est-ce un Ko écrit ou 1 Mo écrit

2.4Factorisation en réplication

  • Multipliez par volume de noeud par facteur de réplication
  • Example: RF=3
(Volume de nœud 10 G par jour et par nœud) x (RF) = 30 G par nœud

Si vous connaissez un volume de données par nœud, nous devons le multiplier par le RF.

2.5  Test des limites

Vous devez également comprendre le matériel

  • Utilisez Casandra-stress pour simuler la charge de travail
  • Tester les serveurs de production: utiliser un serveur de production
  • Surveiller pour trouver des limites
  • La première chose à gérer est le disque: combien de disques avez-vous par nœud? Combien de débit pouvez-vous obtenir?
  • La CPU est la seconde: voyez-vous beaucoup de CPU lorsque vous exécutez votre opération? Avez-vous assez de CPU?

3.0 Exemple d’exercice de dimensionnement

  • Supposons que notre application crée 100G de données par jour
  • Les écritures seront 150k par seconde
  • Les lectures seront de 100K par seconde

Nous nous attendons à avoir une bonne idée de la manière dont nous pouvons dimensionner notre cluster.

3.1 

Exigences avant calcul

Facteur de réplication de 3
Multiple Data Center: Ici nous avons 2 DC
SLA: latence de lecture de 25 ms, 95e centile (n’utilisez pas la moyenne, mais seulement le 95e centile)

3.2  Résumé des tests

Lorsque nous avons testé des équipements de production, nous avons trouvé certaines limites. Nous savions que nous devions maintenir:

  • Fonctions de noeud permettant de maintenir une lecture inférieure à 25 ms
  • À la taille de paquet maximale, 50 000 écritures par seconde
  • À la taille de paquet maximale, 40 000 lectures / s
  • 4 T par nœud pour permettre une surcharge de compactage

    Nous avons maintenant l’estimation que chaque nœud peut gérer pour effectuer le calcul final.

3.3Dimensionnement pour le volume

(100G per day) X (30 days) X (6 months) = 18 T data
(18T data) X (RF 3) = 54 T total cluster load across the Cluster.

3.4 Combien de nœuds aurons-nous besoin de faire cela?

(54 T de données totales sur le cluster) / (4 T max par nœud) = 14 nœudsWe have two data centers to manage)
(14 nœuds) X (2 centres de données) = 28 nœuds au total

3.5Dimensionnement pour Velocity

(150 000 écritures / seconde) / (50 000 écritures / seconde par nœud) = 3 nœuds
La capacité de volume couvre la capacité d'écriture:
capacité d'écriture est beaucoup plus faible nous avons besoin sur le volume

3.6  Capacité future

  • Validez souvent vos hypothèses
  • Surveiller les changements au fil du temps
  • Prévoyez d’augmenter la taille de la grappe avant que vous en ayez besoin: nous serons sûrs de disposer du matériel, si nous sommes dans l’environnement en nuage, ce sera facile.
  • Soyez prêt à tirer si nécessaire avec la commande de mise hors service​

Laisser un commentaire

Fermer le menu
×
×

Panier