2. Возможности Postgres Pro Shardman #

Postgres Pro Shardman предоставляет наиболее актуальную версию PostgreSQL c дополнительными изменениями и расширениями. Этот продукт включает все новые возможности, реализованные компанией Postgres Professional, а также сторонние доработки, которые уже приняты сообществом PostgreSQL и попадут в новые версии PostgreSQL, а также некоторые возможности, унаследованные от Postgres Pro Enterprise. Таким образом, пользователи Postgres Pro Shardman получают ранний доступ к важным нововведениям и исправлениям.

Примечание

Postgres Pro Shardman предоставляется по следующей лицензии: https://postgrespro.ru/products/postgrespro/eula. Обязательно ознакомьтесь с условиями лицензии, прежде чем загружать и использовать Postgres Pro Shardman.

Postgres Pro Shardman обладает следующими преимуществами и улучшениями совместимости:

От Postgres Pro Enterprise дополнительно унаследованы следующие усовершенствования:

  • 64-битные идентификаторы транзакций, исключающие проблемы зацикливания. (См. Подраздел 23.1.5.)
  • Сжатие на уровне страниц. (См. Главу 31.)
  • Справедливое распределение лёгких исключительных блокировок после получения заданного количества разделяемых блокировок. (См. описание параметра lwlock_shared_limit.)
  • Улучшение в libpq обработки подключений с несколькими серверами и перехода от одного к другому. (См. описание параметров hostorder и failover_timeout.)
  • Добавление в libpq возможности забыть введённый пароль, что позволяет предотвратить переподключения, когда это требуется политикой безопасности. (См. описание параметра reusepass.)
  • Поддержка вывода времени в pg_waldump.
  • Алгоритм поиска k ближайших соседей (k-NN) для индекса-B-дерева. (См. Раздел 11.13.)
  • Устранено практически достижимое ограничение на число записей в ACL (списках управления доступом), связанных с таблицами и индексами.
  • Представление pgpro_stat_wal_activity, показывающее объём файлов WAL, который генерирует каждый процесс.
  • Проверка уникальных ограничений в индексах-B-деревьях, выполняемая модулем amcheck.
  • Поддержка передачи именованных и позиционных аргументов скриптам, вызываемым командой \i в psql.
  • Корпоративная редакция приложения pg_probackup, поддерживающая интерфейс Simple Storage Service (S3) для хранения данных в частных облачных хранилищах, CFS (сжатую файловую систему) для инкрементного копирования, а также алгоритмы сжатия lz4 и zstd.
  • Исключение дубликатов блокировок, благодаря которому обеспечивается эффективное хранение в памяти и отслеживание всех исключительных блокировок, удерживаемых процессом запуска резервного сервера во время воспроизведения WAL.
  • Оптимизированный механизм для работы с метаданными таблиц, который позволяет получать информацию об атрибутах с использованием системного кеша вместо прямого чтения из системного каталога.

От Postgres Pro Standard дополнительно унаследованы следующие усовершенствования:

  • Увеличенная скорость и эффективность планирования для различных типов запросов.
  • Уменьшенное потребление памяти при обработке сложных запросов со множеством таблиц.
  • Добавление времени планирования в информацию, выводимую модулем auto_explain.
  • Возможность замены нулевого байта заданным ASCII-символом при загрузке данных с помощью команды COPY FROM. (См. описание параметра nul_byte_replacement_on_import.)

    Возможность замены символа '\u0000' заданным символом Unicode при вызове функции, обрабатывающей JSONB. (См. описание параметра unicode_nul_character_replacement_in_jsonb.)

  • Реализация механизма PTRACK, позволяющего программе pg_probackup отслеживать изменения страниц при создании инкрементальных резервных копий.
  • Возможность изменения параметра restore_command без перезапуска сервера.
  • Расширенные политики аутентификации, обеспечивающие эффективное управление паролями и контроль доступа. (См. CREATE PROFILE и ALTER ROLE).
  • Встроенные механизмы защиты данных, которые позволяют стерилизовать объекты, перед удалением заполняя их нулями. Обнуление объектов может производиться перед удалением файлов на диске и перед удалением устаревших версий строк (очисткой страниц), освобождением ОЗУ и удалением или перезаписью файлов WAL. (Только сертифицированная редакция.)
  • Статистика очистки таблиц, индексов и баз данных в системных представлениях.
  • Предопределённые роли, позволяющие создавать табличные пространства и управлять профилями без прав суперпользователя.
  • Сбор информации о сбоях сервера, который включается параметром конфигурации crash_info и находится под управлением нескольких параметров, включая этот.
  • Оптимизированное потребление памяти при оценке избирательности для каждого элемента массива.

Postgres Pro Shardman также включает следующие дополнительные модули и приложения:

  • Расширение aqo для адаптивной оптимизации запросов.
  • Пул соединений pgbouncer.
  • Модуль pg_integrity_check, осуществляющий вычисление и проверку контрольных сумм отслеживаемых файлов. (Только сертифицированная редакция.)
  • Расширение pg_proaudit, позволяющее отслеживать различные события, связанные с безопасностью.
  • pg_probackup — менеджер резервного копирования и восстановления.
  • Утилита pgpro_controldata, показывающая управляющую информацию кластера БД PostgreSQL/Postgres Pro Shardman и параметры совместимости кластера и/или сервера.
  • Расширение pgpro_pwr, позволяющее получать отчёты по нагрузке, полезные для выявления наиболее ресурсоёмких операций в базе данных.
  • Расширение pgpro_stats, которое собирает статистику выполнения SQL-операторов, подсчитывает статистику событий ожидания и предоставляет прочие полезные метрики, которые в PostgreSQL нельзя получить никак иначе. Оно также обеспечивает возможность трассировки сеансов приложений и может создавать представления, эмулирующие другие расширения для сбора статистики.
  • Модуль pg_query_state, дающий возможность узнавать текущее состояние выполнения запросов в обслуживающем процессе.
  • Расширение pgvector, предоставляющее поиск сходства векторов в Postgres Pro Shardman.
  • Расширение pg_wait_sampling, предназначенное для периодического сбора статистики по событиям ожидания. Воспользовавшись этим расширением, вы сможете понять характер активности сервера, в том числе увидеть текущие события ожидания во всех обычных и фоновых рабочих процессах.

Postgres Pro Shardman предоставляет расширенные возможности и функциональность, поэтому предъявляет более строгие требования к поддерживаемым операционным системам. Postgres Pro Shardman совместим со следующими ОС:

  • Ubuntu 20.04/22.04
  • Debian 10/11/12
  • Red Hat Enterprise Linux 7/8/9
  • РЕД ОС 7.3/8
  • Альт 9/10/10SP
  • Astra Linux 1.7/1.8/s390

Важно

Любые упоминания Windows или другой операционной системы, отличной от Linux, в этой документации неприменимы к Postgres Pro Shardman.

Выпуски Postgres Pro Shardman следуют за выпусками PostgreSQL, хотя иногда могут выпускаться чаще. Схема версионирования Postgres Pro Shardman основана на схеме версионирования PostgreSQL и включает дополнительную цифру.