2. СУБД Tarantool: обзор
• 100% данных в оперативной
памяти
• постоянная копия данных на
диске
• гибкая модель данных
• есть репликация и бэкап
• хранимые процедуры на Lua
• memcached протокол и binary
протокол
3. О чём этот доклад
• о том, как сделать онлайн чат на Tarantool и Node.JS
• краткий обзор Tarantool
• возможности версии 1.4.4
• обзор 1.4.5
• описание системы дискового хранилища
4. Модель данных Tarantool
• HASH, TREE индексы
• multipart, unique, non-unique индексы
• STRING, NUM, NUM64 типы
6. Что нового в 1.4.4
Скорость:
• 70+% ускорение INSERT, UPDATE, DELETE
• новый UPDATE O(n), n — количество полей → большие
кортежи, быстро
• incremental rehash в HASH индексах
• более компактные TREE индексы
• hardware crc32 (Intel SSE 2.0)
10. Что нового в 1.4.4 (2)
Новые возможности:
• поддержка 64-бит чисел в Lua и индексах
• INSERT/DELETE/APPEND полей в кортеже
• .deb и .rpm пакеты
11. Tarantool в Debian “Sid”
Спасибо Dmitry E. Oboukhov!
Мы ищем мейнтенеров для
SuSE и Fedora
12. It's going on in the kitchen
Новые возможности 1.4.5:
• Darwin port (Mac OS X)
• HA кластер
• Транзакции
• множество улучшений текущих
возможностей
• WebScale & DevNullScale
13. Планы на 1.5
• Дисковое хранилище
• Авторизация
• Master-master репликация
• Синхронная репликация
14. Disk store для хранения
Comet
• Начало каждого кортежа хранится в памяти
• Хвост хранится в B-tree на диске, с использованием кэша
Преимущества:
• Гарантированное время ответа для актуальных данных
• Кэширование исторических данных
• В связке с nginx/node.js — система хранения чатов