我有多个服务器包含相同的表模式,但每个服务器负责一部分整体数据。没有一台机器需要包含所有数据。每台机器仅包含与其部门相关的数据。
是否有一个包含所有数据的中央数据库服务器,或者只是一个可用于访问其他服务器的中央数据库服务器?
答案 0 :(得分:1)
听起来你正在做的是分区数据。请记住,CAP Theorem表示您在此配置中始终无法获得辅助功能和数据一致性。通常你会有数据服务器(比如你的例子),然后是不同的服务器,用于使用SQL之类的东西进行读/写。它们可以分发(只要他们知道所有数据服务器)。请记住,“在分布式系统中,没有真正的中央仲裁者”。
我们在生产网络中使用相同的设置,其中较快的服务器是具有最近2年数据的集群,然后存在较慢的存档服务器。结果可以根据查询跨越整个服务器集合。如果报告需要存档数据,则会查询在后台执行联接的单独服务器。