title

text

Леонид Борчук
Леонид Борчук Яндекс Разработчик
: декабря
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, чтобы мое расширение было не нужно

Слайды

Слайды доступны участникам мероприятия, выполнившим вход в личный кабинет.

Видео

Видео доступно участникам мероприятия, выполнившим вход в личный кабинет

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

  • Иван Оселедец
    Иван Оселедец
    45 мин

    Современные методы искусственного интеллекта

    В докладе будет дан краткий обзор основных понятий, решаемых проблем и перспектив искусственного интеллекта

  • Владимир Сердюк
    Владимир Сердюк Общество с ограниченной ответственностью «Кластерные технологии Софтпоинт» Ген. директор
    40 мин

    Распределение транзакционной нагрузки в кластере серверов СУБД

    Данный доклад представляет собой описание концепции и прототипа кластера СУБД, работающего по принципу Master-Master. Проблема синхронизации данных в таких системах ни в одном тиражном решении до сих пор не решена, поэтому масштабирование для OLTP-систем, где транзакционная нагрузка сильно превалирует над аналитической, решается до сих пор только усилением аппаратной части – добавить ядер/процессоров, добавить памяти, что зачастую бывает не самым рациональным решением. Напомню, что задача распределения аналитической нагрузки решается относительно просто с помощью создания дополнительных реплик и перенаправления запросов на чтение вне транзакций на другие реплики. В случае же транзакционной нагрузки, если применять аналогичный подход, возникают коллизии, например, типа «писатель-писатель», которые, если их не учитывать, могут привести к неверным данным в транзакциях. Концепция кластера распределённых вычислений на первый взгляд звучит просто: «Все запросы на изменение данных выполняются мгновенно на всех нодах (серверах кластера), а чтение выполняется локально». Специальный прокси-агент распарсивает запросы, и выполняет запросы на чтение локально, а запросы на изменение перенаправляются параллельно и асинхронно на все остальные ноды кластера. Все изменения выполняются в системе зеркальных распределённых транзакций , которыми управляет координатор распределённых транзакций. Несмотря на простоту концепции и формулировки, возникает множество технических проблем, которые нигде ранее не были решены. В случае высокого параллелизма и конкуренции ресурсов порядок запросов на разных серверах может изменяться, что, в свою очередь, может приводить к изменению состава данных и к распределенным взаимоблокировкам. Также возникают сложности с падением линейной скорости примитивных операций. И, не решив проблемы оптимизации, данное решение сразу не подойдет для большинства систем. Одними из целевых показателей промышленного решения будет являться подключение до 20-и серверов в кластер с линейной просадкой времени операций не более чем на 10 % .

    В докладе будут рассмотрены эти и другие проблемы распределено-вычислительного кластера. В том числе, представлены примеры системы, для которых это будет максимально эффективным решением, а также описание архитектуры и демонстрация прототипа.

  • Евгений Пажитнов
    Евгений Пажитнов Postgres Professional TAM
    20 мин

    PgRAP: Программа оценки здоровья и рисков PostgreSQL

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

  • Александр Котин
    Александр Котин Postgres Professional Старший технический менеджер продукта
    40 мин

    Управление планами запросов - новые возможности

    Расскажем о новых возможностях и продвинутых техниках управления планами запросов (совместное использование AQO, sr_plan и pg_hint_plan)