2010-02-24 15 views
10

Seguramente se puede ejecutar un clúster de nodo único, pero me gustaría algún nivel de tolerancia a fallas.¿Necesito absolutamente un mínimo de 3 nodos/servidores para un clúster Cassandra o serán 2 suficientes?

En la actualidad puedo pagar para alquilar dos servidores (8 GB de RAM, VLAN privada @ 1GigE), pero no 3.

Mi entendimiento es que 3 nodos es el mínimo necesario para un clúster Cassandra porque no hay posible mayoría entre 2 nodos, y se requiere una mayoría para resolver conflictos de versiones. Oh, espera, ¿estoy pensando en "relojes de vector" y Riak? ¡Ack! Cassandra usa marcas de tiempo para la resolución de conflictos.

Para 2 nodos, ¿cuál es la estrategia de lectura/escritura recomendada? ¿Debo escribir generalmente a TODOS (ambos) nodos y leer de UNO (N = 2; W = N/2 + 1; W = 2/2 + 1 = 2)? Cassandra usará la transferencia indirecta como siempre, incluso para 2 nodos, ¿sí?

Estos 2 servidores están ubicados en el mismo centro de datos FWIW.

Gracias!

Respuesta

18

Si necesita disponibilidad en un RF = 2, clustersize = 2 sistema, entonces no puede usar TODO o no podrá escribir cuando un nodo se cae.

Es por eso que la gente recomienda 3 nodos en lugar de 2, porque entonces puede hacer lecturas + escrituras de quórum y aún tener una gran coherencia y disponibilidad si un solo nodo deja de funcionar.

Con solo 2 nodos, usted puede elegir si desea una consistencia fuerte (escribir con ALL) o disponibilidad frente a una falla de un solo nodo (escriba con UNO) pero no ambos. Por supuesto, si escribe con ONE, Casandra hará un traspaso indirecto, etc., según sea necesario para que finalmente sea consistente.

+0

¿Sigue siendo así? Parece que el significado de "Nivel de consistencia UNO" en su respuesta se parece más al Nivel de Coherencia CUALQUIERA en las versiones actuales de Casandra. Supongo que CUALQUIERA se bifurcó de ONE en algún momento? –

+0

Cuando su número de nodos es equivalente al número de réplicas que tiene, ONE y ANY son equivalentes. – jbellis

Cuestiones relacionadas