ВХОДИТ В ЕДИНЫЙ РЕЕСТР РОССИЙСКИХ ПРОГРАММ И БАЗ ДАННЫХ

СУБД Postgres Pro Standard

Почему выбирают СУБД Postgres Pro Standard?

СУБД Postgres Pro Standard разработана специально для российского рынка на основе открытой СУБД PostgreSQL.

Новые возможности
СУБД Postgres Pro Standard включает ряд новых возможностей, которые появятся в PostgreSQL только через год-два. Таким образом, пользователям Postgres Pro Standard не надо ждать завершения релизного цикла PostgreSQL, чтобы получить доступ к новым функциям и расширениям, разработанным компанией Postgres Professional, а также другими разработчиками PostgreSQL.
Популярная платформа
СУБД PostgreSQL - международный проект с открытым кодом, занимающий первые места в рейтинге DBEngines. Российское сообщество разработчиков и пользователей PostgreSQL составляет несколько тысяч человек и активно растет.
Техподдержка
Компания Postgres Professional предлагает пользователям СУБД Postgres Pro техническую поддержку в режиме 24х7. В штат компании входят как опытные инженеры, способные помочь в критической ситуации и проконсультировать по вопросами использования СУБД, так и ведущие российские разработчики PostgreSQL, способные оперативно внести изменения в код продукта и исправить ошибку.
Российское законодательство
СУБД Postgres Pro Standard подходит для целей импортозамещения, так как входит в Единый реестр российских программ и электронных баз данных Минкомсвязи.

Отличия Postgres Pro Standard от PostgreSQL

Интегрированная административная панель управления (PPEM)
  • единая консоль с простым интерфейсом мониторинга и управления;
  • возможность производить основные административные действия из окна браузера;
  • централизация доступа ко всем экземплярам и базам данных;
  • навигация через единое меню с учетом иерархии объектов;
  • ролевая модель управления доступом пользователей PPEM;
  • вызов привычной утилиты psql прямо из консоли, что сочетает простоту графического интерфейса и гибкость командной строки.
Улучшения производительности на многоядерных системах
  • Оптимизация выделения хэш-таблиц в shared memory, исключающая lock contention при большом количестве процессов.
  • Оптимизация Resource Owner, повышающая производительность сложных запросов и запросов к таблицам с большим количеством партиций.
  • Оптимизации buffer manager.
  • Оптимизации двухфазного коммита.
Усовершенствования полнотекстового поиска
  • Поддержка поиска фраз.
  • Поддержка словарей hunspell для работы со словоформами.
  • Некоторые словари, в том числе русский и английский, включены в состав дистрибутива и их подключение требует одной команды SQL.
  • Модуль shared_ispell, оптимизирующий производительность полнотекстового поиска, путем загрузки словарей в память при старте сервера, а не при начале сессии.
Улучшения производительности на многоядерных системах
  • Оптимизация выделения хэш-таблиц в shared memory, исключающая lock contention при большом количестве процессов.
  • Оптимизация Resource Owner, повышающая производительность сложных запросов и запросов к таблицам с большим количеством партиций.
  • Оптимизации buffer manager.
  • Оптимизации двухфазного коммита.
Усовершенствования полнотекстового поиска
  • Поддержка поиска фраз.
  • Поддержка словарей hunspell для работы со словоформами.
  • Некоторые словари, в том числе русский и английский, включены в состав дистрибутива и их подключение требует одной команды SQL.
  • Модуль shared_ispell, оптимизирующий производительность полнотекстового поиска, путем загрузки словарей в память при старте сервера, а не при начале сессии.
