title

text

Леонид Борчук
Леонид Борчук Яндекс Разработчик
15:00 08 апреля
20 мин

Планы выполнения в pg_stat_statements

Есть много opensource (и еще больше проприетарных) форков pg_stat_statements, которые позволяют смотреть планы выполнения запросов:

pg_stat_plans https://github.com/2ndQuadrant/pg_stat_plans
pg_store_plans https://github.com/ossc-db/pg_store_plans
pg_stat_monitor https://github.com/percona/pg_stat_monitor

Все они мне чем-то не подошли и я написал свое https://github.com/postgredients/pg_stat_query_plans. Расскажу что и как сделал, и что хотелось бы добавить в оригинальный pg_stat_statements, чтобы мое расширение было не нужно

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

  • Алена Рыбакина
    Алена Рыбакина Postgres Professional Разработчик
    40 мин

    Перепланирование безнадежных запросов в реальном времени

    В настоящее время приложения с автоматически генерируемыми запросами получают все большее распространение, однако это приводит к тому, что оптимизаторы современных СУБД из-за некоторых ограничений не могут найти оптимальный план их выполнения. Поэтому это вынуждает выполнять их в течение длительного времени. В основном эта ошибка возникает из-за неправильной оценки мощности, что еще хуже, ошибка может повторяться оптимизатором снова и снова. В нашем повествовании мы расскажем о весьма нетрадиционной попытке решения этой проблемы методом перепланирования запросов, который путем анализа дерева выполнения запроса с сохранением фактической мощности, использует знания для генерации более корректного плана запроса.

  • Артём Галонский
    Артём Галонский Postgres Professional Руководитель продуктового направления
    20 мин

    Pooler, load balancer, proxy. Что их объединяет?

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

    В данном докладе сделаем краткий обзор базовых технических требований к новой функциональности PostgresPro Enterprise, которая появится в 17 версии.

  • Александр Попов
    Александр Попов Postgres Professional Инженер
    20 мин

    pgpro_rp - Приоритизация ресурсов

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

  • Николай Шаплов
    Николай Шаплов Postgres Professional Fuzzing Engeener
    40 мин

    Fuzzing-исследование PostgreSQL. Как мы искали и что мы нашли

    Фаззинг-исследование, это когда мы подаем в программу (или ее часть) случайные входные данные (на самом деле случайность весьма условна) и смотрим что из этого получится. И так много раз на многих процессорах.

    Фаззинг исследование большого монолитного программного комплекса всегда не простая задача требующая неординарных решений. В этом докладе я расскажу что и как мы искали при помощи фаззинга и к каким результатам оно привело.

    Исследование функций парсинга типов данных (input-функции): для разогрева;
    Исследование функций реализующих операции между типами (op-функции): тут лучше учитывать структуру;
    Фаззинг сетевой подсистемы: давайте притворимся, что мы POSIX-вызовы, так дешевле;
    Восстановление дискового контекста: нужен день сурка.