Внедрение YDB CDC на примере Yandex Monitoring

Архитектуры и масштабируемость

Хранилища данных

Доклад принят в программу конференции

Целевая аудитория

Программисты, архитекторы распределенных систем.

Тезисы

Yandex Monitoring используется всеми сервисами Яндекса внутри, а также доступен в Яндекс.Облако для внешних пользователей. Мы обрабатываем 700 миллионов метрик на запись ежесекундно.

У каждого клиента есть конфигурация процесса загрузки метрик. Конфигурация — это Control-Plane-объекты, которые:
* хранятся как таблицы в базе данных;
* меняются на лету;
* связаны между собой.
Чем быстрее Monitoring получает обновления объектов, тем выше доступность для пользователей.

Для хранения мы используем YDB — распределенную open-source-базу данных Яндекса.
Команды YDB и Yandex Monitoring проработали сценарий загрузки изменений с помощью YDB CDC. В результате получили архитектуру, в которой изменения объектов доставляются в тысячи компонентов менее чем за 800 миллисекунд.

В докладе:
* Сложности до перехода на Change Data Capture.
* Подходы к доставке изменений, их особенности.
* Чем YDB CDC отличается от других решений.
* Рекомендации, как правильно готовить YDB CDC, поделюсь граблями и их решением.
* Какую модель данных выбрать, чтобы решить проблемы с конкурентными изменениями.
* Мониторинг и поддержка решения.

Егор Литвиненко

Yandex Infrastructure

Старший разработчик Yandex Monitoring. Программирует 18 лет.
Ранее:
* разрабатывал распределенные системы прогнозирования заказов в ритейле до того, как машинное обучение стало популярным;
* внедрял автоматизацию и бизнес-процессы в банковской деятельности;
* делал продукты в сфере аукционов рекламы в реальном времени и автоматизированной закупки рекламы.

Yandex Infrastructure

Yandex Infrastructure – это команда, которая предоставляет весь спектр инструментов для разработки и развертывания приложений и сервисов любой сложности. На их инфраструктуре работают большинство сервисов Яндекса и внешних клиентов Yandex Cloud.

Видео

Другие доклады секции

Архитектуры и масштабируемость