复制中的副本

时间:2012-11-15 00:26:09

标签: replication distributed-system

系统中的数据是项目集合,即对象。这些逻辑对象由称为副本的物理副本集合实现。副本是物理对象,每个都存储在一台计算机上,其数据数据和行为与系统操作的某种程度的一致性有关。

我的问题是

1对象应该是物理的,副本应该是逻辑的 2是复制品的精确副本,还是原始副本的一部分,即足够的信息 3存储副本的位置以及单个对象的数量是多少? 4当客户端连接到对象时,他们是否正在访问副本或原始对象?

我试图在线找到我的问题的答案,但不能在stackoverflow上发布。

1 个答案:

答案 0 :(得分:2)

答案主要取决于您使用的“系统”。没有一般的复制机制。但是,问题#1和#2的答案应该始终相同:1。副本服务器是物理对象2.副本服务器是一个精确的副本。 几乎每个分布式系统都使用本土的东西。以下是一些例子:

  • MySQL复制:客户端/服务器应用程序。在主服务器上执行的事务将被转移到从服务器。已配置的从站数是副本数。副本和原始版本不一样:副本是原版的延迟版本。您的问题的答案:

    1. 由配置的从节点数决定4.由客户端决定使用主节点或从节点之一
  • CouchBase集群:所有节点都相等,没有主节点。对象和副本通过节点之间的散列函数分发。如果节点发生故障,则其余节点将重新分配故障节点的对象和副本。您的问题的答案:3。您可以配置您想要的副本数量。 4.有两种选择:

    • 客户端可以连接到任何节点,如果对象位于其他位置,节点将代理请求
    • 客户端了解对象分发机制并了解集群的结构。因此,客户端可以直接连接到存储所需对象的节点。