Вышел PostgreSQL 9.5!
Компания Postgres Professional поздравляет всех с Рождеством и напоминает, что сегодня вышла новая версия PosqtgreSQL 9.5. За русский перевод пресс-релиза спасибо Николаю Самохвалову. Наиболее полный список нового тут. Краткий, но толковый перечень обновлений можно посмотреть также в презентации Брюса Момжана. Среди кратких и легко понимаемых обзоров можно порекомендовать также статью Джоша Беркуса о фичах ориентированных на большие данные.
В новой версии присутствуют долгожданные:
- Функциональность UPSERT или MERGE (гибрид между INSERT и UPDATE) дает возможность вставить запись, а если она уже есть, проапдейтить её. В отличие от ранее использовавшихся разнообразных трюков, прямая реализация быстрее и надежнее, и корректно работает в конкурентной среде. Подробнее можно почитать в статье Олега Олейника на Хабре и на странице Wiki PostgreSQL.
- Row Level Security - возможность ограничивать права пользователя на доступ к информации на уровне отдельных строк базы данных. Раньше для этого также требовались трюки, теперь имеется реализация, встроенная в СУБД (читать тут и для любителей подоробностей тут ).
- GROUPING SETS, ROLLUP, CUBE - удобные механизмы для аггрегации, позволяющие за один запрос сформировать агрегаты, для которых ранее требовалось несколько запросов или манипуляции на стороне клиента. Хорошее описание в документации, вышеупомянутой статье Джоша Беркуса и в статье Олега Олейника.
- BRIN-индексы - удобный компромисс между скоростью и объемом индекса, крайне полезны для работы с большими объемами данных. В документации описание скудное, чтобы понять, что к чему, рекомендуем заглянуть в статью в блоге Хуберта Любашевского и в блоге компании 2nd Quadrant.
- Новые возможности для работы с JSON/JSONB, разработанные Дмитрием Долговым на основе патчей Олега Бартунова и Федора Сигаева для nested hstore.
Продолжая нашу линию сборок, мы собрали PostgreSQL 9.5.0 для Windows, она доступна для скачивания тут: http://www.postgrespro.ru/windows