Доступ к внутреннему представлению данных
Модуль pageinspect поддерживает доступ не только к метаинформации, но и к внутреннему представлению данных таблиц.
Переносимость
Поддержка библиотеки libicu на всех платформах обеспечивает однозначную обработку порядка сортировки и прочих операций с юникодными символами. На ряде платформ эта библиотека улучшает производительность сортировки, и, что немаловажно, позволяет в Postgres Pro пользоваться abbreviated keys, которые были отключены в основной версии PostgreSQL.
Сохранение информации о статистике
Добавлен модуль dump_stat, позволяющий при дампе базы данных сохранять информацию о статистике и восстанавливать её. Это позволяет ускорить процедуру восстановления, избавляя от необходимости вычисления статистики командой VACUUM ANALYZE после восстановления.
Сохранение планов выполнения запросов
Добавлен новый модуль sr_plan, позволяющий сохранять планы выполнения запросов и использовать сохраненные планы вместо того, чтобы формировать план запроса заново, при каждом выполнении.
Нечеткий поиск подстрок
Модуль pg_trgm поддерживает не только нечеткое сравнение строк, но и нечеткий поиск подстроки.
Запросы к полям типа JSONB
Добавлен модуль JSQuery, позволяющий на специальном языке формулировать запросы к полям типа JSONB с поддержкой GIN-индексов.
Покрывающие индексы
Поддержка конструкции INCLUDING в CREATE INDEX.
Совместимость с Microsoft SQL Server
Модуль mchar предоставляет дополнительный тип данных, а модуль fulleq - дополнительный оператор равенства для совместимости с Microsoft SQL Server.
Предотвращение разрастание каталога pg_class
Модуль fasttrun предоставляет транзакционно-небезопасную функцию для усечения временных таблиц, предотвращающую разрастание каталога pg_class.
Обновление статистики
Модуль online_analyze предоставляет набор функций, которые немедленно обновляют статистику в целевых таблицах после операций INSERT, UPDATE, DELETE и SELECT INTO в них.
Управление индексами при выполнении запроса
Модуль plantuner добавляет поддержку указаний для планировщика, позволяющих отключать или подключать определённые индексы при выполнении запроса.

Подробные презентации, преимущества, видео, сравнение с ванильной версией доступны по ссылке на Полезные материалы.

Текущая версия

Версия Postgres Pro Enterprise 17.4.1 выпущена

E.1. Postgres Pro Enterprise 17.4.1 #

Дата выпуска: 2025-03-13

E.1.1. Обзор #

