Tarantool is a Lua application server with a built-in database. It's best to think of as a Redis or Memcached with high level of customization. Alternatively, it's Node.JS with object persistency and master-master replication.
Tarantool is a Lua application server with a built-in database.
The key idea is in a new way of building Web applications - a data grid approach, when the database serves as the application backend as well, and there are many database instances running in parallel, to scale up and out.
Tarantool features:
- a drop-in replacement for Lua 5.1, based on LuaJIT 2.0; simply use #!/usr/bin/tarantool instead of #!/usr/bin/lua in your script
- Lua packages for non-blocking I/O, fibers and HTTP
- document data model with secondary keys
- two data engines: 100% in-memory with optional persistence and a 2-level disk-based B-tree, to use with large data sets
- iteration over data in forward and reverse order
- asynchronous master-master replication
- authentication and access control