Skip to content
chiyoung edited this page Sep 28, 2014 · 29 revisions

ForestDB

ForestDB is a fast key-value storage engine that is based on a Hierarchical B+-Tree based Trie, or HB+-Trie, which was originally proposed by Jung-Sang Ahn at ACM SIGMOD 2011 Programming Contest. It was written in C++ and developed by Couchbase's Caching and Storage Team to provide a scalable and high performance storage layer for the Couchbase NoSQL database.

ForestDB can support efficient indexing and retrieval on a large number of variable-length keys, in terms of block device I/O operations. As discussed in the Performance section, it especially shows much better I/O performance on Solid-State Drives (SSDs). We have tested ForestDB in various server OS environments (Centos, Ubuntu, Mac OS X, Windows) and mobile OSs (iOS, Android).

Contents

This wiki provides a ForestDB overview, and describes the public APIs, implementation, integration into Couchbase Lite, performance results, and future work:

Releases

License

ForestDB is currently released under the Apache 2.0 license.

Code Contribution

We use the Gerrit code review system and Git for code review and repository management. If anyone wants to contribute the codes to the ForestDB project, please read the instructions in Couchbase Code Contribution Guideline

Issue Report

We use Jira to track issues in ForestDB. Please visit Couchbase Jira site to report any issues or bugs in ForestDB. When you create a Jira ticket, please select "Issues" -> "Create Issue" tab and then choose "Couchbase Server" as Project and "forestdb" as Component.

Contact

Clone this wiki locally