Tarantool architectural patterns
cover

Architectural
patterns

What solutions can you implement with Tarantool? And more importantly, how can they help you digitize your business? Check the basic Tarantool patterns here or request a demonstration to solve your problems right away.

Scroll

Reliable
NoSQL DBMS

You can use Tarantool as full-fledged storage and the primary data source. Our DBMS is fast, fault-tolerant, and ACID compliant. Tarantool is handy for project-wide solutions—for example, if you've just started a business. But it can also become a separate component of a microservice architecture. In any case, you won’t need any additional DBMS.

Disk writing, synchronous replication, and backup recovery tools allow you to store mission-critical system data, like user profiles or authorization data, in Tarantool.

Tarantool performance is ensured by the built-in application server. It is part of the in-memory storage engine, so you can customize database behavior for any business task. Tarantool provides two storage engines. You can store data in RAM only or write it to disk when the amount of data exceeds the RAM capacity.

Read and write performance up to 1 million RPS per core

Minimal response time of 50 nanoseconds

Synchronous and asynchronous replication

Database
сache сonsistency

Over half of all Tarantool solutions are designed to speed up legacy systems. When many users access the same dataset simultaneously, the number of reads grows significantly. The load increases, responses get delayed, and the customers become anxious. Consider a simple example—every employee checks their balance on the payday.

In this case, Tarantool acts as intermediate data storage. It is faster than traditional databases by orders of magnitude: it can manage a workload of over 100,000 RPS, compared with about 1,000 RPS for a conventional DBMS. This solution is easy to scale through replication and sharding.

Tarantool is persistent, so the cold start issue is gone. You don’t have to wait for hours until your cache warms up. Tarantool immediately restores the last state on restart because it is backed up through write-ahead logs and snapshots.

Fault tolerance powered by replication

Persistence: no cache warm-up

Ready-to-use connectors for popular databases, buses, and queues: Oracle, Kafka, MySQL, PostgreSQL, MQTT, and more

Scalability

Today, it is good practice to plan for scaling from the start. The vertical scaling reserve is very easily exhausted. Horizontal scaling of a system operating under load is difficult and expensive, there are no ready-made tools for this.

Therefore, it is economically advantageous to provide horizontal scaling from the very beginning of the project. In fact, it costs nothing, the nodes can be made on one machine, but if necessary, they can be immediately stretched. All this can be easily done on the in-memory Tarantool platform.

Tarantool can be used as a regular relational database when creating a working prototype. At the same time, it is effective in high-load systems and can scale horizontally using sharding. It is universal, so in the future you do not need to redo everything with another tool.

Suitable when storage or cache become too large and cannot cope with the load

Horizontal scaling is performed using built-in sharding and clustering tools

You can create nodes on one or more machines and scale up to 1000 clusters in 40 minutes

Data replication
from Oracle or MySQL

Replication proves useful in projects that require boosted performance and fault tolerance. Replication is a way of database scaling where information from one server is constantly copied to another server—a replica. In this case, Tarantool acts as a replica, which allows you to economize on hardware.

Since Tarantool stores data in RAM, you can improve the speed of your solution. To do so, implement the write-through approach and perform all writes through Tarantool.

You can put Tarantool replicas on different servers or deploy multiple Tarantool instances on the same server. We provide ACID guarantees for cluster transactions in distributed databases.

Automatic migration and application of the data schema

Read and write performance up to 1 million RPS per core

Ready-to-use connectors for popular databases, buses, and queues: Oracle, Kafka, MySQL, PostgreSQL, MQTT, and more

Persistent
queues

Most projects need a queue mechanism. Queues help separate complex processing stages and mitigate peak loads. A simple example of queue operation is mass mailing.

The Tarantool architecture includes an application server, which allows you to create queues suitable for your project. Your data are stored persistently and safely—in case of a restart, Tarantool immediately restores the last state. Tarantool also lets you create distributed queues.

The built-in application server allows you to implement complex queue logic. It provides at least once processing guarantees: in case of a failure, your message will be definitely delivered but can arrive several times.

PUT/GET speed in a queue up to 100,000 RPS per instance

Sharding data across standalone servers

Connectors for popular databases, buses, and queues: Oracle, Kafka, MySQL, PostgreSQL, MQTT, and more

Get a consultation

Request a demo

Thank you for your request

Tarantool experts will
contact you shortly