2017-11-14 17 views
1

카파 드라 (Cassandra) DB와 키패드에 다시 테이블을 만들고 싶지 않습니다. 아시다시피, cassandra의 핵심 기능은 복제입니다.하지만 복제하고 싶지는 않습니다. 난이 DC1 중 하나를 복제 할 수단 알 수 있듯이키 공간으로 카산드라 복제를 비활성화하는 방법

CREATE KEYSPACE IF NOT EXISTS myKeyspace 
    WITH replication={'class':'NetworkTopologyStrategy', 'dc1': '1'}; 

:

현재 i'am 각 DC에 같은 키 스페이스를 생성 DC3, DC1, DC2 :

는 I 3 개 데이터 센터를 가지고 세명의 다른 DC들? 복제하지 않으려면 어떻게해야합니까?

답변

3
CREATE KEYSPACE IF NOT EXISTS myKeyspace WITH replication={'class':'NetworkTopologyStrategy', 'dc1': '1'}; 

즉, dc1에 복제 인수 1이 있음을 의미합니다. 그래서 당신은 현재 당신이 원하는 것을 가지고 있습니다. 복제 계수 1은 하나의 노드 만 데이터를 보유 할 것이며 다른 곳에서는 복제되지 않는다는 것을 의미합니다. 이 수는 데이터를 보유하는 노드의 수에 대한 것이 아니라 복사본 수에 대한 것입니다. 당신이 원하는 경우

은 그것을 이런 식으로 뭔가 될 다른 DC에 복제 :

CREATE KEYSPACE IF NOT EXISTS myKeyspace WITH replication={'class':'NetworkTopologyStrategy', 'dc1': '1', 'dc2': '1', 'dc3': '3'}; 

DC1은 DC2 3의 데이터를해야합니다 1 개 노드와 DC1에서 데이터를해야합니다, 1 개 노드에 데이터를해야합니다 의미 노드