Адаптивная оптимизация запросов в реляционных СУБД Базы данных, системы хранения
В школе активно и успешно участвовал в олимпиадах по математике, физике, информатике. Победитель всероссийских олимпиад школьников по информатике (2010, 2012), золотая медаль на международной олимпиаде школьников по информатике (2012).
Участник различных школ по алгоритмам и структурам данных, машинному обучению.
В университете (ВМК МГУ) начал научную работу в области машинного обучения (обучение представлений, big data) в составе группы байесовских методов.
В компании Postgress Professional работаю над применением машинного обучения для оптимизации запросов в СУБД.
Тезисы
Как известно, SQL - декларативный язык. В SQL-запросе заданы операции и свойства данных, над которыми эти операции должны быть выполнены. Но за выбор конкретного алгоритма выполнения запроса отвечает СУБД. В реляционных СУБД эти алгоритмы называются планами выполнения запроса, а процесс поиска наиболее быстрого плана - оптимизацией запроса. От выбора правильного плана существенно зависит скорость и эффективность выполнения запроса, а, значит, и производительность всей СУБД.
Наиболее популярным методом оптимизации запросов в современных реляционных СУБД является стоимостная оптимизация запросов, которая впервые была предложена в System R. В докладе описывается метод стоимостной оптимизации, рассматривается, какую статистику и как использует этот метод для оптимизации запросов. Затем разбираются основные недостатки стоимостной оптимизации и существующие подходы к их исправлению.
Основная тема доклада - адаптивная оптимизация запросов. Адаптивная оптимизация запросов - это новый подход, основанный на стоимостной оптимизации, но позволяющий избавиться от некоторых ее недостатков. Основная идея адаптивной оптимизации запросов - использование при оптимизации запросов статистики выполнения, собранной во время предыдущего исполнения похожих запросов. В отличие от адаптивной оптимизации, в классической стоимостной оптимизации используется только предварительно собранная статистика по данным.
В докладе рассматривается конкретный способ адаптивной оптимизации, основанный на методах машинного обучения. Для него приводятся результаты сравнения адаптивной и стоимостной оптимизации на примере СУБД PostgreSQL, обсуждаются плюсы и минусы адаптивной оптимизации, возможности её применения.