一句话:提出 DKVF 框架,通过关注点分离让一致性协议设计与存储等组件解耦,实现快速原型与性能评估。
分布式键值存储的一致性协议设计与评估通常需要大量工程工作,研究者难以快速实现并比较新协议。DKVF 基于关注点分离思想,将一致性协议、存储引擎等组件解耦,使协议设计者只需编写高层一致性逻辑,并可方便替换底层组件。为验证框架,作者用 DKVF 实现了最终一致性、COPS、GentleRain 和 CausalSpartan 四种已有协议;每个协议仅需编写与原文伪代码接近的一致性组件代码,约 1–2 天即可完成。DKVF 还提供运行集群和实验的工具集,支持性能评估与原型迭代。
We present our framework DKVF that enables one to quickly prototype and evaluate new consistency protocols for key-value stores. DKVF is designed based on the separation of concerns in creating distributed data stores. This separation of concerns allows the designers of consistency protocols to only focus on the high-level consistency protocols which gives them the opportunity to quickly deploy a consistency protocol and evaluate its performance. Moreover, the loose coupling of the different components allows us to easily change different components (e.g. storage engine) of an implementation. We demonstrate DKVF by implementing four existing protocols --eventual consistency, COPS, GentleRain and CausalSpartan-- with it. The implementation of these protocols was very convenient with DKVF, as it only required to write a piece of code for the consistency component that is very close to the pseudocode of the original papers. Hence, it was possible to achieve this in just 1-2 days per protocol. DKVF also comes with a toolset that facilitates running clusters and performing experiments. Tutorial video: https://www.youtube.com/watch?v=MFJQzsJkwfc&list=PLErtSVEHsnBJvoQQI6iqGn61oNrUVVuST