2010-07-10 44 views
0

我有多个服务器包含相同的表架构,但每个负责一部分整体数据。没有一台机器需要包含所有的数据。每台机器只包含与其部门有关的数据。在这种情况下是否有中央DB服务器?

是否有一个中央数据库服务器将包含所有的数据,或只是一个中央数据库服务器,可用于访问其他服务器?

回答

1

这听起来像你正在做的是分区的数据。请记住CAP Theorem指出您在此配置中始终无法获得辅助功能和数据一致性。通常情况下,你会有数据服务器(如你的例子),然后使用不同的服务器来读写SQL。他们可以分发(只要他们知道所有的数据服务器)。请记住,“在分布式系统中,没有中心仲裁者的真相”。

我们在生产网络中使用相同的安装程序,其中较快的服务器是具有最近2年价值数据的群集,然后是较慢的存档服务器。结果可以跨越整个服务器集合,具体取决于查询。如果报告需要归档数据,它会查询单独的服务器,以在幕后执行连接。