| Патч Анастасии Лубенниковой принят в свободно распространяемую версию PostgreSQL

Автор: Игорь Лёвшин
Ведущий разработчик Postgres Professional Анастасия Лубенникова на конференции PGConf.Индия сообщила о том, что несколько часов назад Питер Гейган закоммитил в PostgreSQL патч для сжатия дубликатов в индексах типа B-Tree.

Ведущий разработчик Postgres Professional Анастасия Лубенникова на конференции PGConf.Индия сообщила о том, что несколько часов назад Питер Гейган закоммитил в PostgreSQL патч для сжатия дубликатов в индексах типа B-Tree.

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

Сжатие дубликатов означает, что повторяющиеся ключи хранятся в индексе не отдельно, а вместе, в виде ключа и списка ссылок, приблизительно как в индексе типа GIN.

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

На тестах производительности все индексы, к которым дедупликация применима, сжались примерно в 3 раза.

Иван Панченко, заместитель генерального директора Postgres Professional, прокомментировал: "Компания Postgres Professional, разрабатывающая свои продукты на базе Open Source, считает необходимым делиться с сообществом своими разработками. Разработки компании, имеющие ценность для сообщества, постепенно передаются ему под свободными лицензиями."