Как и зачем нужно хранить все данные о пакетных турах. Наш опыт использования MongoDB и ElasticSearch в Tutu.ru

Storage Доклад 45 минут Миненок Александр
Миненок Александр
Тимлид команды «Туры» в Tutu.ru. Увлеченный программист и профессиональный бекенд-разработчик с многолетним стажем.
Доклад про то, как мы применяем MongoDB и ElasticSearch в Tutu.ru для хранения всей информации о пакетных турах. Когда и зачем использовать MongoDB в приложении, ее плюсы и минусы. Чем хорош ElasticSearch, чем плох и планы на будущее. Как выбирать другую систему хранения в условиях большой и сложной компании с сотней разработчиков.

Продажа пакетных туров ­– огромная и сложная предметная область, которая связана с высокими рисками и технологическими проблемами. Я немного расскажу про рынок пакетных туров в начале своего доклада и как вообще обстоят дела с онлайном, введу в курс дела, чтобы было полное понимание технических трудностей, с которыми приходится сталкиваться разработчикам (спойлер: плохо).

В основной части доклада мы поговорим про этапы развития нашего внутреннего хранилища туров за последние 2 с лишним года:
- Почему и как мы сохраняли все пакетные туры в MongoDB на старте развития проекта;
- Что мы сделали, когда MongoDB перестала справляться с нашими потребностями;
- Оптимизация запросов для MongoDB, которые не занимают много времени, но дают невероятный рост производительности;
- Как мы окончательно уперлись в производительность MongoDB и что с этим стало
- Зачем и как мы добавили ElasticSearch в проект.

Слушатели узнают из доклада:
- Зачем и когда использовать NoSQL;
- Когда и зачем использовать MongoDB в приложении, ее плюсы и минусы;
- Как выбирать другую систему хранения в условиях большой и сложной компании с сотней -
разработчиков;
- Чем хорош ElasticSearch, чем плох и планы на будущее.
Постоянная ссылка на доклад: https://devconf.ru/offer/282