Рейтинг@Mail.ru
Highload++ 2017 завершён. Ждем вас на Highload++ 2018!

Профессиональная конференция разработчиков высоконагруженных систем

СКОЛКОВО, Москва 7 и 8 ноября

11-я ежегодная конференция для разработчиков highload-систем, которая соберет   2 700 участников из разных регионов России и мира. Мероприятие направлено на обмен знаниями о технологиях, позволяющих одновременно обслуживать многие тысячи и миллионы пользователей.

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

Оптимизация high-contention write в PostgreSQL
Базы данных и системы хранения

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

Имеет статус PostgreSQL major contributor, разработал следующие фичи СУБД PostgreSQL: команда CREATE ACCESS METHOD, generic WAL интерфейс, lockfree Pin/UnpinBuffer, индексный поиск по регулярным выражениям в pg_trgm, сжатие и "быстрый поиск" по GIN-индексам, буферизованный алгоритм построения и улучшенное разбиение страниц для GiST-индексов, статистика и оценки селективности для массивов и диапазонных типов, улучшения в нечётком поиске строк, KNN-GiST с перепроверкой по heap. Защитил кандидатскую диссертацию, основанную на своём вкладе в развитие PostgreSQL.

Postgres Professional

Сооснователь и генеральный директор Postgres Professional, один из троих российских ведущих разработчиков (major contributors) PostgreSQL, входит в число ведущих экспертов Рунета, разрабатывает PostgreSQL уже 20 лет.
Олег - профессиональный астроном, научный сотрудник Государственного астрономического института имени Штернберга (ГАИШ МГУ), курирует тематику«ИТ в астрономии». Изначально использовал PostgreSQL для решения задач астрономии, с 1996 г. участвует в разработке СУБД и продвигает PostgreSQL в России. Создатель крупнейшего астрономического сайта astronet.ru.
Занимался разработкой портала rambler.ru. Один из разработчиков для PostgreSQL-системы полнотекстового поиска, средств поддержки слабоструктурированных данных, индексных методов доступа, в том числе к пространственным данным, а также разнообразных расширений для СУБД.
Компания Олега Бартунова Postgres Professional разработала и внедряет собственную систему управления базами данных Postgres Pro, она представляет собой улучшенную версию PostgreSQL и включена в единый реестр отечественного ПО.
Олег увлекается бегом, играет в волейбол и ходит в горы.

Тезисы

Оптимизация производительности – дело тонкое. Улучшая производительность системы при одной нагрузке, можно запросто ухудшить её при другой нагрузке. Основным мерилом производительности PostgreSQL в среде его разработчиков является pgbench. Как следствие, PostgreSQL стал "pgbench-optimized DBMS" (СУБД, оптимизированная для pgbench).

Одна из особенностей pgbench – это использование равномерного распределения значений по умолчанию. Как известно, распределения в реальной жизни редко бывают равномерными. Поэтому в большинстве распространённых бенчмарков используются другие распределения, например, распределение Зипфа. Особенность этого распределения в том, что на малую часть данных приходится большая часть запросов. Как следствие, возникает high-contention write (высококонкурентная запись).

На распределении Зипфа мы нашли в постгресе много скрытых проблем, которыми раньше мало занимались. В частности, недостаточно хорошо на такой нагрузке работали row-level локи (как light-weight, так и heavy-weight), возникали проблемы, связанные с MVCC. В результате мы наблюдали ситуацию, что на определённых типах нагрузки постгрес отставал от других Open-Source баз.

Результатом данной работы стал целый ряд патчей, улучшающих поведение постгреса при high-contention write, и, конечно же, патч, добавляющий поддержку распределения Зипфа в pgbench. В докладе мы детально расскажем о внутренних проблемах постгреса при high-contention, а также о том, как мы их преодолеваем.

PostgreSQL

Другие доклады секции
Базы данных и системы хранения

Rambler's Top100