Этот выпуск основан на PostgreSQL 17.4 и Postgres Pro Enterprise 17.2.2. Все изменения, унаследованные от PostgreSQL 17.4, описаны в Замечаниях к выпуску PostgreSQL 17.4. По сравнению с Postgres Pro Enterprise 17.2.2 эта версия также содержит следующие изменения:

  • В выходные файлы crash_info добавлены новые сведения, например текущий рабочий каталог, каталог PGDATA и т. д.

  • Добавлены повышенные требования безопасности для команды CREATE PROFILE. Теперь при использовании параметра PASSWORD_REQUIRE_COMPLEX пароли должны содержать символы из трёх разных групп. Также все буквы или их аналоги в языках без разделения на регистры (хинди, китайский и т.п.) в кодировке UTF-8 считаются строчными буквами.

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

  • Реализованы следующие исправления и усовершенствования для CFS:

    • Изменено значение по умолчанию для параметра конфигурации cfs_gc_threshold с 50 до 30 процентов.

    • Исправлена проблема с блокировкой сборщика мусора CFS процессом резервного копирования. Если резервное копирование выполнялось слишком долго, оно могло привести к блокировкам, мешающим записи в сжатые табличные пространства. Теперь оба процесса блокируют только определённые файлы данных на короткое время, избегая взаимоблокировок.

    • Устранена проблема с отсутствующими настройками сжатия для табличных пространств на резервных серверах путём добавления нового типа записи WAL. Ранее резервные серверы не получали такие настройки сжатия, поскольку команда ALTER TABLESPACE ... SET (compression=true) не регистрировалась в WAL.

    • Исправлено поведение функции cfs_start_gc, чтобы недопустимые значения аргумента n_workers отклонялись.

    • Устранена ошибка, из-за которой процесс запуска сборки мусора CFS мог не запуститься и не запустить рабочие процессы сборки мусора на резервных серверах.

  • Исправлена проблема, возникавшая при обновлении Postgres Pro Standard до Postgres Pro Enterprise с использованием pg_upgrade, которое могло завершиться ошибкой вида «could not open file» (не удалось открыть файл), если в старом кластере эпоха была больше 1.

  • Устранена проблема с обработкой файлов *.cfm.bck с помощью pg_upgrade.

  • Исправлено поведение параметра pg_upgrade --check для корректной проверки того, что pg_upgrade запущен на резервном сервере. Ранее она завершалась ошибками вида «cannot assign TransactionIds during recovery» (не удалось назначить идентификаторы транзакций во время восстановления).

  • Устранена ошибка сегментации, вызванная аннулированием обёртки сторонних данных во время автономных транзакций, если автономная транзакция сбрасывала глобальные переменные, в то время как зарегистрированные функции-обработчики оставались активными. Теперь функции-обработчики проверяют наличие глобальных переменных, а данные об аннулировании сохраняются для родительских транзакций.

  • Устранена проблема, из-за которой сервер аварийно завершал работу ошибкой уровня PANIC вместо возврата соответствующей ошибки при удалении кортежей со страницы, где разница между минимальным идентификатором транзакции и текущим идентификатором транзакции превышала 2^31.

  • Устранено раздувание pg_multixact путём введения «нестрогих» ограничений, запускающих автоочистку раньше.

  • Устранена проблема, из-за которой при включённом параметре crash_info могли не записываться диагностические файлы во время обработки переполнения стека. Ранее обработчик сигналов запускался на стеке с переполнением, что могло помешать его запуску из-за нехватки памяти. Теперь обработчик использует альтернативный стек.

  • Устранена проблема, из-за которой роли без явно заданного атрибута VALID UNTIL и связанные с профилем, у которого для PASSWORD_GRACE_TIME установлено значение 0, а для PASSWORD_LIFE_TIMEUNLIMITED, некорректно получали предупреждения об истечении срока действия пароля. Теперь пароли корректно считаются действительными бесконечно.

  • Устранена ошибка, которая вызывала проблемы с запуском последователей, добавленных после выполнения ALTER SYSTEM на инициализированном лидере.

  • Расширение apache_age обновлено до версии 1.5.1.

  • Обновлено решение BiHA — включены следующие возможности, усовершенствования и исправления:

    • Реализована возможность уменьшения параметра конфигурации max_connections в BiHA-кластере без отключения расширения biha. Теперь можно уменьшить значение параметра на узле-лидере и перезапустить его, чтобы изменения вступили в силу. Ранее значение max_connections можно было уменьшить только при временном удалении расширения biha из shared_preload_libraries.

    • Реализован параметр bihactl init --enable-proxima, позволяющий включить расширение proxima при создании BiHA-кластера.

    • Устранена ошибка, приводившая к перезагрузке процесса biha-background-worker при удалении слота репликации.

    • Устранена ошибка, вызывавшая проблемы с преобразованием кластера в BiHA-кластер при заданной переменной shared_preload_libraries в файле postgresql.auto.conf.

    • Устранена ошибка, вызывавшая проблемы при преобразовании синхронного кластера в BiHA-кластер. Теперь не требуется сбрасывать параметр synchronous_standby_names перед преобразованием синхронного кластера.

  • Оптимизирован модуль fasttrun для пропуска ненужных операций усечения пустых временных отношений.

  • Устранена проблема, возникавшая в некоторых особых случаях с обновлением pageinspect до версии 1.10.1 или выше.

  • Расширение pgpro_multiplan обновлено до версии 1.1, в которую включены следующие исправления:

    • Устранена проблема с выполнением запроса, если план был одобрен при включённом pgpro_multiplan.auto_capturing, а затем запрос выполнялся с другим планом при выключенном pgpro_multiplan.auto_capturing. Проблема могла проявляться в ошибках вида «cache lookup failed for type» (ошибка поиска в кеше для типа).

    • Устранена проблема, из-за которой расширение pgpro_multiplan не могло идентифицировать зарегистрированный запрос с параметром, используемым в нескольких местах этого запроса, что препятствовало замораживанию планов для таких запросов.

  • Приложение pgbadger обновлено до версии 13.0.

  • pgbouncer обновлён до версии 1.24.0.

  • Модуль pg_hint_plan обновлён до версии 1.7.0.3.

  • Расширение pg_portal_modify обновлено до версии 0.3.5.

  • Расширение pgpro_anonymizer обновлено до версии 1.3.2.

  • Обновлено расширение pg_proaudit. Включены следующие исправления и усовершенствования:

    • Добавлено новое поле событий: имя пользователя сеанса. Теперь события содержат информацию об атрибутах session_user и current_user SQL-сеанса.

    • Добавлена поддержка новых классов событий: ALL_DDL_NONTEMP и ALL_DML_NONTEMP. Область действия этих классов ограничена объектами, не находящимися во временных схемах pg_temp_nnn.

    • Исправлено внесение в журнал событий SELECT FOR UPDATE и SELECT FOR KEY SHARE: теперь они корректно указываются как команды SELECT, а не UPDATE.

  • Приложение pg_probackup обновлено до версии 2.8.7 Enterprise, в которой улучшена производительность и исправлены некоторые ошибки:

    • Уровень записи в журнал сообщений вида «checking WAL file name» (проверка имени файла WAL), выдающихся при выполнении команды show с параметром --archive, понижен с INFO до VERBOSE.

    • Изменена логика команды add-instance: теперь обязательно использовать параметр -D, указывающий путь к каталогу. Команда add-instance больше не использует переменную среды PGDATA как расположение каталога, а требует явного указания пути к каталогу в параметре команды.

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

    • Устранена проблема с механизмом многопоточного копирования файлов, предотвращающим многократное копирование одного файла. Ранее из-за этой проблемы могла не создаваться резервная копия при высокой нагрузке на сервер.

  • Добавлено расширение pgpro_gbtree, позволяющее создавать и использовать глобальные индексы для секционированных таблиц. Глобальный индекс создаётся для одного или нескольких столбцов секционированной таблицы и не включает ключ секционирования. Это позволяет выполнять сканирование индекса без перебора всех секций.

  • Расширение pgpro_queue обновлено до версии 1.1, где удалён более не требующийся параметр pgpro_queue.launcher_database. Теперь при попытке указать этот параметр будет выведено соответствующее предупреждение.

  • Расширение pgpro_scheduler обновлено до версии 2.11.1, в которой устранена ошибки сегментации, которая могла возникнуть, если pgpro_scheduler не завершал свои процессы при удалении связанного расширения или схемы. Теперь работа завершается ошибкой, а не сбоем.

  • Расширение pgpro_sfile обновлено — добавлена проверка аргумента a_sf_index функции sf_write, его значение должно быть больше нуля.

  • Обновлено расширение pgpro_stats. Включены следующие усовершенствования и исправления:

    • Изменён формат файла выгрузки статистики и соответствующие процедуры сохранения/загрузки.

    • Имена атрибутов фильтра explain_* трассировщика сеансов приведены в соответствие с именами параметров конфигурации трассировки сеансов.

    • Реализовано отключение функциональности трассировки сеансов, если не указаны соответствующие фильтры.

  • Устранена проблема с записью более ранних временных меток расширением pgpro_usage. Ранее время последнего использования права регистрировалось на основе времени начала транзакции, что могло привести к перемещению временной метки назад, если длительная транзакция обращалась к таблице с опозданием, в то время как более короткая параллельная транзакция обращалась к ней раньше.

  • Обновлено расширение proxima. Включены следующие возможности, усовершенствования и исправления:

    • Реализованы параметры конфигурации proxima.p2p_ssl_enabled, proxima.p2p_auth_methods и proxima.ssl_trusted_certs_dir для управления SSL-взаимодействием и аутентификацией между узлами кластера.

    • Расширен список SQL-функций, позволяющих расширению proxima автоматически устанавливать динамический выделенный сеанс, если эти функции присутствуют в запросе. Новые функции: set_config() и setseed().

    • Отключён запуск proxima на узле-рефери BiHA-кластера, так как это могло вызвать проблемы с авторизацией.

    • Устранена ошибка, из-за которой идентификаторы узлов BiHA не отображались в процессе proxima.

    • Устранена ошибка, из-за которой расширение proxima не учитывало значения listen_addresses Postgres Pro при запуске локальных обслуживающих процессов.

  • Обновлён модуль rum: изменено сообщение об ошибках, возникающих в случаях, когда в запросе SELECT используется ORDER BY.

