Простой фасетный поиск в YDB своими руками: зачем и как

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

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

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

Разработчики базовых инфраструктурных систем, которым важно сохранить минимальное число компонент в системе при расширении её возможностей. Если вы ещё и на Java, то сможете применить интересный фильтр по диапазонам из состава Roaring Bitmap

Тезисы

Можно сделать простой фасетный поиск на основе YDB без добавления новых компонентов в систему. Для этого понадобится поработать на стороне приложения. Но если ваша задача сделать отказоустойчивый сервис с минимальным числом зависимостей, вы и так знаете, что без этого не обойтись.

Мы прошли этот путь в сервисе метаданных метрик Monium. Индекс для поиска по метрикам стал занимать слишком много оперативной памяти, и мы уже не знали, что с ним делать. Поэтому мы решили попробовать вынести его в базу. Непростая задача! Несмотря на это, нам повезло. У нас не стояло задачи поддерживать морфологию, и нам подошли самые простые способы хранения списка документов (он же список метрик). Мы взяли наш существующий подход: каждый список документов это Roaring Bitmap. Что из этого вышло и причём тут поддержка пользовательских функций (UDF) в YDB — расскажу в своём докладе.

Разработчик в собственной системе Мониторинга в Yandex Cloud

Видео

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

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