Top.Mail.Ru
Tarantool architectural patterns
Patterns image

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.

Reliable NoSQL DBMS

  • Read and write performance up to 1 million RPS per core
  • Minimal response time of 50 nanoseconds
  • Synchronous and asynchronous replication

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 iis 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.

Cache Cache

Database сache сonsistency

  • 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

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.

Cache

Data replication from Oracle or MySQL

  • 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

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, mplement 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.

Replication

Persistent queues

  • 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

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.

Persistent

Tell us about the tasks of your project, and we will compose a solution for you on Tarantool

Get
a consultation

Order
a demo

Thank you for your request

Tarantool experts will contact you shortly

Thanks
Thanks