E.1.2. Миграция на версию 17.4.1 #

Если вы производите обновление выпуска Postgres Pro Enterprise, базирующегося на той же основной версии PostgreSQL, достаточно просто установить новый выпуск в текущий каталог инсталляции.

Важно

Чтобы обновить BiHA-кластер с Postgres Pro Enterprise версии 17.2 до Postgres Pro Enterprise версии 17.4, см. раздел Миграция BiHA-кластера в состоянии LEADER_RW.

Для перехода с PostgreSQL, а также с выпуска Postgres Pro Standard или Postgres Pro Enterprise, базирующегося на предыдущей основной версии PostgreSQL, обратитесь к инструкциям по миграции на версию 17.

Подробнее

Правила лицензирования
СУБД Postgres Pro

Закажите тестирование СУБД Postgres Pro Standard

Выберите вариант СУБД для тестирования:






Подписывайтесь на наш ТГ-канал Postgres Professional
Чтобы продолжить, необходимо авторизоваться с использованием корпоративной почты. Сейчас Вы вошли с использованием публичного сервиса электронной почты.

ПО

Тестовые лицензии СУБД Postgres Pro предназначены исключительно для целей разработки, тестирования и ознакомления с возможностями продукта. Использование данных лицензий в коммерческих и производственных целях, а также промышленной эксплуатации не разрешается. Для промышленной эксплуатации необходимо осуществить приобретение коммерческих лицензий.

