пятница, 13 октября 2017 г.

Митап в ВШЭ: встречаем PostgreSQL 10.0

5 октября в ВШЭ прошел митап, посвященный выходу версии PostgreSQL 10.0. Мероприятие было организовано Postgres Professional совместно с факультетом компьютерных наук НИУ ВШЭ. Дата митапа точно совпала с выходом официальной версии «десятки», которая не была известна заранее. В Postgres Professional задолго до ее выхода следили за версиями-кандидатами, так что такое совпадение не случайно.


На митапе, который проходил более 3 часов в переполненном зале с почти сотней зрителей, прозвучали три аналитических доклада, в которых эксперты не только рассказывали о новых функциональных возможностях PostgreSQL 10.0, но и сравнивали различные варианты решения проблем, ради которых вносились изменения в ванильную версию. Докладчики также представили соответствующие средства Postgres Pro с их плюсами и минусами. Большой интерес проявили присутствовавшие и к обнародованным дорожным картам нашей компании на фоне планов сообщества — вплоть до будущей версии PostgreSQL 11.0.

Олег Бартунов: PostgreSQL как универсальная СУБД

Первый, концептуальный доклад сделал генеральный директор компании Postgres Professional Олег Бартунов. Название подчеркивало, что в своем современном состоянии СУБД PostgreSQL может все, покрывая большой диапазон типов данных и разнообразных типов нагрузок.

За время существования СУБД PostgreSQL у нее появилось более 70-ти коммерческих и открытых форков. Самая последняя новость —выход 2ndQPostgres, коммерческой версии от компании 2-nd Quadrant.

Говоря о непосредственном поводе митапа — выходе версии PostgreSQL 10.0 — Олег пояснил значение и перспективы новшеств, которые можно поделить на 5 групп:

  • для администраторов баз данных - отказ от открытого хранения паролей, от аутентификации на MD5 в пользу SCRAM-SHA-256, переименование каталогов WAL и др.;
  • появление логической репликации - гигантский шаг в направлении мультимастера, развиваемого в Postgres Professional;
  • повышение производительности за счет дальнейшего распараллеливания работы СУБД, в том числе, параллельного сканирования индексов;
  • декларативный синтаксис секционирования таблиц (эту тему подробно разобрал Дмитрий Иванов в своем докладе).

Видео доклада:




Слайды доклада:






Дмитрий Иванов: есть новые бенчмарки PostgreSQL и pg_pathman

Один из разработчиков pg_pathman Дмитрий Иванов разобрал проблемы, которые возникали при секционировании через наследование в предыдущих ванильных версиях и были отчасти решены в PostgreSQL 10.0, а также о том, что все еще мешает создать полноценное секционирование. Расширение pg_pathman, которое будет работать и с PostgreSQL 10.0, не только удобно, но и резко убыстряет обработку запросов при большом количестве секций (речь шла о 500 и больше). В ситуациях, когда даже 10-й PostgreSQL перебирает все секции подряд, pg_pathman пропускает заведомо неподходящие и избегает ненужные блокировки.

Впервые были показаны результаты тестов — на этот раз YCSB — где pg_pathman повышает производительность PostgreSQL в сотни раз. Дмитрий упомянул и о проблемах, таких как глобальные индексы, над которыми работают наши разработчики.


Видео доклада:




Слайды доклада:






Иван Картышов: непроверенная копия не поможет

Доклад Ивана Картышова был посвящен анализу существующих решений резервного копирования и валидации копий. Речь шла и о полных, об инкрементальных, и о дифференциальных типах копирования. Сравнивались:

  • pgbackrest от Crunchy,
  • pgbarman от 2ndQuadrant и
  • pg_probackup — наша разработка.

Иван разъяснял особенности, различия в функциональности этих решений, их связи с использованием механизмов ptrack, page level и rsync.

Копия не поможет восстановить базу — напоминал докладчик — если за время между снятием копии и началом восстановления она была повреждена. Поэтому средства валидации, которые доступны в Postgres Pro Enterprise, куда входит pg_probackup, радикально улучшат надежность хранения данных.


Видео доклада:




Слайды доклада:






Фотогалерея:




Поделись этим