假设我们有一个分布式系统,其中数据由用户ID进行分片。在大多数情况下,每个分片都由拥有此分片的用户更改。有多个数据中心,用户在这些数据中心之间使用DNS,cookie或其他方式进行平衡。即在大多数情况下,每个用户都由一个数据中心提供服务。这意味着我们可以以master-master方式在数据中心之间复制数据。当然,冲突的写入是可能的,但它们很少见,可以使用CRDT或矢量时钟来解决。如果某些数据中心出现故障,用户可能只是被重定向到其他数据中心!
是否有任何数据库能够解决所描述的问题?也许AWS或Google Cloud提供的某些服务提供了解决方案?
答案 0 :(得分:2)
我不能回答这里的具体用例,因为你可能想要分片的方式,但Aerospike有XDR所有群集都是对等的。
由于光速延迟,所有群集将使用XDR“最终保持一致”,此外我们还会批量处理数据中心之间的更新。然而,在每个集群中,Aerospike DB将立即保持一致。
请随时查看我们的文档以获取更多答案: