Postgres Pro Enterprise — коммерческий форк Postgres Pro, который содержит все функции свободно-распространяемой версии.
Основные отличия Enterprise-версии:
- 64-разрядный счетчик транзакций
Позволяет избавиться от проблем переполнения счетчика транзакций, который в обычном PostgreSQL представляется 32-разрядным числом. Об этих проблемах можно почитать, например такую реальную историю из жизни наших клиентов, чтобы понять их важность. При этом удалось обойтись без увеличения размера заголовка записи.
- Инкрементальный бэкап на уровне блоков
БД Enterpise-версии хранит карту измененных блоков, что позволяет сбрасывать в резервную копию только изменённые (с момента предыдущего бэкапа) блоки. Это позволяет сократить объем хранимых резервных копий и снизить время восстановления. Наибольший выигрыш дает для больших баз с небольшой изменяемой частью.
- Автономные транзакции
В обычном постгресе автономных транзакций нет, но есть различные способы получить их — с помощью DBlink, или с помощью недавно появившегося расширения pg_background. Но эти варианты не полностью устраивают наших заказчиков, мигрирующих с Оракла, поэтому мы разработали свою, наиболее производительную реализацию автономных транзакций.
- Секционирование таблиц
Наш подход к секционированию таблиц продемонстрирован расширением pg_pathman, в Enterprise-версии получил более высокую производительность и более высокую масштабируемость за счёт более глубоких изменений ядра СУБД. В последующих релизах Enterprise-версии будет доступен декларативный синтаксис для управления секционированием.
- Компрессия данных
Сжатие данных в блоках с управлением на уровне табличных пространств позволяет достичь компрессии на реалистичных наборах данных в несколько раз при разумных вычислительных затратах.
- Мультимастер
Кластер типа shared nothing, способный обеспечивать распределенную транзакцию, целостную в масштабах кластера. Обеспечивает при этом отказоустойчивость и горизонтальное масштабирование по чтению.
- Поддержка 1С
Необходимые для работы платформы 1С патчи входят в состав Postgres Pro Enterprise. Кроме того, для ускорения работы 1С нами разработаны улучшения, прежде всего связанные с оптимизацией работы с временными таблицами. Эти улучшения также включены в Postgres Pro Enterprise, и благодаря им производительность при работе с 1С заметно повышается и на наших тестах превышает производительность 1С на других СУБД.
- Переносимые таблицы
Возможность отсоединить таблицу от СУБД и перенести ее, например, на другой экземпляр сервера, или в другую базы данных облегчает управление жизненным циклом данных, позволяет организовывать независимую многопоточную заливку данных, и решать различные другие задачи администрирования БД.
- Хинты планировщика
Postgres Pro Enterprise включает расширение pg_hint_plan, дающее возможность влиять на план исполнения запроса.