PostgreSQL 15 — новая версия базы данных с открытым кодом

728
PostgreSQL 15 - новая версия базы данных с открытым кодом
PostgreSQL 15 - новая версия базы данных с открытым кодом

PostgreSQL 15 базируется на улучшении производительности последних выпусков с заметными преимуществами для управления рабочими нагрузками как в локальных, так и в распределенных развертываниях, включая улучшенную сортировку. Эта версия улучшает удобство разработки благодаря расширению функционала популярной команды MERGE и добавляет больше возможностей для наблюдения за состоянием базы данных.

«Сообщество разработчиков PostgreSQL продолжает создавать функции, которые упрощают выполнение высокопроизводительных задач с большим объемом данных, одновременно улучшая «developer experience»», — сказал Джонатан Кац из команды PostgreSQL.

Улучшенная скорость сортировки и сжатия

В новой версии PostgreSQL улучшены алгоритмы сортировки в памяти и на диске. Контрольные замеры показывают ускорение на 25%-400% в зависимости от типа данных.

Также в PostgreSQL 15 улучшена производительность средств архивирования и резервного копирования.

PostgreSQL 15 добавляет поддержку сжатия LZ4 и Zstandard (zstd) к файлам логирования (WAL), что позволяет сэкономить дисковое пространство и дает преимущества производительности для определенных рабочих нагрузок.

Улучшение стандартных команд

PostgreSQL 15 содержит стандартную команду SQL MERGE. MERGE позволяет писать SQL с условными операторами, которые могут содержать действия INSERT, UPDATE и DELETE в одном операторе.

Этот последний выпуск добавляет новые функции для использования регулярных выражений для проверки строк: regexp_count(), regexp_instr(), regexp_like() и regexp_substr(). PostgreSQL 15 также расширяет функцию range_agg для агрегирования multirange типов данных, которые были добавлены в предыдущем выпуске.

PostgreSQL 15 позволяет пользователям создавать представления данных, которые используют права текущего пользователя, а не того кто создал представление (view). Этот параметр, который называется security_invoker, добавляет дополнительный уровень защиты, чтобы гарантировать, что абоненты представления имеют правильные разрешения для работы с данными.

Дополнительные параметры с логической репликацией

PostgreSQL 15 обеспечивает большую гибкость для управления логической репликацией. В этом выпуске представлены фильтрация строк и списки столбцов для publishers, что позволяет пользователям выбирать копирование подмножества данных из таблицы. PostgreSQL 15 добавляет функции для упрощения управления конфликтами, включая возможность пропуска повторного воспроизведения конфликтной транзакции и автоматического отключения подписки в случае обнаружения ошибки. Этот выпуск также включает поддержку использования двухфазной фиксации (2PC) с логической репликацией.

Улучшения логирования и конфигурации

PostgreSQL представляет новый формат логирования: jsonlog. Он предусматривает представление в формате JSON, что позволяет обрабатывать файлы логов PostgreSQL в системах структурированного логирования.

Эта версия предоставляет администраторам баз данных больше гибкости в том, как пользователи могут управлять конфигурацией PostgreSQL.

Другие заметные изменения

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

PostgreSQL  позволяет сделать правила сортировки ICU стандартным правилами для кластера или отдельной базы данных.

В этой версии также добавлено новое встроенное расширение pg_walinspect, которое позволяет пользователям проверять содержимое файлов логирования непосредственно из интерфейса SQL.

PostgreSQL  также отменяет разрешение CREATE для всех пользователей, кроме владельца базы данных из public (или default) схемы.

Загрузки PostgreSQL 15

Linux

MacOS

Windows

BSD

Solaris