Почему вам нужна хронологическая база данных?

Базы данных и системы хранения

Программный комитет ещё не принял решения по этому докладу

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

Разработчики, архитекторы, также вполне интересен людям из продукта.

Тезисы

При работе с базами данных часто хочется посмотреть не только то, что присутствует в ней сейчас, но и переместиться на произвольную точку во времени в прошлом и поизучать данные в ней. Базы данных, обладающие такой способностью, называются хронологическими. Мы расскажем, где и для чего мы в Яндекс Облаке используем хронологические базы данных, какие они бывают и как устроены изнутри.

Мы сделали инструмент создания хронологических баз данных по данным произвольных потоков, будь то логи сервисов, аудитные события или результаты периодических походов в API. Качество и структура таких данных разнится от источника к источнику. Некоторые из них не гарантируют даже факт поставки события при наличии изменений, некоторые допускают поставку событий об изменениях, случившихся в прошлом. Разберёмся, как хронологической базе данных успешно жить в условиях такого разнообразия гарантий, и откуда в алгоритме формирования хронологии появляется 47 сценариев обработки события.

Главная задача хронологической базы данных — получать быстрый доступ к данным на любую точку во времени. Детально рассмотрим алгоритмы и структуры данных, которые мы используем, чтобы обеспечить моментальный ответ на такие запросы, а также разберёмся, почему обычные индексы в базах данных не могут быть эффективно использованы для ускорения запросов к хронологиям.

В заключении продемонстрируем сервисы Яндекс Облака, создание которых стало возможным только благодаря появлению хронологических баз данных с необходимыми им свойствами. Поделимся сценариями использования хронологий и архитектурными приёмами при проектировании систем, полагающихся на хронологические данные.

20 лет в IT. До Яндекса делал ERP-системы для медицины, участвовал в OpenSource-проектах, есть собственные OSS-разработки. В Яндексе работаю Staff-инженером в Яндекс.Облаке, помогаю с дизайном сложных высоконагруженных систем, помимо разработки эксперт в области безопасности.

Видео

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

Базы данных и системы хранения