Get your data in RAM. Get compute close to data. Enjoy the performance.
C C++ Lua CMake Python Ragel in Ruby Host Other
Latest commit 6bef337 Jan 13, 2017 @locker locker committed with kostja vinyl: separate range compaction from split
Currently, range compaction task always compacts all runs and mems, and
so shares the code base with the split task. However, this is going to
change once multi-level compaction is introduced, so we need to separate
Failed to load latest commit information.
FreeBSD/databases/tarantool Update URL for source tarball, fix debian/watch Sep 1, 2016
cmake Fix build on FreeBSD Jan 9, 2017
debian Bump versions in RPM and Debian packages Dec 16, 2016
doc doc: the site and the user guide was moved to a separate repository Jul 5, 2016
extra Fix another tarantoolctl bug Jan 19, 2017
rpm Bump versions in RPM and Debian packages Dec 16, 2016
src vinyl: separate range compaction from split Jan 23, 2017
test-run @ 8865771 gh-775: review fixes Dec 27, 2016
test tonumber64() is now consistent with tonumber() Jan 19, 2017
third_party Initial support for valgrind Dec 23, 2016
.appveyor.yml windows: add .appveyor.yml to enable Appveyor CI Oct 16, 2015 Travis CI: fix macOS build Jan 17, 2017
.gdbinit Initial public import Sep 8, 2010
.gitignore Debian: fix "tarantool.1: No such file or directory" on buildd Oct 6, 2016
.gitmodules Remove unused lz4 library Sep 29, 2016
.travis.yml Merge remote-tracking branch 'origin/1.6' into 1.7 Nov 30, 2016
AUTHORS Update AUTHORS Jul 21, 2016
CMakeLists.txt Initial support for valgrind Dec 23, 2016
Doxyfile Fix #1020: Build warnings when building public C API manual Sep 15, 2015 Move module.h to src/ Nov 13, 2015
LICENSE Update AUTHORS, tweak LICENSE May 20, 2016
README.FreeBSD Update README.FreeBSD: no need to use GCC any more Dec 24, 2015
README.MacOSX Update homebrew building instructions Jan 29, 2016 Remove build status until there is a stable criteria for it Jul 14, 2016
TODO Move away from launchpad bugs in the manual, web site comments, crash… Oct 5, 2013
snapcraft.yaml Add Snappy package Aug 19, 2016


Coverage Status Gitter

Tarantool is an in-memory database and application server.

Key features of the application server:

  • 100% compatible drop-in replacement for Lua 5.1, based on LuaJIT 2.1. Simply use #!/usr/bin/tarantool instead of #!/usr/bin/lua in your script.
  • full support for Lua modules and a rich set of own modules, including cooperative multitasking, non-blocking I/O, access to external databases, etc

Key features of the database:

  • MsgPack data format and MsgPack based client-server protocol
  • two data engines: 100% in-memory with optional persistence and a 2-level disk-based B-tree, to use with large data sets
  • multiple index types: HASH, TREE, RTREE, BITSET
  • asynchronous master-master replication
  • authentication and access control
  • the database is just a C extension to the app server and can be turned off

Supported platforms are Linux/x86 and FreeBSD/x86, Mac OS X.

Tarantool is ideal for data-enriched components of scalable Web architecture: queue servers, caches, stateful Web applications.

To download and install Tarantool as a binary package for your OS, please visit

To build Tarantool from source, see detailed instructions in the Tarantool documentation at

Please report bugs at We also warmly welcome your feedback in the discussion mailing list,

Thank you for your interest in Tarantool!