首页 文章

Cassandra复制问题:即使DC1的复制因子为0,我也可以看到密钥空间和表复制到DC2

提问于
浏览
0

我有两个DC:

DC1:

  • Node1:RAC1

  • Node2:RAC1

DC2:

  • Node3:RAC1

我正在使用 GossipingPropertyFileSnitch 并且我已经删除了文件 cassandra-topology.properties 并且仅对每个节点使用带有以下配置的cassandra-rackdc.properties:

DC = DC1

架= RAC1

prefer_local =真

在DC2上创建如下所示的键空间:

CREATE KEYSPACE "test_rf"
  WITH REPLICATION = {
   'class' : 'NetworkTopologyStrategy',
   'DC1' : 0
   'DC2' : 1
};

我假设这个密钥空间 should not 被复制(我理解为甚至没有看到) DC1: Node1 and Node2 .

但是,我可以在DC1的每个节点中看到键空间 . 此外,我可以看到在DC2上创建的任何表复制到DC1 .

有人可以解释为什么会这样吗?或者我完全错过了什么!

1 回答

  • 2

    它只有在Cassandra环的两个数据中心上创建的关键空间和表定义的元数据 .

    它不是到处复制的实际数据 . 这可以通过登录到各个节点并检查数据目录来确认 . 实际上文件夹可能已经创建,但是你不应该在keypace / table /目录中看到任何sstable文件 .

    实际上,您可以从任何数据中心读取/写入该表 . 当您从DC1读取/写入时,它实际上从DC2提供数据 .

相关问题