分布式K/V存储方案-ForestDB
2015-04-05 16:16:36 阿炯

本站赞助商链接,请多关照。 ForestDB 是一个快速的 Key-Value 存储引擎,基于层次B +树单词查找树。由 Couchbase 缓存和存储团队开发,采用C/C++开发并在Apache协议下授权。


ForestDB is a key-value storage engine that is developed by Couchbase Caching and Storage Team, and its main index structure is built from Hierarchical B+-Tree based Trie, called HB+-Trie. HB+-Trie was originally presented at ACM SIGMOD 2011 Programming Contest, by Jung-Sang Ahn who works at Couchbase Caching and Storage Team.


特性

Key 和 Value 可以是任意二进制值
应用可以定制比较函数来支持自定义的 Key 顺序
可通过顺序号来获取 Value 值或者是 Key 的磁盘偏移量
Write-Ahead Logging (WAL) and its in-memory index are used to reduce the main index lookup / update overhead.
支持多版本并发控制 MVCC 和只追加的存储层
可创建多快照实例来提供数据库的不同视图
支持回滚
Ranged iteration by keys or sequence numbers is supported for a partial or full range lookup operation.
可针对每个 ForestDB 数据库文件配置手工和自动的压缩
支持 read_committed 或者 read_uncommitted 事务隔离级别


Compared with traditional B+-Tree based storage engines, ForestDB shows significantly better read and write performance with less storage overhead. ForestDB has been tested on various server OS environments (Centos, Ubuntu, Mac OS x, Windows) and mobile OSs (iOS, Android).

最新版本:1.0


项目主页:https://github.com/couchbase/forestdb