An in-memory database implementing a large subset of the CouchDB REST API. AvanceDB has blistering fast document lookup and map/reduce performance. If you are currently using CouchDB and struggle with view build times then AvanceDB should be a seamless replacement for your view workload.
We aim to support the following CouchDB features:
- Futon and Fauxton
- JavaScript Map/Reduce
- Replication
- Apache Lucene and ElasticSearch integration
- Compatibility with common CouchDB clients like Cradle, Nano and others
- Compatibility with PouchDB
AvanceDB is not designed to replace CouchDB for document storage. We have permanent document store functionality on the product roadmap but we are unlikely to realize this feature for quite a while.
The core is written in C++ 11 with Boost and map/reduce executed by an embedded SpiderMonkey JSAPI instance. We chose C++ because it is very fast and gives control over memory allocations that simply isn't available with managed languages like Java and C#.
AvanceDB will run on Linux on a humble Raspberry Pi 2 or an enterprise server. Via the magic of Brew you can spin up an instance of AvanceDB on OSX too. If you are running Windows you are out of luck, at least for the moment.
Check out our Wiki for information about building AvanceDB on your platform.
AvanceDB is under active development, you can check out the current API support status here.
If you are a C++ 11 ace with interest in NoSQL and CouchDB specifically then we'd love any contributions you have. Chat to us on Gitter if you think you can help us out.
We aim for all major CouchDB clients like Cradle, Nano, CouchDB-Python to operate with AvanceDB. We need unit tests for these platforms, so if you have the language skills and the time and want to contribute then we'd love to hear from you. We hang around on Gitter all the time, come over for a chat.