RocksDB 可靠性和高性能是众所周知的。将其部署在分布式文件系统也是一种趋势,体现了存算分离的思路。
使用 raft + 单机 KV 引擎构建分布式 KV 存储,是一种常见的方式。比如 TiKV, CockroachDB 等。本文重点讨论如何进行 raft snapshot。
项目使用 tikv 作为分布式 KV 引擎构建了元数据服务。随着业务增长,P99 延迟急剧升高。在调优 tikv server 收获甚微后,我们把目光转回 tikv-client,结合源码和线上 metrics 分析可能的瓶颈和优化手段。
Stream Layer 扮演 WAS 数据存储的角色。本文阅读论文,思考并学习 stream/extent 的实现机制。