2017-04-03 4 views
1

je courais un cluster avec 1 centre de données (10 nœuds) et Cassandra 2.1.7 installé sur chacun. Nous utilisons SimpleStretegy (ancienne erreur).Cassandra 'nodetool réparation -PR' prendre trop de temps

La situation est, je n'ai pas exécuté réparation nodetool depuis le début, et maintenant il y a des données d'environ 200 Go avec 3 RF.

En cours d'exécution réparation complète ou réparation incrémentale est même à ce point. J'ai donc essayé d'exécuter réparation complète. Mais ce résultat dans le nœud de coordinateur vers le bas. Donc, je finis par exécuter réparation de plages de partitions complètes (réparation nodetool -pr) sur chaque nœud un à la fois. Mais cela prend trop de temps (15+ heures pour chaque nœud, donc des semaines pour tous les nœuds). Est-ce que je fais cela mal, ou est-ce censé se produire? Ou c'est un problème de version?

À l'avenir, si j'effectue à nouveau des réparations complètes après avoir terminé cette opération, est-ce que cela prendrait également plusieurs semaines?

Répondre

2

Étant donné que la réparation complète est principalement affectée par la taille des données, elle doit prendre le même temps. Je suggère de passer aux réparations incrémentielles, cela devrait vous faire économiser temps et ressources.

est ici un article sur la façon de le faire en 2.1: https://docs.datastax.com/en/cassandra/2.1/cassandra/operations/opsRepairNodesMigration.html

+0

réparerait supplémentaire soit suffisante pour la santé globale du cluster? Cela peut-il éliminer la nécessité d'une réparation complète? – r005t3r

+0

Bien sûr, c'est ce que cela suppose de résoudre. C'est aussi un type de réparation par défaut dans les versions ultérieures. – nevsv