Ai-je besoin absolument un minimum de 3 noeuds / serveurs pour un cluster Cassandra ou 2 volonté suffit-il?

StackOverflow https://stackoverflow.com/questions/2330562

Question

Certes, on peut exécuter un seul nœud de cluster, mais je voudrais un certain niveau de tolérance aux pannes.

À l'heure actuelle je peux me permettre de louer deux serveurs (8 Go de RAM, VLAN privé @ 1GigE) mais pas 3.

Ma compréhension est que 3 nœuds est le minimum requis pour un cluster Cassandra parce qu'il n'y a pas de majorité possible entre 2 noeuds, et la majorité est nécessaire pour résoudre les conflits versioning. Oh, attends, que je pense « vecteur » horloges et Riak? Ack! Cassandra utilise horodatages pour la résolution des conflits.

Pour 2 nœuds, quelle est la stratégie de lecture / écriture recommandée? Au cas où j'écrire généralement à tous les noeuds (deux) et lues à partir UN (N = 2; W = N / 2 + 1; W = 2/2 + 1 = 2)? Cassandra utilisera-handoff comme d'habitude laissé entrevoir même pour 2 nœuds, oui?

Ces 2 serveurs sont situés dans le même centre de données FWIW.

Merci!

Était-ce utile?

La solution

Si vous avez besoin la disponibilité sur un RF = 2, clustersize = 2 système, vous ne pouvez pas utiliser tout ou vous ne serez pas en mesure d'écrire quand un nœud descend.

C'est pourquoi les gens recommandent 3 nœuds au lieu de 2, parce que vous pouvez faire le quorum lit + écrit et toujours à la fois forte ont la cohérence et la disponibilité si un seul nœud descend.

Avec seulement 2 nœuds vous pouvez choisir si vous voulez une forte cohérence (écrire avec ALL) ou la disponibilité face à une défaillance d'un seul nœud (écrire avec ONE), mais pas les deux. Bien sûr, si vous écrivez avec UN cassandra fera allusion au besoin, etc. transfert pour le rendre à terme cohérente.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top