在cassandra多个数据中心写入数据

时间:2013-04-08 06:07:49

标签: cassandra

我想了解以下内容, 假设我们有两个数据中心DC1和DC2,每个数据中心有两个节点。 现在我已经形成了一个令牌环,其顺序为DC1:1 - DC2:1 - DC1:2 - DC2:2。 我们假设,我没有在DC之间配置我的副本。 现在我的问题是,如果我将数据写入DC2,那么密钥是否只映射到DC2中的节点,还是会映射到令牌环中的任何节点?

1 个答案:

答案 0 :(得分:1)

如果您的键空间复制选项设置为

{DC1:2}

(我假设你的意思是没有在DC之间配置副本。)然后数据只会存储在DC1上,因为DC2的复制因子隐含为0。您可以将数据写入任何节点(DC1或DC2)并将其转发。这是因为,在Cassandra中,写入的目的地不依赖于写入的节点。

但是,如果您使用

{DC1:2,DC2:2}

然后,无论写入的位置如何,所有数据都将被写入所有节点。