Основные кейсы использования Тарантула:
1. Когда нужна OLTP-система, позволяющая обрабатывать транзакции в режиме почти реального времени (с милисекундными задержками) и/или с огромной пропускной способностью (сотни тысяч запросов в секунду). Примеры — система сессий, система антибрутфорса, система противодействия атакам, система очередей и пуш-уведомлений, роутинг запросов между серверами.
Далее - http://backendconf.ru/2016/abstracts/2096.html
3. Tarantool
• Что такое Tarantool?
• Tarantool – это очень-очень быстрая СУБД с сервером приложений на
борту
4. Tarantool
• Что такое Tarantool?
• Tarantool – это очень-очень быстрая СУБД с сервером приложений на
борту
• Почему Tarantool?
5. Tarantool
• Что такое Tarantool?
• Tarantool – это очень-очень быстрая СУБД с сервером приложений на
борту
• Почему Tarantool?
• Чтобы ответить на этот вопрос, надо посмотреть на кейсы
6. Tarantool
• Что такое Tarantool?
• Tarantool – это очень-очень быстрая СУБД с сервером приложений на
борту
• Почему Tarantool?
• Чтобы ответить на этот вопрос, надо посмотреть на кейсы
• Но если кратко, то Tarantool
• Быстрый во всех смыслах этого слова
• Экономный
• Универсальный
• Простой
7. Tarantool - кейсы использования
• Быстрый OLTP (онлайн обработка транзакций)
• Быстрый OLAP (онлайн аналитика)
• Экономия денег
• Устранение зоопарков
• Быстрое и надежное кэширование
• Сервер приложений внутри СУБД, интеграция нескольких СУБД
• Быстрая разработка фич, микросервисы, минимально времени на борьбу с
высокой нагрузкой
• Упрощение эксплуатации
• IoT-платформа
8. Быстрый OLTP
• Транзакции в почти реальном времени
• Latency порядка 1 миллисекунды
• Огромная пропускная способность – сотни тысяч или даже миллионы QPS
Примеры:
- Система сессий
- Очереди
- Пуш-уведомления
- Роутинг запросов (для шардинга)
13. Быстрый OLAP
• Аналитика в реальном времени
• Много источников данных
• Надо провести аналитику и принять решение в режиме реального времени
Примеры:
- Система онлайн рекламы
- Антиспам
- «Разбери свой ящик»
- Антибрутфорс
- Антифрод
22. Система токенов для сборщиков почты
Web server
Put token
Get token
Web server
Mail
Collector
Token
Tarantool
1M QPS!
Refresh token
23. Устранение зоопарков
• Уменьшаем количество различных NoSQL СУБД в своем арсенале
• Упрощаем администрирование и деплой
• Убираем несогласованность данных
27. Быстрое и надежное кэширование
• Ускоряем текущий кэш
• Делаем кэш персистентным
• Добавляем к кэшу репликацию и делаем его highly available
• И не меняем текущий код! Tarantool полностью поддерживает
интерфейс Memcached!
35. Микросервисы
• Уменьшаем количество компонент с 4-5 до 2
• Радикально уменьшаем количество серверов (в разы)
• Минимизируем время вывода приложения в продакшн
• Минимизируем затраты команды на борьбу с высокой нагрузкой
42. Минимизируем время выхода в продакшн
REST API
• HTTP included
• Fault-tolerance included
• Sharding included
Lua
procedure
43. Минимизируем борьбу с высокой нагрузкой
REST API
• HTTP included
• Fault-tolerance included
• Sharding included
• 100+K RPS included
Lua
procedure
44. Упрощаем эксплуатацию
• Отсутствуют ручные регулярные процедуры (такие как vacuum и т.д.)
• Простая система горячих бэкапов
• Простая система горячего подключения реплики
• Простой перенос с сервера на сервер
• Простая и понятная структура хранения данных
45. Простая система горячих бэкапов
DBMS Backup
Как создать backup с горячей базы данных?
А как создать горячую реплику?
46. Простая система горячих бэкапов
Tarantool Backup
Snapshot
(immutable)
Transaction
log
Копируется просто командой scp!!!
47. Простая система горячего подключения реплики
Tarantool Replica
Snapshot
(immutable)
Transaction
log
Копируется просто командой scp!!!
48. Простая система переноса с сервера на сервер
Tarantool Replica
Snapshot
(immutable)
Transaction
log
Поднимаем реплику
Говорим реплике, что мастер вот там
Ждем, пока реплика догонится
Делаем реплику мастером
Все!
49. Простая и понятная структура хранения
Tarantool
Snapshot
(immutable)
Transaction
log
Все изменения применяются в лог транзакций и больше никуда на диск!
50. IoT-платформа (вишенка на торте)
• Сервер приложений + СУБД на IoT-устройствах
• Может работать на устройствах даже с несколькими мегабайтами
оперативной памяти!
• Может эффективно работать с медленными одноядерными ЦПУ
• Может эффективно использовать ненадежную флэш-память
• Может делать peer-to-peer master-master репликацию между устройствами
без облака
• Может работать без доступа в Интернет
51. IoT-платформа (вишенка на торте)
• Мало оперативной памяти
• Слабый ЦПУ
• Моргающий Интернет
• Сложно релизить софт
• Медленная и ненадежная flash-память
IoT
устройство
52. IoT-платформа (вишенка на торте)
• Peer to peer master-master
replication
• Состояние между устройствами
и облаком всегда синхронно!
IoT
устройство
IoT
устройство
Tarantool in Cloud
53. Заключение
• Я не хочу сказать, что Tarantool – это серебряная пуля
• Скорее Tarantool это СУБД-платформа-конструктор для хайлоуда,
аналитики, всего, что должно работать в онлайне или риалтайм
• Если у вас онлайн и риалтайм, то обязательно взгляните на Tarantool!
Я много рассказывал про Тарантул на разных конференциях. При этом в основном я касался в основном такого аспекта как скорость работы, а именно таких параметров как времени обработки запросов и максимальную пропускную способность. Это самая быстрая СУБД из известных мне. Но скорость – это не единственное достоинство Тарантула и не единственная фича, из-за которой ему отдают предпочтение. В этом выступлении я постарался более полно обрисовать различные кейсы использования Тарантула, когда он может быть вам полезен.
Я много рассказывал про Тарантул на разных конференциях. При этом в основном я касался в основном такого аспекта как скорость работы, а именно таких параметров как времени обработки запросов и максимальную пропускную способность. Это самая быстрая СУБД из известных мне. Но скорость – это не единственное достоинство Тарантула и не единственная фича, из-за которой ему отдают предпочтение. В этом выступлении я постарался более полно обрисовать различные кейсы использования Тарантула, когда он может быть вам полезен.
Я много рассказывал про Тарантул на разных конференциях. При этом в основном я касался в основном такого аспекта как скорость работы, а именно таких параметров как времени обработки запросов и максимальную пропускную способность. Это самая быстрая СУБД из известных мне. Но скорость – это не единственное достоинство Тарантула и не единственная фича, из-за которой ему отдают предпочтение. В этом выступлении я постарался более полно обрисовать различные кейсы использования Тарантула, когда он может быть вам полезен.
Я много рассказывал про Тарантул на разных конференциях. При этом в основном я касался в основном такого аспекта как скорость работы, а именно таких параметров как времени обработки запросов и максимальную пропускную способность. Это самая быстрая СУБД из известных мне. Но скорость – это не единственное достоинство Тарантула и не единственная фича, из-за которой ему отдают предпочтение. В этом выступлении я постарался более полно обрисовать различные кейсы использования Тарантула, когда он может быть вам полезен.
Я много рассказывал про Тарантул на разных конференциях. При этом в основном я касался в основном такого аспекта как скорость работы, а именно таких параметров как времени обработки запросов и максимальную пропускную способность. Это самая быстрая СУБД из известных мне. Но скорость – это не единственное достоинство Тарантула и не единственная фича, из-за которой ему отдают предпочтение. В этом выступлении я постарался более полно обрисовать различные кейсы использования Тарантула, когда он может быть вам полезен.
Я сгруппировал юз кейсы в 9 групп. Я где-то слышал прекрасный на мой взгляд способ выступления на конференциях направленный на максимизацию понимания со стороны аудитории – любую мысль надо повторить 3 раза – сначала предварительно говорите то, что сейчас скажите, потом говорите это, потом говорите то, что только что сказали. Следуя это практике, я перечисляю тут все эти группы.
Когда нужна OLTP-система, позволяющая обрабатывать транзакции в режиме почти реального времени (с милисекундными задержками) и/или с огромной пропускной способностью (сотни тысяч запросов в секунду). Примеры — система сессий, система антибрутфорса, система противодействия атакам, система очередей и пуш-уведомлений, роутинг запросов между серверами.
Когда нужна реал-тайм OLAP-система. Т.е. когда нужно супероперативно принимать решения (желательно в реал-тайме), собирая и анализируя информацию по многим источникам. Примеры: фича "уберись в ящике" в Почте@Mail.Ru, почтовый общий и персональный антиспам, система показа рекламы, любые системы, касающиеся классификации и кластеризации данных, которые должны работать в онлайне.
Когда текущая СУБД стоит слишком дорого по серверам или лицензиям, и есть желание заменить ее на нечто, что будет в десятки, если не сотню раз более экономное (за счет отсутствия лицензии и за счет радикального снижения количества железа). Можно эту СУБД заменить на Тарантул.
Когда текущая СУБД обложена большим зоопаркам NoSQL решений и кэшей с целью повысить ее производительность, но при этом хочется еще больше производительности и/или хочется решить проблему несогласованности данных. Можно эту СУБД и все обвязки вокруг нее заменить на Тарантул.
Когда хочется повысить надежность и/или скорость работы текущего кэширующего решения. Можно это решение заменить на Тарантул.
Когда текущая СУБД и/или кэш не позволяют в полном объеме реализовать необходимую логику внутри и использовать их как application server. Можно эту СУБД и/или кэш заменить на Тарантул или можно новые фичи разрабатывать Тарантул, не теряя старых решений (Тарантул умеет интегрироваться и реплицироваться в обе стороны с любыми решениями за счет полноценного алгоритмического языка внутри с мощным сетевым SDK).
Когда хочется повысить скорость разработки новых фич, особенно в случае микросервисов, чтобы было минимальное количество компонент и серверов, максимально быстро деливирить в продакшн и тратить минимальное время на борьбу с высокой нагрузкой.
Когда хочется упростить эксплуатацию новых фич.
IoT platform
IoT platform
IoT platform
Резюмируя сегодняшнее выступление, я хочу сказать, что Тарантул можно рассматривать как платофрму-конструктор, позволяющих собрать высокопроизводительное решение для конкретной задачи. Это не серебрянная пуля в целом, но это мощный инструмент для хайлоуда, для диджитализации, для аналитики, для всего что в рилтайме.
Если у вас есть любые вопросы, то не стесняйтесь задавать на наш сапорт, в нашу группу в фейсбуке или мне лично на имейл. Ну и конечно вы можете задать любые вопросы здесь и сейчас, я готов ответить на все