Rethinkdb RejectionDB:如何选择";“单一权威主副本”;在大洋的这一边

Rethinkdb RejectionDB:如何选择";“单一权威主副本”;在大洋的这一边,rethinkdb,Rethinkdb,我正在构建一个多坦能解决方案。客户来自世界各地,大多数在欧洲或美国,有些遍布各地 我希望有一个数据库集群,在美国、欧盟和新加坡有许多服务器 我希望用户为其数据选择一个权威的主副本。我该怎么做呢 我试图解决的问题是如何处理大西洋和太平洋上空的延迟。我不希望用户一直等待0.6-1.5秒的写入时间,如果我使用“美国单一主机”的方法,我会得到这样的结果 我还希望全局读取是在本地完成的,也就是说,在同一个大陆上,我会使用过时的读取,这就是为什么我要重新思考数据库。您可以将服务器标记与ReQL重新配置命令结

我正在构建一个多坦能解决方案。客户来自世界各地,大多数在欧洲或美国,有些遍布各地

我希望有一个数据库集群,在美国、欧盟和新加坡有许多服务器

我希望用户为其数据选择一个权威的主副本。我该怎么做呢

我试图解决的问题是如何处理大西洋和太平洋上空的延迟。我不希望用户一直等待0.6-1.5秒的写入时间,如果我使用“美国单一主机”的方法,我会得到这样的结果


我还希望全局读取是在本地完成的,也就是说,在同一个大陆上,我会使用过时的读取,这就是为什么我要重新思考数据库。

您可以将服务器标记与ReQL
重新配置
命令结合使用,以确保将给定表的主节点分配给特定的数据中心:

或者,您可以获得更细粒度的控制,并通过
表\u config
系统表将单个服务器分配为分片的主要服务器:

遗憾的是,您当前无法控制给定表中的哪些文档将由哪个服务器处理。如果您有一些文档应该在每个数据中心都有它们的主表,我建议您为每个文档创建单独的表,并按照上面所述相应地配置它们

要同时查询所有表,可以使用
union
术语:
r.table(“t_-US”).union(r.table(“t_-EU”)、r.table(“t_-Singapore”)


我希望这能有所帮助,如果您还有其他问题,请告诉我。

我非常喜欢按大陆划分表格并使用union的想法!