假设我们有一个分布式系统,其中数据按用户 ID 分片。在大多数情况下,每个分片都由拥有该分片的用户更改。有不止一个数据中心,用户使用 DNS、cookie 或其他方式在这些数据中心之间进行平衡。即在大多数情况下,每个用户都由一个数据中心提供服务。这意味着我们可以以 master-master 方式在数据中心之间复制数据。当然,写入冲突是可能的,但它们很少见,可以使用 CRDT 或矢量时钟来解决。如果某些数据中心出现故障,用户可能会被重定向到其他数据中心!
是否有任何数据库能够解决所描述的问题?也许 AWS 或 Google Cloud 提供的某些服务提供了解决方案?