Главная страница О компании Технологии Tarantool

Tarantool — СУБД и сервер приложений

Tarantool — нереляционная СУБД и Lua-сервер приложений в одном. При этом весь код открыт под лицензией BSD.

В Метод Лаб Tarantool используется прежде всего как быстрая СУБД с данными в оперативной памяти. Эта система наилучшим образом подходит для таких данных как сессии, данные о просмотрах объектов, рейтинги и счетчики.

Появился Tarantool в компании Mail.ru как средство хранения самых горячих данных систем. Для решения этой задачи все данных хранились в оперативной памяти (RAM) и все накладные расходы по обработке данных (проверка прав, блокировки доступа, конкурентный доступ и т.д.) были минимизированы. Однако, Tarantool изначально проектировался как надежный источник данных с поддержкой персистентности (восстановления данных после рестарта), репликации и шардинга. В этом его основное отличие от систем Memcached и Redis.

Одним из главных приоритетов разработчики проекта указывают высочайший уровень производительности при различных сценариях использования (в большинстве бенчмарков около 100k rps на одном ядре CPU). В отличие от многих реляционных СУБД, Tarantool спокойно выдерживает большой процент запросов на запись с одновременным чтением данных.

Помимо функций shemaless-СУБД, Тарантул является Lua-сервером приложений. Это даёт возможность перенести вычисления (манипуляции с данными) ближе к месту хранения. При этом скорость выполнения Lua-кода остаётся высокой за счет использования LuaJIT (в некоторых случаях близка к языку C). Таким образом, на Tarantool можно разработать HTTP-сервер или сервер очередей, использовать сложные хранимые процедуры и так далее.

Список основных возможностей Tarantool:

  • Встроенный язык Lua и LuaJIT.
  • Системы хранения: Memtx (в оперативной памяти), Sophia (на диске).
  • Поддержка индексов HASH, TREE, RTREE, BITSET.
  • Поддержка составных и вторичных индексов.
  • Необязательное описание схемы данных (обязателен лишь primary индекс).
  • Поддержка атомарности выполения операций.
  • Отсутствие блокировок (lock-free).
  • Модель кооперативной многозадачности.
  • Гарантия последовательного выполнения транзакций.
  • Поддержка расширений через LuaRocks. Готовые модули: сервер очередей, HTTP-сервер, удаление устаревших данных, шардинг и другие.
  • Возможность связи с реляционными СУБД через коннекторы: MySQL, PostgreSQL.

За профессиональной разработкой на Tarantool обращайтесь к нам!

Лучшее ускорение сайтов в Рунете

Ускорение сайтов

Цена от 19 900 Р