Tarantool Community Edition
cover

How Tarantool
works

Tarantool keeps all the data in random-access memory (RAM). Solutions of this class are fast, but they often lack data persistence. Tarantool solves this problem. Leave a request and we will tell you about the advantages of Tarantool

Scroll

When to use
in-memory?

In-memory solutions are very fast because they work in RAM. This helps you avoid overhead associated with caching and reading from disk. Plus, the memory-resident approach reduces TCO—the database utilizes the processor more efficiently, so you need fewer servers. There are four main cases where an in-memory database is a good fit for application development:

OLTP, maximum performance required

Need to speed up a slow application or database

Predictable response time from the system is needed

You are building a system that works in real time

Why
use Tarantool?

Why
use Tarantool?

icon

Combined DBMS and application server

Set the logic of data processing using the programming languages Lua (inside Tarantool) and Rust and C (for additional modules).

In Tarantool, the code and the database are in the same address space. Processing data at the place where it is stored allows you to reduce delays in the execution of operations.

icon

Synchronous and asynchronous
replication

Tarantool allows you to select synchronous or asynchronous replication mode depending on the task and the nature of the data.

Asynchronous replication guarantees maximum cluster speed and minimal delays. And synchronous replication, linearizable reads and the MVCC (multi-version concurrency control) engine together provide the highest possible level of consistency — strict serializable.

icon

Secondary indexes

You can create indexes for any data in Tarantool. Searching indexed fields is faster and more predictable.

If you need to select similar data based on several criteria, you can create multiple indexes for a single table. Tarantool supports both regular and JSON indexes.

icon

Hybrid data
storage model

In Tarantool, you can choose a data storage model. Use a tabular format, and when the number and names of fields are not known in advance — JSON.

For a table, you can set a format that fixes the data types in the columns: for the entire table or only for a part of it.

icon icon icon icon
Scroll

Tarantool Ecosystem

Guaranteed data
persistence in Tarantool

Working in RAM doesn't mean that you risk losing all your data. Tarantool has embedded mechanisms that ensure data safety.

Write-ahead logging

Tarantool in-memory engine uses write-ahead logging. The transaction result returns only after it's been saved to disk. Even an unexpected server restart wouldn’t cause data loss.

Synchronous replication

When a disk or a server fails, replication helps prevent data loss.

In Tarantool, the replication lag is typically 100–200 microseconds, which is equal to network latency and virtually reduces the probability of data loss to zero. You can configure synchronous replication only for critical data in specific tables for a full guarantee of persistence.

Tarantool is ACID
compliant

ACID stands for atomicity, consistency, isolation, and durability. In-memory databases often sacrifice durability. This is related to the very principle of RAM storage, which carries the risk of losing some information in case of failure or restart. To minimize this risk, Tarantool uses the following:

Write-ahead
logs

Data state
snapshots

Synchronous writing to several replicas

Infinite expansion

Built-in clustering helps you make multiple copies on different servers or split data across multiple nodes.

With three clicks in the web interface, you can make a new replica or connect an additional server.

Data distribution, load balancing, and failover are automatic. If one node fails, the load is automatically transferred to the replica.

cover

Get a consultation

Request a demo

Thank you for your request

Tarantool experts will
contact you shortly