Raft 算法介绍
Raft 是相比 Paxos 更易理解的一种一致性算法,它提供了和 Paxos 算法相同的功能和性能,但它的算法结构和 Paxos 不同。为了提升可理解性,Raft 将一致性算法分解成了几个关键模块,例如领导人选举、日志复制、安全性等。同时它通过实施一个更强的一致性来减少需要考虑的状态的数量。
Raft 是相比 Paxos 更易理解的一种一致性算法,它提供了和 Paxos 算法相同的功能和性能,但它的算法结构和 Paxos 不同。为了提升可理解性,Raft 将一致性算法分解成了几个关键模块,例如领导人选举、日志复制、安全性等。同时它通过实施一个更强的一致性来减少需要考虑的状态的数量。
要在分布式环境下达成一致性协议,需要满足某些约束。在《Paxos Made Simple》中,Lamport 老爷子解释了如何以约束条件逐渐加强的方式推导出 Paxos 分布式一致性算法。且 Lamport 老爷子指出,为了满足这些约束,最终形成类似 Paxos 的算法几乎是不可避免的(almost unavoidably),比如同一时期(Liskov & Oki, 1988)在《Viewstamped replication》中作为数据副本存储系统实现的一部分也独立的发明了一个分布式一致性算法,但它们的基本原理是一致的(Lampson, 1996)。
BM25 和向量空间模型(Vector Space Model, VSM)都是经典的信息检索模型,在信息检索领域得到了广泛采用。相比较而言,BM25 比向量空间模型有更坚实的数学理论基础,并且在文档长度、词项频率等对相关性影响判断方面有更优异的表现。这里对 BM25 概率检索模型的原理做一个简单介绍。