2012-09-22 24 views
7

Tengo problemas para entender el factor de replicación en Cassandra. En la documentación dice que: "El número total de réplicas en el clúster suele denominarse factor de replicación". Por otro lado, en la misma documentación, dice que "NetworkTopologyStrategy le permite especificar cuántas réplicas desea en cada centro de datos". Entonces, si tengo 2 centros de datos con NetworkTopologyStrategy, un factor de replicación de 2 significa que tendré 2 réplicas por centro de datos o 2 réplicas en general en el clúster.Factor de replicación de Cassandra cuando tiene varios centros de datos

Gracias.

Respuesta

8

Al utilizar NetworkTopologyStrategy, especifique su factor de replicación por centro de datos utilizando strategy_options:{data-center-name}={rep-factor-value} en lugar del strategy_options:replication_factor={rep-factor-value} global.

Aquí está un ejemplo concreto adaptado de http://www.datastax.com/docs/1.0/references/cql/CREATE_KEYSPACE

CREATE KEYSPACE Excalibur WITH strategy_class = 'NetworkTopologyStrategy' 
    AND strategy_options:DC1 = 2 AND strategy_options:DC2 = 2; 

En ese ejemplo, cualquier columna dada se almacenaría en 4 nodos total, con 2 en cada centro de datos.

3

El factor de replicación es básicamente el número de réplicas (copias adicionales) que desea tener.

Una cosa para recordar es su siempre establecido "El número de réplicas no debe ser mayor que el número de nodos". Entonces, si tiene 2 nodos, se supone que no debe tener 3 como factor de replicación.

+2

su respuesta es ambigua. Ha declarado que el factor de replicación es el número de copias adicionales, pero esto significa que si tiene 2 nodos, el factor de replicación no debería ser mayor que 1. ¿Es correcto? – Andrew

+0

@Andrew exactamente lo que estaba pensando, es ambiguo. – Sohail

+0

La afirmación de que el factor de replicación es el número de copias adicionales es incorrecta. En realidad, es la cantidad total de copias de cada fila de su tabla existente en el clúster. –

Cuestiones relacionadas