术语“读取修复”应用于数据库时意味着什么?
我最近一直在评估大型键值存储,并且不断遇到“读取修复”一词,但不知道他们在说什么。 我认为这与交易有关,但不确定。
有人可以解释一下它是什么以及它与传统数据库的工作方式有何不同吗? 也许提供一些伪代码来帮助解释?
I've been evaluating large key-value stores recently and I keep coming acrosss the term 'read-repair' but have no clue what they are talking about. I think it has something to do with transactions but am not sure.
Could someone please explain what it is and how it is different from the way traditional databases work? Maybe provide some pseudo code to help explain?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
为了提高可扩展性,许多可扩展的键值存储允许您仅写入一段数据的大多数副本。 (因此,如果您有 5 个副本,则只需写入其中的 3 个)。 当您读取时,请确保从大多数副本中读取。 这样您就可以保证至少读取一个具有最新值的副本。
读取修复意味着当您检测到某些副本具有较旧的值时,您可以使用较新的值更新它们,以减少系统中过时值的数量。 这是“反熵”过程的一个示例。
To improve scalability, many scalable key-value stores allow you to write to only a majority of the replicas for a piece of data. (So, if you have 5 replicas, you only have to write to 3 of them). When you read, you make sure to read from a majority of the replicas. That way you're guaranteed to read at least one replica that has the newest value.
Read Repair means when you detect that some of the replicas have older values, you update them with the newer value just to reduce the number of obsolete values in the system. This is an example of a "Anti-Entropy" procedure.
我认为读取修复意味着在不同的节点上有 2 个数据副本。
上:http://highscalability.com/drop-acid-and-think-关于数据 我发现了这个:
我希望这是正确的:)
I think read-repair means theres 2 copys of the data on separate nodes.
On: http://highscalability.com/drop-acid-and-think-about-data I found this:
I hope this is correct :)