title

text

Дмитрий Мельник
Дмитрий Мельник ИСП РАН разработчик
14:00 17 марта
22 мин

Динамическая компиляция SQL-запросов в PostgreSQL с использованием LLVM JIT

В данный момент в PostgreSQL для исполнения SQL-запросов применяется интерпретатор, реализующий модель итераторов (Volcano-модель). В то же время можно добиться существенного ускорения, выполняя динамическую компиляцию запроса «на лету». В этом случае можно генерировать код, специализированный для конкретного SQL-запроса, а также применять компиляторные оптимизации, учитывая, что во время выполнения уже известна структура используемых таблиц и типы данных. Такой подход особенно актуален для сложных запросов, скорость выполнения которых ограничена производительностью процессора.

Слайды

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

  • Дмитрий Юхтимовский
    Дмитрий Юхтимовский Gilev.ru технический лидер
    45 мин

    Поиск проблемного кода 1С на СУБД PostgreSQL

    1. Особенности взаимодействия 1С:Предприятие 8 и PostgreSQL 9 1.1 Изменения в редакциях платформы 1С 1.2 Схемы v81c_data и v81c_index 1.3 Трансляция запросов 1С в SQL 1.4 События технологического журнала 1С для диагностики PostgreSQL
    2. Анализ запросов, вызывающих проблемы производительности в PostgreSQL 2.1 Бесплатный инструмент для автоматизации разбора логов 2.2 Правило Парето на практике 2.3 Установка и настройка инструмента 2.4 Практический пример оптимизации запроса 2.4.1 Проблема в запросе PostgreSQL 2.4.2 Выяснение нерациональных операций в запросе 2.4.3 Способы устранения неоптимальностей
    3. Статистка PostgreSQL для диагностики производительности 3.1 Сравнение с возможностями MS SQL Server, различия 3.2 Диагностика блокировок 3.3 Диагностика рабочей нагрузки 4 Примеры из практики команды gilev.ru

  • Дмитрий Иванов
    Дмитрий Иванов Postgres Professional Developer
    Ильдар Мусин
    Ильдар Мусин Postgres Professional Разработчик
    45 мин

    Секционирование с pg_pathman

    Секционирование в PostgreSQL - давно ожидаемый функционал. И хотя в Postgres возможно реализовать секционирование через наследование, такой подход имеет ряд недостатков, таких как необходимость вручную создавать секции и поддерживать триггеры, значительные накладные расходы на планирование и отсутствие оптимизаций времени выполнения. В докладе мы расскажем про расширение pg_pathman, над которым мы работаем. pg_pathman поддерживает HASH и RANGE секционирование и выполняет оптимизации на этапах планирования и исполнения, поддерживает быструю вставку за счет отказа от триггеров в пользу Custom Node, содержит функции для управления секциями (add, split, merge и др.), поддерживает FDW, неблокирующую миграцию данных и другие возможности. Мы также расскажем об интеграции pg_pathman в PostgresPro Enterprise Edition и поддержку Oracle-подобного синтаксиса для секционирования. В завершение мы расскажем о новых возможностях секционирования в PostgreSQL 10, что реализовано и пути дальнейшего развития.

    ВИДЕО

  • Егор Рогов
    Егор Рогов Postgres Professional эксперт
    90 мин

    ProBackup: быстро, надежно, инкрементально

    Современное состояние средств резервного копирования для PostgreSQL определенно оставляет простор для улучшений. Штатные средства дают исключительно базовую функциональность, сторонние инструменты решают некоторые, но не все, проблемы. Для того, чтобы резервная копия была надежной, могла выполняться быстро и инкрементально на уровне страниц, нужна в том числе и поддержка со стороны базы данных. На мастер-классе мы расскажем про новый инструмент резервного копирования и восстановления ProBackup, который мы разрабатываем в нашей компании, и покажем его в действии.

    Скрипт демонстрации:

    ФОТО:

  • Олег Бартунов
    Олег Бартунов Postgres Professional генеральный директор
    22 мин

    JSON в PostgreSQL: дорожная карта

    В прошлом году был принят стандарт ISO/IEC 9075-2:2016, в котором наконец-то был стандартизирован синтаксис и семантика JSON и операций над ним в языке SQL. В докладе будет рассказано о требованиях этого стандарта и чем они отличаются от реализации JSON/JSONB в PostgreSQL, в частности, о JSON Path (аналог XPath для XML), о SQL/JSON функциях и о том, что мы планируем сделать в PostgreSQL для соответствия стандарту.

    ВИДЕО