Аномальные случаи высокой нагрузки в PostgreSQL, и как мы с ними справились

Базы данных и системы хранения

Оптимизация баз данных

Доклад принят в программу конференции

Мнение Программного комитета о докладе

Докладчик на примере нескольких ярких инцидентов поделится опытом исследования проблем с производительностью в PostrgreSQL. Представленные кейсы очень разнообразны и охватывают проблемы, встречающиеся в инсталляциях разного размера и с разными нагрузками.

Целевая аудитория

Администраторы и инженеры по сопровождению нагруженных баз данных.

Тезисы

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

Мы хотим рассказать про свой опыт в решении проблем и попробуем ответить на вопросы:
* почему index scan / index only scan могут тормозить при адекватном плане запроса?
* что за странные ожидания LWLock'а SubtransControlLock или ClientRead видны в pg_stat_activity?
* высокая system-time-утилизация CPU в системе процессами PostgreSQL. Кто виноват?

Михаил Жилин

Postgres Professional

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

Postgres Professional

Postgres Professional — разработчик Postgres Pro, самой популярной российской системы управления базами данных. В команде Postgres Professional — 70% российских разработчиков PostgreSQL. Среди заказчиков Postgres Pro — крупнейшие российские компании из списка РБК-500, а также объекты КИИ.

Видео

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

Базы данных и системы хранения