
Вышла новая версия персистентной in-memory NoSQL СУБД Tarantool. Tarantool написан на языке C и позволяет писать хранимые процедуры на Lua (движок LuaJIT).
Главные изменения:
- стабилизация MVCC (Многоверсионное управление конкурентным доступом) в in-memory движке memtx;
- поддержка транзакционности в бинарном протоколе IPROTO. Раньше для транзакции необходимо было написать хранимую процедуру на языке Lua;
- синхронная репликация, которая работает потаблично (per-table);
- механизм автоматического переключения мастера (failover) на базе протокола RAFT. В Tarantool уже давно реализована асинхронная WAL-based репликация, теперь можно не следить за мастером вручную;
- автоматическое переключение мастера также доступно в случае топологии с шардированием данных (библиотека vshard). Vshard — это библиотека, которая распределяет данные по серверам с помощью виртуальных корзин (bucket);
- улучшение Tarantool Cartridge для работы в виртуальных средах, теперь он лучше держит нагрузку. Tarantool Cartridge — это фреймворк для построения кластерных приложений;
- ускорение работы Ansible-роли для развертывания кластера до 15-20 раз. Таким образом работа с большими кластерами стала проще.
Появился инструмент для упрощенной миграции со старых версий >1.6 и < 1.10 без костылей, который доступен с помощью дополнительной опции при старте. «Костыль» раньше был в том, что миграцию необходимо было делать через разворачивание промежуточной версии 1.10; - оптимизация хранения кортежей небольшого размера;
- поддержка UUID в SQL и улучшение преобразования типов.
Стоит отметить, что с версии 2.10 будет осуществлен переход на новую релизную политику.
Русскоязычное сообщество в Телеграме — t.me/tarantoolru
>>> Подробности