Cassandra数据中心复制高级使用
对于一个项目,我们使用Cassandra集群来快速读取/写入大量面向列的生成数据 到目前为止,我们只有1个原型数据中心 我们现在计划将群集分为两个数据中心,以满足性能要求两个数据中心之间的数据传输非常缓慢: 数据中心1:位于我们的数据生产商服务附近:定期在Cassandra中集中写入所有数据每次写入的主键中都有一个“run_id”列 数据中心2:位于数据消费者服务附近:集中读取数据中心1为给定“运行id”生成的所有数据。 但是,我们希望我们的消费者服务仅访问其数据中心2附近的数据中心中的数据,并且当给定“run_id”的所有数据已从生产者服务生成的数据中心1数据完全复制时 我的问题是:在通知数据中心2附近的生产商服务开始使用数据中心2之前,我们如何确保所有数据都已在数据中心2中复制 到目前为止,我们的最佳解决方案仍然不够好:-p: producer services数据中心1一致地写入“所有”。但这会导致较差的分区故障容忍度和非常糟糕的写入性能。 producer services数据中心1写入一致性“local_quorum”,最后一个“run finished”值可以写入一致性“all”。但卡桑德拉似乎无法确保复制顺序。 你有什么建议吗 非常感谢Cassandra数据中心复制高级使用,cassandra,bigdata,datastax,Cassandra,Bigdata,Datastax,对于一个项目,我们使用Cassandra集群来快速读取/写入大量面向列的生成数据 到目前为止,我们只有1个原型数据中心 我们现在计划将群集分为两个数据中心,以满足性能要求两个数据中心之间的数据传输非常缓慢: 数据中心1:位于我们的数据生产商服务附近:定期在Cassandra中集中写入所有数据每次写入的主键中都有一个“run_id”列 数据中心2:位于数据消费者服务附近:集中读取数据中心1为给定“运行id”生成的所有数据。 但是,我们希望我们的消费者服务仅访问其数据中心2附近的数据中心中的数据,并
法布里斯似乎没有解决这个问题的灵丹妙药 我们设法为我们的应用程序使用一个数据中心。我们将使用另一个,但作为备份,可能会降级