3

我最近一直在评估大型键值存储,我不断遇到“读取修复”这个词,但不知道他们在说什么。我认为这与交易有关,但不确定。

有人可以解释它是什么以及它与传统数据库的工作方式有何不同?也许提供一些伪代码来帮助解释?

4

2 回答 2

5

为了提高可扩展性,许多可扩展的键值存储允许您仅写入大部分数据的副本。(因此,如果您有 5 个副本,则只需写入其中的 3 个)。阅读时,请确保从大多数副本中读取。这样,您就可以保证至少读取一个具有最新值的副本。

读取修复意味着当您检测到某些副本具有较旧的值时,您使用较新的值更新它们只是为了减少系统中过时的值的数量。这是“反熵”过程的一个示例。

于 2009-12-10T21:21:15.443 回答
2

我认为读取修复意味着在不同的节点上有 2 个数据副本。

在:http ://highscalability.com/drop-acid-and-think-about-data我发现了这个:

读取修复 - 当客户端进行读取并且节点在数据上存在分歧时,由客户端选择正确的数据并告诉节点新的正确状态。

我希望这是正确的:)

于 2009-07-29T19:47:15.763 回答