Engula is a distributed key-value store, used as a cache, database, and storage engine.
Over the past few months, we have tweaked the architecture of engula. We focused on enhancing its architectural simplicity and ease of use.
Now it is a elastic and fault-tolerant distributed key-valuev store that can be used as a cache, database and storage engine.
You can check the new design document for more details.
Welcome to explore and have fun!
Engula has gone through a redesign in terms of its interface and architecture. The new design is based on the lessons we learned in the past few months, and it will provide a clearer guide for future development. You can check the new design document and discussion for more details.
The most important feature in Engula 0.3 is a set of data structures. In this release, Engula provides five data types: Any
, I64
, Blob
, List
, and Map
. Each data type provides a set of APIs to manipulate objects of that type. For example, you can add on I64
objects or push elements to List
objects.
Moreover, Engula supports ACID transactions across different data structures. For example, you can push an element to a list and insert an index to a map in the same transaction. This feature allows users to build more advanced applications on top of Engula.
Engula 0.3 also comes with a new server and a Rust client. You can get started with this tutorial. Welcome to explore and have fun!
We have published a design document to introduce Engula's concepts and architecture. For those who don't know much about Engula or haven't been around for a while, Engula has changed a lot, and the design document is the best place to get started.
Engula 0.2 comes with one engine and three kernels:
If you want to try it out, we prepare a tutorial for you. Have fun!