系统中的数据是项目(即对象)的集合。这些逻辑对象由一组称为副本的物理副本实现。副本是物理对象,每个都存储在一台计算机上,其数据和行为与系统操作的某种程度的一致性相关联。
我的问题是
1 对象应该是物理的,副本应该是逻辑的 2 副本是精确副本还是原始副本的一部分,即足够的信息 3 副本存储在哪里,单个对象有多少个副本?4 当客户端连接到对象时,他们访问的是副本还是原始对象?
我试图在网上找到我的问题的答案,但不能因此不得不在 stackoverflow 上发布。
系统中的数据是项目(即对象)的集合。这些逻辑对象由一组称为副本的物理副本实现。副本是物理对象,每个都存储在一台计算机上,其数据和行为与系统操作的某种程度的一致性相关联。
我的问题是
1 对象应该是物理的,副本应该是逻辑的 2 副本是精确副本还是原始副本的一部分,即足够的信息 3 副本存储在哪里,单个对象有多少个副本?4 当客户端连接到对象时,他们访问的是副本还是原始对象?
我试图在网上找到我的问题的答案,但不能因此不得不在 stackoverflow 上发布。
答案主要取决于您使用什么“系统”。没有通用的复制机制。但是,问题 #1 和 #2 的答案应该始终相同: 1. 副本是物理对象 2. 副本是精确副本。几乎每个分布式系统都使用自产的东西。这里有一些例子:
MySQL 复制:客户端/服务器应用程序。在 master 上执行的事务将被转移到 slave。配置的从属设备的数量是副本的数量。副本和原始版本不同:副本是原始版本的延迟版本。回答您的问题:
CouchBase 集群:所有节点都是平等的,没有主节点。对象和副本通过散列函数分布在节点之间。如果一个节点发生故障,其余节点将重新分发故障节点的对象和副本。您的问题的答案: 3. 您可以配置您想要拥有的副本数。4. 有 2 个选项: