title

text

T
Tatsuro Yamada NTT Comware Ведущий специалист по базам данных
16:00 06 февраля
22 мин

Настройка автопланировщика с использованием цикла обратной связи

При OLAP и пакетной обрабокте данных часто наблюдается ситуация, что чем сложее запрос (содержит много джойнов, фильтров и аггрегативных функций), тем выше вероятность ошибок в оценке количества строк, в результате чего планировщик выбирает неэффективный план исполнения запроса.

Для того, чтобы решить эту проблему, я разработал инструмент под названием pg_plan_advsr - это расширение для PostgreSQL, которое исправляет ошибки оценки путем неоднократного возвращения в планировщик информации, собранной в ходе исполнения запроса.

Расширение содержит три фичи:

  1. Автоматическая оптимизация плана запроса за счет неоднократного возвращения информации о ходе выполнения запроса в планировщик.
  2. Сохранение всех выработанных при оптимизации планов запросов в таблицу истории.
  3. Создание и сохранение хинтов оптимизатора с тем, чтобы иметь возможность воспроизвести выработанные планы исполнения запросов в процессе настройки.

Я верифицировал эффективность pg_plan_advsr путем запуска join order benchmark (JOB) на PG 10.4, в ходе чего наблюдалось сокращение времени исполнения запроса до 50% от первоначального. Таким образом, расширение будет полезно пользователям, который хотят настроить планировщик для OLAP и пакетной обработки данных.

В ходе презентации я расскажу о следующие моментах:

  • Принципы построения и архитектура pg_plan_advsr.
  • Подробная информация о результатах тестирования JOB.
  • Направления улучшений в будущем.
  • Совместное использование расширений aqo и pg_plan_advsr together (экспериментальное).

Слайды

Видео

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

  • Андрей Фефелов
    Андрей Фефелов Mastery.pro Технический директор
    45 мин

    Как мы выбирали среди patroni, stolon, repmgr для нашего отказоустойчивого Постгреса

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

    Первое на что мы посмотрели - это облачные решения от большой тройки, однако, стоимость их эксплуатации превзошла все наши скромные ожидания. К тому же у нас есть всякие штуки вроде экстеншенов и londiste репликации, и они не совместимы с тем, что предлагают облака.

    В докладе я расскажу о том, почему мы остановились на patroni, на какие грабли наступили и какие у него есть неочевидные, но прикольные штуки, которые сильно облегчают жизнь.

  • Алексей Лустин
    Алексей Лустин SilverBulleters, LLC CTO
    22 мин

    Анализ проблемных запросов как средство регулярного рефакторинга кода 1С

    1. Принципы поиска проблемных запросов в PostgreSQL
    2. Оценка гипотетических индексов и степени их влияния на планы запросов
    3. Наиболее часто встречающиеся ошибки у 1С-программистов
    4. Базовые методы рефакторинга кода с учетом особенностей PostgreSQL
    5. Хранение аналитической информации журнала работы PostgreSQL для оценки качества рефакторинга

  • Джигнеш Шах
    Джигнеш Шах Amazon Web Services Manager, RDS PostgreSQL
    45 мин

    Глубокое погружение во вселенную RDS PostgreSQL

    В ходе доклада мы с головой окунемся в пространство восхитительных возможностей службы Amazon RDS для PostgreSQL, включая новые версии релизов PostgreSQL, новые расширения, более крупные таблицы. Мы посмотрим на бенчмарки новых типов сущностей RDS и их ценность, на то, как работают высокая доступность и масштабируемость по чтению. Разберем уроки, которые мы вынесли из опыта управления большим парком сущностей с помощью PostgreSQL, включая важные настройки и возможные подводные камни, связанные с pg_upgrade.

  • Александр Смолин
    Александр Смолин Красноярский ИВЦ - СП ГВЦ - ОАО "РЖД" Программист 1 категории
    22 мин

    Настройка и профилирование виртуальной инфраструктуры VMware для интенсивного ввода/вывода PostgreSQL

    Виртуализация в компаниях стала альтернативой консервативного подхода "одна задача - один сервер", позволяющая эффективно использовать аппаратные ресурсы, централизованно управлять серверной инфраструктурой, экономить электроэнергию и ресурсы на охлаждение. В докладе рассказывается о настройке среды VMware для интенсивного ввода-вывода PostgreSQL и инструментах профилирования виртуальной инфраструктуры для контроля производительности и устранения выявленных проблем.