Адаптивная оптимизация запросов в PostgreSQL
Оптимизация запросов является важной задачей, решение которой существенно влияет на производительность СУБД, особенно при выполнении сложных запросов. В докладе будет рассмотрен оптимизатор запросов PostgreSQL, и, в частности, задача определения мощности вершины с зависимыми условиями, которая является одной из самых известных проблем стоимостных оптимизаторов. Предлагается решение этой проблемы, использующее методы машинного обучения и доступное в виде расширения с патчем для PostgreSQL 9.6. В докладе приводятся результаты экспериментального исследования предложенного решения, обсуждаются его плюсы и минусы, а также область применимости.
ВИДЕО
Слайды
Другие доклады
-
Петр Грибанов 1С Технологический евангелист
PostgreSQL в 1С:Предприятии и в облачной системе 1С:Fresh
"1С:Предприятие" - самая популярная в России/СНГ платформа разработки бизнес-приложений, которая уже более 10 лет поддерживает PostgreSQL. Фирма 1С использует PostgreSQL в своём облачном сервисе 1С:Fresh. В этом докладе мы поделимся опытом и наблюдениями, возникшими в ходе эксплуатации этого сервиса, и обсудим интересные случаи и особенности тандема 1С+Postgres.
-
Михаил Каган Mellanox Technologies Технический Директор
Построение высокопроизводительных горизонтально-масштабируемых СУБД
Современным высокопроизводительным и горизонтально-масштабируемым СУБД в ходе своей работы требуется перемещать огромные объемы данных между компонентами системы. Справляться с этой задачей они должны быстро и без задержек для пользователей. Именно на высочайшей пропускной способности, ультранизких задержках, а также разгрузке CPU от сетевых задач фокусируется компания Mellanox при разработке своих технологий интерконнекта. В своем докладе Михаил расскажет какую роль быстрая сетевая инфраструктура играет в системах СУБД и Big Data, а также поделится опытом компании Mellanox по построению таких систем совместного с ведущими мировыми производителями.
ВИДЕО
-
Alvaro Hernandez 8Kdata CTO
Миграция с MongoDB на PostgreSQL
MongoDB – популярная NoSQL CУБД, используемая в основном для работы с OLTP системами. Но из-за отсутствия требований ACID (в частности, транзакций как таковых), а также серьезных проблем с производительностью при работе с OLAP/DW нагрузками, все больше пользователей MongoDB рассматривают возможность перехода на реляционные СУБД, выбирая зачастую именно PostgreSQL. Это открывает перед сообществом PostgreSQL большие возможности по “обращению” пользователей из NoSQL в SQL. В этом докладе мы расскажем о сложностях, с которыми сталкиваются пользователи MongoDB, и представим соверменные инструменты и open-source решения, с помощью которых можно осуществить миграцию на PostgreSQL в режиме реального времени или через процесс ETL. В частности, мы обсудим ToroDB Stampede – open-source решение, которое создает реплику MongoDB в режиме реального времени, конвертирует документы JSON в реляционные таблицы и сохраняет данные в PostgreSQL.
ВИДЕО
-
Дмитрий Мельник ИСП РАН разработчик
Динамическая компиляция SQL-запросов в PostgreSQL с использованием LLVM JIT
В данный момент в PostgreSQL для исполнения SQL-запросов применяется интерпретатор, реализующий модель итераторов (Volcano-модель). В то же время можно добиться существенного ускорения, выполняя динамическую компиляцию запроса «на лету». В этом случае можно генерировать код, специализированный для конкретного SQL-запроса, а также применять компиляторные оптимизации, учитывая, что во время выполнения уже известна структура используемых таблиц и типы данных. Такой подход особенно актуален для сложных запросов, скорость выполнения которых ограничена производительностью процессора.