了解 Cassandra 没有我所追求的主从关系(点对点),Cassandra 的数据复制概念也是我期待的另一个功能。
但是,Cassandra 中是否有一个内置功能可以在不增强应用程序的情况下执行数据模型故障转移。我不是在集群故障转移之后,而是数据模型故障转移和可能的数据模型回滚。
并且还想知道本地数据库比较工具是否可能。
对不起,我的英语不好。
谢谢。
ETC:
数据模型 A 是 table1....table10(例如)
数据模型 B 是数据模型 A 的副本
设想....
控制中心东 - 3 个节点(一致性必须所有 table1....table10)
控制中心西 - 2 个节点(最终一致性 table1....table10)
控制中心北 - 1 个节点(某些表 table1...table5 的一致性必须很高,其余的最终一致性)
事件顺序
- 所有节点都读取/写入数据模型集 A(我的意思是客户端读取和写入数据模型集 A)。数据模型 A 是生产中的模型。
- 对数据模型 B 进行更改(添加新行、修改列值等)
- 从数据模型集 A 到数据模型集 B 的所有节点的故障转移或转换。
- 在故障转移期间,必须将数据模型 A 和 B 之间相同行的少量列值从数据模型 A 复制到 B。
- 故障转移后,检查应用程序是否基于新的数据模型 B 给出错误的计算(公式/输出)。
- 数据模型 B 有问题,所有节点都故障转移回数据模型 A。在再次运行 seq 2-3 之前检查/修复数据模型 B。
希望它不会太啰嗦。