2. Различия между Postgres Pro Standard и PostgreSQL
Postgres Pro предоставляет наиболее актуальную версию PostgreSQL c дополнительными изменениями и расширениями. Этот продукт включает все новые возможности, реализованные компанией Postgres Professional, а также сторонние доработки, которые уже приняты сообществом PostgreSQL и попадут в новые версии PostgreSQL. Таким образом, пользователи Postgres Pro Standard получают ранний доступ к важным нововведениям и исправлениям.
Примечание
Postgres Pro Standard предоставляется по следующей лицензии: https://postgrespro.ru/products/postgrespro/eula. Обязательно ознакомьтесь с условиями лицензии, прежде чем загружать и использовать Postgres Pro Standard.
Postgres Pro Standard отличают от PostgreSQL следующие усовершенствования:
- Покрывающие индексы. (См. раздел, посвящённый INCLUDE, в описании CREATE INDEX.)
- Улучшенный механизм проверки блокировок, не оказывающий отрицательного влияния на производительность.
- Улучшенная производительность при использовании множества временных таблиц в отдельных обслуживающих процессах и при большом количестве одновременных подключений.
- Добавление времени планирования в информацию, выводимую модулем auto_explain.
- Использование ICU на всех платформах с целью обеспечить платформонезависимую сортировку для различных локалей. Провайдер правил сортировки icuзадействуется для всех локалей, за исключениемCиPOSIX.
- Реализация механизма PTRACK, позволяющего программе pg_probackup отслеживать изменения страниц при создании инкрементальных резервных копий.
- Согласованное чтение на ведомых серверах. (См. WAITLSN.)
- Расширенная поддержка редактирования вводимых команд в psql для Windows, реализованная с использованием WinEditLine.
Postgres Pro Standard также включает следующие дополнительные модули:
- Модуль dump_stat, позволяющий сохранять статистику данных при резервном копировании и восстановлении.
- Модуль fasttrun, который предоставляет транзакционно-небезопасную функцию для усечения временных таблиц, что предотвращает разрастание каталога pg_class.
- Модуль fulleq, предоставляющий дополнительный оператор равенства для совместимости с Microsoft SQL Server.
- Модуль hunspell-dict, предоставляющий словари для ряда языков.
- Модуль jsquery реализует специальный язык запросов для эффективного, с использованием индексов, поиска в структурированных данных JSONB
- Служба мониторинга mamonsu, исполненная в виде агента Zabbix.
- Модуль mchar, предоставляющий дополнительный тип данных для совместимости с Microsoft SQL Server.
- Модуль online_analyze, привносящий набор функций, которые немедленно обновляют статистику в целевых таблицах после операций INSERT,UPDATE,DELETEилиSELECT INTOв них.
- Пул соединений pgbouncer.
- Модуль pg_pathman предоставляет оптимизированный механизм секционирования, а также функции для создания и управления секциями.
- pg_probackup — менеджер резервного копирования и восстановления.
- Модуль pg_query_state, дающий возможность узнавать текущее состояние выполнения запросов в обслуживающем процессе.
- Модуль pg_variables, предоставляющий функции для работы с переменными различных типов.
- Модуль pg_tsparser — альтернативный анализатор текстового поиска.
- Модуль plantuner, добавляющий поддержку указаний для планировщика, подключающих или отключающих определённые индексы при выполнении запроса.
- Модуль shared_ispell, позволяющий разместить словари в общей памяти.
- Модуль sr_plan, позволяющий сохранять и восстанавливать планы запросов.
Выпуски Postgres Pro Standard следуют за выпусками PostgreSQL, хотя иногда могут выпускаться чаще. Схема версионирования Postgres Pro Standard основана на схеме версионирования PostgreSQL и включает дополнительную цифру.