2. Что такое Tarantool?
• СУБД с сервером приложений
• Открытый исходный код
• Разрабатывается в Mail.Ru
• Существует с 2008 года
• Основное применение: высоконагруженные системы
• Настоящая СУБД с транзакциями, но быстрая как кэш!
5. Когда использовать Tarantool?
Отсутствуют свойства кэша
• Sub 1 ms latency
• 100K-300K QPS per one CPU core
• 100K updates per node
• Small number of nodes (money saver)
• Expiration
• Always up, no maintenance windows
• Optimized for heavy parallel workloads
СУБД
6. Когда использовать Tarantool?
Присутствуют свойства кэша!
• Sub 1 ms latency
• 100K-300K QPS per one CPU core
• 100K updates per node
• Small number of nodes (money saver)
• Expiration
• Always up, no maintenance windows
• Optimized for heavy parallel workloads
И свойства СУБД никуда не потерялись
TarantoolDB
DB
DB
DB
СУБД
7. Когда использовать Tarantool?
Cache
Отсутствуют свойства СУБД
• Persistence
• ACID Transactions
• Replication
• Stored procedures
• Tables, Indexes, Secondary indexes
• Cursors, range and full scan queries
8. Когда использовать Tarantool?
СУБД
Свойства СУБД
• Persistence
• ACID Transactions
• Replication
• Stored procedures
• Tables, Indexes, Secondary indexes
• Cursors, range and full scan queries
И все свойства кэша
Tarantool
10. Когда использовать Tarantool?
Database
Свойства СУБД
• Persistence
• ACID Transactions
• Replication
• Stored procedures
• Tables, Indexes, Secondary indexes
• Cursors, range and full scan queries
Cache
11. Когда использовать Tarantool?
Database
Cache Свойства кэша
• Sub 1 ms latency
• 100K-300K QPS per one CPU core
• 100K updates per node
• Small number of nodes (money saver)
• Expiration
• Always up, no maintenance windows
• Optimized for heavy parallel workloads
17. Кейсы использования
• Система аутентификации
• Система пуш уведомлений
• Система показа рекламы
• Видео проигрыватель
• Веб аналитика
• Хранилище сообщений мессенджеров
• Антиспам
• Замена memcached
• Система мониторинга
• Система рейтингов
• И многое другое …
18. Система аутентификации
• Востребованная (10-1M RPS) КЭШ
• Низкая latency (sub 1 ms) КЭШ
• Высокая доступность
• Постоянно ходит в хранилище КЭШ
• Anti brute-force/anti fraud
• Почти каждое обращение – это транзакция
• Много неизбежной лишней работы
• Большой размер данных
• Expiration КЭШ
• Persistence
19. Система аутентификации
• Востребованная (10-1M RPS)
• Низкая latency (sub 1 ms)
• Высокая доступность СУБД
• Постоянно ходит в хранилище
• Anti brute-force/anti fraud СУБД
• Почти каждое обращение – это транзакция СУБД
• Много неизбежной лишней работы
• Большой размер данных
• Expiration
• Persistence СУБД
32. Система показа рекламы
Web
server
Source
Of
data
10+ рекламных блоков
Web
server
Web
server
Ad
system
Source
Of
data
Source
Of
data
• На каждый блок из10+
• Лукапим источники данных
• Аггрегируем результат
• Понимаем, что показать
• Тратим несколько ms!
34. Вывод такой:
• вам нужно читать/писать горячие данные КЭШ
• с производительностью 100K QPS КЭШ
• параллельно КЭШ
• и вам нужно время ответа менее чем 1 мс КЭШ
• и 99.99% uptime СУБД
• и вы хотите выжать все соки из ваших серверов КЭШ
• при этом иметь транзакции, репликацию, persistence и
все другие свойства классических СУБД СУБД
• и все это в базе данных, которую легко
администрировать СУБД
If