我们有一个场景,我们正在考虑使用Apache Cassandra来部署我们的数据存储需求。该设置将分布在不同地区(物理位置)的多个数据中心。 每个数据中心都有多个节点。 但是,我们最多可以为每个数据中心提供1个公共IP地址。 数据中心内的节点通过私有IP进行通信。 我们计划使用RF = 3和OldNetworkTopologyStrategy进行复制放置。
1。 这导致我们怀疑节点发现将如何发生以及多个数据中心之间将如何形成卡桑德拉环?
在这种情况下如何进行数据分区?
如果说数据驻留在数据中心1节点2中并且读取查询被发送到数据中心2节点1,假设DC2没有本地副本而不是如何读取查询被服务? 这是我们最关心的问题,因为找不到有关公共/私人知识产权的文章。
和Cassandra一样,任何节点都可以查询数据,写入请求也一样,cassandra是我们必须部署的环境中的首选。
你需要build立一个VPN; Cassandra假设每个节点都可以直接与其他节点通信(即使它执行高效的多DC写入,也就是只发送一个副本给每个DC,协调员将其转发给其他节点)。