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
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?
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.
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.
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.
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.
Tarantool Ecosystem
Order a demo from
our experts
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.
Tell us about your tasks, and we will build
a solution for you on Tarantool