Пост-релиз
Доклады
Архив докладов
-
Дмитрий Мельник ИСП РАН разработчикВ настоящее время в PostgreSQL для исполнения SQL-запросов используется интерпретатор. Это приводит к накладным расходам, связанным с неявными вызовами функций-обработчиков и проверок, которых можно было бы избежать при создании исполняемого кода "на лету" (JIT-компиляции) под конкретный SQL-запрос: в этом случае во время выполнения уже известна структура используемых таблиц и типы данных. Особенно это актуально для сложных запросов, где производительность процессора является основным ограничением. В настоящий момент существует два известных проекта, реализующих JIT-компиляцию в PostgreSQL: коммерческое решение Vitesse DB и open-source проект PGStorm. В первом проекте за счет использования LLVM JIT авторам удается получить ускорение до 8 раз на тестах из набора TPC-H. Второй проект реализует JIT-компиляцию запроса с использованием CUDA для исполнения его на GPU, что позволяет ускорить выполнение некоторых типов запросов на порядок.
Наша работа посвящена добавлению поддержки JIT-компиляции SQL-запросов в PostgreSQL с использованием компиляторной инфраструктуры LLVM. В докладе будет подробно рассмотрено, как JIT-компиляция может быть использована для ускорения различных этапов исполнения SQL-запросов, а также особенности трансляции SQL-запросов в LLVM-биткод для получения эффективного исполняемого кода. Также будут представлены предварительные результаты тестирования JIT-компилятора на наборе тестов TPC-H.
-
Will Leinweber Heroku EngineerПомимо предоставления универсальной веб-платформы, Heroku предлагает крупномасштабные и поддерживаемые сервисы Postgres. За годы мы многое узнали о том, как использовать Postgres в большом масштабе.
На этом докладе мы расскажем:- почему Postgres привлекателен для запуска в облачном сервисе
- как подготовить, управлять и контролировать инфраструктуру Postgres
- чем придётся пожертвовать, чтобы Postgres работал в такой среде
- об автоматическом восстановлении после сбоя
- и о многом другом
-
Дмитрий Долгов Zalando SE Senior Software EngineerИспользование слабоструктурированных данных определенно является трендом современности, и это верно не только для NoSQL, но и для традиционных RDBMS. Многие реляционные базы данные (например, PostgreSQL, Oracle, db2, Mysql) позволяют хранить данные в json формате, и, очевидно, реализуют это по-разному.
Доклад содержит две части:
- Сравнение поддержки json в PostgreSQL и других реляционных базах данных, а именно Mysql, Oracle, db2, MSSql в контексте реализованных возможностей, функций и т.д.
- Сравнение производительности для баз с наиболее полной поддержкой json (PostgreSQL и Mysql) а также MongoDB на различных видах нагрузок и конфигураций.
-
Анастасия Лубенникова Postgres Professional РазработчикСамый часто используемый тип индексов в PostgresSQL - B-tree. Эта структура данных и связанные с ней алгоритмы развиваются уже больше 40 лет. Но, как мы знаем, нет предела совершенству. В этом докладе пойдет речь об особенностях структуры B-tree и его реализации в PostgreSQL, важных для оптимального использования индексов. Кроме того, мы представим улучшения функциональности B-tree в PostgreSQL, которые войдут в релиз 9.6. Это компрессия дубликатов и новые возможности использования покрывающих (covering) индексов.
Фотографии
Архив фотографий