2015-10-16 80 views
2

Cassandra是否支持单向复制?假设我有2个DC,DC1和DC2。实时数据仅在DC1中写入,异步复制在DC2中发生。现在有办法,如果我在DC2中写入相同的数据,它不会在DC1中复制吗?Cassandra单向复制

回答

1

此功能时,可以使用create a keyspace

比方说,你想要的密钥空间1对在一个数据中心的两个数据中心和密钥空间2被复制:

这将复制一个数据中心的数据:

CREATE KEYSPACE keyspace1 WITH REPLICATION = { 'class' : 'NetworkTopologyStrategy', 'datacenter1' : 1 }; 

这两个数据中心:

CREATE KEYSPACE keyspace2 
    WITH REPLICATION = {'class' : 'NetworkTopologyStrategy', 'datacenter1' : 1, 'datacenter2' : 1}; 
0

没有单向复制的概念。您有几种选择:

1)使用低浓度水平(LOCAL_ *在写入DC2写这样的应用程序不会阻止复制到DC1

2)保持DCS在分开的环时)并与稳定的加载程序同步进行批量加载

2

没有单向复制的概念。如果您的复制因子是2,那么它将复制任何两个节点中的数据。您正在使用DC1和DC2,则必须使用“NetworkTopologyStrategy”并为每个DC定义复制因子。您的问题将自动使用“Snitch”工具解决,以决定数据存储在两个DC的不同节点中。