Мониторинг Postgres по USE и RED
Есть две методологии перформанс мониторинга: USE (Utilization, Saturation, Errors) Брендана Грегга и RED (Requests, Errors, Durations) от Тома Уилки. В докладе я хочу рассказать о том, как мы на них ориентировались и продолжаем ориентироваться, когда реализуем мониторинг Postgres в okmeter.io.
Слайды
Видео
Другие доклады
-
Андрей Фефелов Mastery.pro Технический директор
Как мы выбирали среди patroni, stolon, repmgr для нашего отказоустойчивого Постгреса
Для одного из наших проектов понадобилось решать задачу построения отказоустойчивой БД, желательно к тому же географический распределенной.
Первое на что мы посмотрели - это облачные решения от большой тройки, однако, стоимость их эксплуатации превзошла все наши скромные ожидания. К тому же у нас есть всякие штуки вроде экстеншенов и londiste репликации, и они не совместимы с тем, что предлагают облака.
В докладе я расскажу о том, почему мы остановились на patroni, на какие грабли наступили и какие у него есть неочевидные, но прикольные штуки, которые сильно облегчают жизнь.
-
Александр Павлов Modulbank .NET разработчик
Как получить нагрузку в БД на пустом месте?
Мы - обычные разработчики, которые думали о том, как разработать систему, способную выдерживать неплохие нагрузки, и это даже получилось.
На уровне архитектуры всё было OK, но объём данных возрастал, и начали вылезать не самые приятные моменты, о которых ранее никто не думал и не понимал. Иногда это приводило нас к самым потрясающим запросам, которые мы не понимали, как можно было написать. Мой небольшой рассказ будет о том, как получить нагрузку в БД на пустом месте и как потом от неё избавиться.
-
Christopher Travers DeliveryHero SE Principle Engineer
Восстановление данных в PostgreSQL при поврежденной файловой системе
Данное тематическое исследование посвящено разбору случая, когда мы решили приложить усилия к восстановлению данных. Доклад подойдет для всех пользователей: как для новичков, так и для продвинутых администраторов баз данных PostgreSQL. Начинающие пользователи получат понимание того, что представляет собой восстановление данных и чем оно не является, чего можно ожидать, каким образом построить работу с привлеченными экспертами, чтобы получить на выходе наилучший результат. В тоже время, более продвинутые пользователи и эксперты PostgreSQL также получат честную порцию технических аспектов.
-
TTatsuro Yamada NTT Comware Ведущий специалист по базам данных
Настройка автопланировщика с использованием цикла обратной связи
При OLAP и пакетной обрабокте данных часто наблюдается ситуация, что чем сложее запрос (содержит много джойнов, фильтров и аггрегативных функций), тем выше вероятность ошибок в оценке количества строк, в результате чего планировщик выбирает неэффективный план исполнения запроса.
Для того, чтобы решить эту проблему, я разработал инструмент под названием pg_plan_advsr - это расширение для PostgreSQL, которое исправляет ошибки оценки путем неоднократного возвращения в планировщик информации, собранной в ходе исполнения запроса.
Расширение содержит три фичи:
- Автоматическая оптимизация плана запроса за счет неоднократного возвращения информации о ходе выполнения запроса в планировщик.
- Сохранение всех выработанных при оптимизации планов запросов в таблицу истории.
- Создание и сохранение хинтов оптимизатора с тем, чтобы иметь возможность воспроизвести выработанные планы исполнения запросов в процессе настройки.
Я верифицировал эффективность pg_plan_advsr путем запуска join order benchmark (JOB) на PG 10.4, в ходе чего наблюдалось сокращение времени исполнения запроса до 50% от первоначального. Таким образом, расширение будет полезно пользователям, который хотят настроить планировщик для OLAP и пакетной обработки данных.
В ходе презентации я расскажу о следующие моментах:
- Принципы построения и архитектура pg_plan_advsr.
- Подробная информация о результатах тестирования JOB.
- Направления улучшений в будущем.
- Совместное использование расширений aqo и pg_plan_advsr together (экспериментальное).