По истечении срока действия Соглашения Пользователь обязан прекратить использование программного обеспечения.

С полным текстом лицензионного соглашения для тестовых лицензий можно ознакомиться по ссылке.

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

Если, ознакомившись с Соглашением, Вы согласны соблюдать его условия при использовании Продукта, то Вам необходимо направить в ООО «ППГ» Заявку на тестирование по форме. По итогам одобрения Заявки Соглашение будет считаться заключенным и вступит в силу с даты направления Правообладателем в личный кабинет Пользователя уведомления об акцепте Заявки и направления ООО «ППГ» на адрес электронной почты, указанный Вами в Заявке, информации для скачивания дистрибутива Продукта.

Получить ПО на тестирование или продлить на новый срок

Пожалуйста, введите данные, чтобы мы могли связаться с Вами:
Заполните фамилию
Заполните имя
Заполните отчество
Заполните E-mail
Заполните вашу должность
Укажите правильный ИНН организации
Укажите название организации
Укажите сайт организации
Укажите УИН/УНП/ИНН(VAT ID) организации
Укажите код иностранной организации
Выберите профиль компании
согласие на обработку персональных данных Политикой конфиденциальности
Ваш заявка на получение копии ПО для проведения тестирования направлена в службу продаж, ожидайте ответа. Заявка будет обработана в течение 1-го рабочего дня.