我需要在N台计算机(K >> N)上创建K个重叠的Cassandra集群。每个群集可以具有1到N个节点。我知道一种方法是为节点所属的每个群集创建一个单独的进程(或docker容器)。
但是我的问题是我可以更改Cassandra以允许创建子集群吗?这意味着每个节点上将只运行1个Cassandra实例,但是我将能够控制数据复制和数据放置,以便在一个子集群中进行例如Quorum写入。
答案 0 :(得分:1)
否,无法按照您的描述定义子集群-每个进程始终只有一个Cassandra集群。
但是Cassandra有Datacenter的概念,它定义了机器所在的位置,而键空间则定义了如何在数据中心和节点之间复制数据。像QUORUM
这样的一致性级别取决于密钥空间配置。
在您的情况下,我会朝这个方向考虑-定义数据中心,创建必要的键空间,并为该键空间设置正确的复制因子。