title

text

Павел Труханов
Павел Труханов okmeter.io CEO
16:00 05 февраля
22 мин

Мониторинг Postgres по USE и RED

Есть две методологии перформанс мониторинга: USE (Utilization, Saturation, Errors) Брендана Грегга и RED (Requests, Errors, Durations) от Тома Уилки. В докладе я хочу рассказать о том, как мы на них ориентировались и продолжаем ориентироваться, когда реализуем мониторинг Postgres в okmeter.io.

Слайды

Видео

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

  • А
    Анна Акентьева Postgres Professional младший разработчик
    22 мин

    Autovacuum: что можно узнать, если прочитать код, а не документацию

    В докладе будут рассмотрены детали реализации автовакуума и практические выводы, следующие из них. Будет также дан краткий обзор патчей для автовакуума, которые рассматриваются сообществом разработчиков на данный момент и возможно будут включены в следующие версии PostgreSQL.

  • Александр Кузьменков
    Александр Кузьменков Postgres Professional Программист
    45 мин

    Новые планы выполнения запросов в PostgreSQL 11 и будущих версиях

    Одна из важных задач СУБД -- по декларативному SQL-запросу построить эффективный план его выполнения, используя разные алгоритмы сканирования и объединения таблиц. Над улучшением планирования запросов идёт непрерывная работа. Какие методы применяет PostgreSQL, чтобы получить эффективный план, что нового в этой области в версии 11, и что сейчас находится в разработке? Например, при планировании запроса можно удалять ненужные соединения, или сводить внешние и полусоединения к внутренним. Есть патчи, позволяющие выполнять merge join по пересечению интервалов, или улучшающие оценку селективности соединения с помощью многоколоночной статистики. Если говорить о сканировании отдельных таблиц, покрывающие индексы позволяют чаще использовать index-only scan. Инкрементальная сортировка и более точная оценка стоимости сортировки улучшают планы, где нужен сортированный вывод, например, для GROUP BY и ORDER BY или merge join. Мы обсудим эти и другие подобные оптимизации, которые уже реализованы или находятся в разработке.

  • Александр Коротков
    Александр Коротков Postgres Professional Руководитель разработки
    45 мин

    Узкие места PostgreSQL

    Хорошо, когда база работает предсказуемо. Если сервер не справляется с нагрузкой, то только знай добавляй процессорные ядра, терабайты оперативной памяти и миллионы IOPS'ов – всё станет хорошо. Гораздо неприятнее, когда у сервера куча свободных ресурсов, но база данных всё равно тормозит. И особенно обидно, когда при нагрузочном тестировании всё работало как часы, а при реальной нагрузке такого же объёма – встаёт колом.

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

  • М
    Марат Сурмашев Health Samurai Программист
    Николай Рыжиков
    Николай Рыжиков Health Samurai CTO
    90 мин

    Эксплуатация JSONB

    JSONB в PostgreSQL обладает рядом интересных свойств, которые могут пригодиться при проектировании и разработке бизнес-систем с тяжелой предметной областью, помогая бороться со сложностью и вариабельностью. На мастер-классе мы обсудим преимущества и недостатки использования JSONB. На примере открытой медицинской базы данных - fhirbase - мы с вами:

    • загрузим синтетические медицинские данные в PostgreSQL
    • научимся искать и индексировать эти данные (gin, jsquery, json-knife)
    • посмотрим, как использовать JSON агрегацию для постороения сложных запросов (GraphQL)
    • покажем, как эти данные можно модифицировать и валидировать
    • поговорим об архитектурных последствиях использования JSONB

    Технические требования:

    • docker
    • docker-compose

    Инструкция по подготовке