我最近一直在评估大型的键值商店,并且我继续使用“读取修复”一词,但不知道他们在谈论什么。我认为这与交易有关,但我不确定。
有人可以解释它是什么以及它与传统数据库的工作方式有何不同?也许提供一些伪代码来帮助解释?
答案 0 :(得分:4)
为了提高可伸缩性,许多可伸缩的键值存储允许您只为一段数据写入大多数副本。 (所以,如果你有5个副本,你只需要写3个副本)。阅读时,请务必阅读大多数副本。这样你就可以保证读取至少一个具有最新值的副本。
读取修复意味着当您检测到某些副本具有较旧的值时,使用较新的值更新它们只是为了减少系统中过时值的数量。这是“反熵”程序的一个例子。
答案 1 :(得分:2)
我认为读取修复意味着在不同节点上有2个副本的数据。
开:http://highscalability.com/drop-acid-and-think-about-data我发现了这个:
读取修复 - 当客户端执行时 读取和节点不同意 数据取决于客户选择 正确的数据并告诉节点 新的正确状态。
我希望这是正确的:)