Российская СУБД Postgres Pro

Postgres Pro -  Российская СУБД, разработанная компанией Postgres Professional на основе свободно-распространяемой СУБД PostgreSQL. Postgres Pro входит в реестр российского ПО (см https://reestr.minsvyaz.ru/reestr/65273/)

Очередная версия Postgres Pro представляет собой актуальную версию PostgreSQL с наложенными на нее патчами для ядра PostgreSQL, которые уже приняты сообществом и закомичены в основную ветку, а также расширениями и патчами, разработанными Postgres Professional, и не затрагивающими основное ядро. Как правило, они уже выложены на коммитфест.

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

Версии Postgres Pro

Номер версии Postgres Pro строится из номера версии PostgreSQL с дополнением одного разряда, обозначающего номер текущего выпуска. При выходе новой минорной версии PostgreSQL (обычно это происходит при появлении патчей, связанных с безопасностью и исправлением серьезных ошибок), нумерация Postgres Pro сбрасывается на единицу. Например, при выходе PostgreSQL 9.5.1 выходит PostgresPro 9.5.1.1, затем до появления PostgreSQL 9.5.2 может выйти Postgres Pro 9.5.1.2, 9.5.1.3 и т.д. При выходе PostgreSQL 9.5.2 Postgres Pro обновится до версии 9.5.2.1 и т.д.

Одновременно с выпуском исходного кода Postgres Pro мы публикуем наши сборки в виде пакетов под различные платформы. Это Linux: CentOS 6/7, Debian 6/7/8, Ubuntu 12.04/14.04/15.04/15.10, Oracle Linux, Rosa Enterprise Linux server, ROSA SX Cobalt Server, ROSA DX Cobalt Server, ROSA Marathon LTS 2012, Alt Linux Centaur 8, Alt Linux СПТ 6, Alt Linux СПТ 7, SUSE Linux Enterprise Server, Microsoft® Windows® 2012.

Базы данных Postgres Pro 9.5.*.* совместимы с PostgreSQL 9.5.* При переходе с 9.5 dump/restore не требуется. При переходе с более ранних версий PostgreSQL необходимо использование dump/restore или pg_upgrade.

Текущая версия  Postgres Pro - 9.5.3.2. Дата выпуска - 27 июня 2016. Скачать можно тут .

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

В Postgres Pro по сравнению с актуальной версией PostgreSQL на текущий момент вошли следующие изменения:

  1.  Усовершенствования производительности на многоядерных системах:
    • оптимизации выделения хэш-таблиц в shared memory, исключающая lock contention при большом количестве процессов.
    • оптимизации Resource Owner. Улучшает производительность сложных запросов и запросом к таблицам с большим количеством партиций.
    • Оптимизации buffer manager
    • Оптимизация LWLock для архитектуры Power8
    • Оптимизации двухфазного коммита
  2. Усовершенствования полнотекстового поиска:
    • поддержка поиска фраз
    • поддержка словарей hunspell для работы со словоформами
    • некоторые словари, в том числе русский и английский, включены в состав дистрибутива и их подключение требует одной команды SQL
    • модуль shared_ispell, оптимизирующий производительность полнотекстового поиска, путем загрузки словарей в память при старте сервера, а не при начале сессии.
  3. Покрывающие индексы. Поддержка конструкции INCLUDES в CREATE INDEX.
  4. Переносимость: поддержка библиотеки libicu на всех платформах, что обеспечивает однозначную обработку порядка сортировки и прочих операций с юникодными символами.
  5. Модуль pg_trgm поддерживает не только нечеткое сравнение строк, но и нечеткий поиск подстроки
  6. Модуль pageinspect поддерживает доступ не только к метаинформации, но и к внутреннему представлению данных таблиц.
  7. Добавлен новый модуль sr_plan, позволяющий сохранять планы выполнения запросов и использовать сохраненные планы вместо того, чтобы формировать план запроса заново, при каждом выполнении.
  8. Добавлен модуль dump_stat, позволяющий при дампе базы данных сохранять информацию о статистике и восстанавливать её. Это позволяет ускорить процедуру восстановления, избавляя от необходимости вычисления статистики командой VACUUM ANALYZE после восстановления.
  9. Добавлен модуль JSQuery, позволяющий на специальном языке формулировать запросы к полям типа JSONB с поддержкой GIN-индексов.

Лицензия Postgres Pro

Postgres Pro распространяется по лицензии PostgreSQL с дополнениями Postgres Professional:

Portions Copyright (c) 2015-2016, Postgres Professional
Portions Copyright (c) 1996-2016, PostgreSQL Global Development Group
Portions Copyright (c) 1994 Regents of the University of California

Предоставляются права на использование, копирование, изменение и распространение данного
программного обеспечения и его документации для любых целей, бесплатно и без подписания
какого-либо соглашения, при условии что для каждой копии будут предоставлены данное выше
замечание об авторских правах, текущий абзац и четыре следующих абзаца.
КАЛИФОРНИЙСКИЙ УНИВЕРСИТЕТ НЕ НЕСЕТ НИКАКОЙ ОТВЕТСТВЕННОСТИ ЗА ЛЮБЫЕ ПОВРЕЖДЕНИЯ, ВКЛЮЧАЯ ПОТЕРЮ ДОХОДА, НАНЕСЕННЫЕ ПРЯМЫМ ИЛИ НЕПРЯМЫМ, СПЕЦИАЛЬНЫМ ИЛИ СЛУЧАЙНЫМ ИСПОЛЬЗОВАНИЕМ ДАННОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ИЛИ ЕГО ДОКУМЕНТАЦИИ, ДАЖЕ ЕСЛИ КАЛИФОРНИЙСКИЙ УНИВЕРСИТЕТ БЫЛ ИЗВЕЩЕН О ВОЗМОЖНОСТИ ТАКИХ ПОВРЕЖДЕНИЙ.
КАЛИФОРНИЙСКИЙ УНИВЕРСИТЕТ СПЕЦИАЛЬНО ОТКАЗЫВАЕТСЯ ПРЕДОСТАВЛЯТЬ ЛЮБЫЕ ГАРАНТИИ, ВКЛЮЧАЯ, НО НЕ ОГРАНИЧИВАЯСЬ ТОЛЬКО ЭТИМИ ГАРАНТИЯМИ: НЕЯВНЫЕ ГАРАНТИИ ПРИГОДНОСТИ ТОВАРА ИЛИ ПРИГОДНОСТИ ДЛЯ ОТДЕЛЬНОЙ ЦЕЛИ. ДАННОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ПРЕДОСТАВЛЯЕТСЯ НА ОСНОВЕ ПРИНЦИПА "КАК ЕСТЬ" И КАЛИФОРНИЙСКИЙ УНИВЕРСИТЕТ НЕ ОБЯЗАН ПРЕДОСТАВЛЯТЬ СОПРОВОЖДЕНИЕ, ПОДДЕРЖКУ, ОБНОВЛЕНИЯ, РАСШИРЕНИЯ ИЛИ ИЗМЕНЕНИЯ.
ОБЩЕСТВО С ОГРАНИЧЕННОЙ ОТВЕТСТВЕННОСТЬЮ "ПОСТГРЕС ПРОФЕССИОНАЛЬНЫЙ" (Postgres Professional)
НЕ НЕСЕТ НИКАКОЙ ОТВЕТСТВЕННОСТИ ЗА ЛЮБЫЕ ПОВРЕЖДЕНИЯ, ВКЛЮЧАЯ ПОТЕРЮ ДОХОДА, НАНЕСЕННЫЕ ПРЯМЫМ ИЛИ НЕПРЯМЫМ, СПЕЦИАЛЬНЫМ ИЛИ СЛУЧАЙНЫМ ИСПОЛЬЗОВАНИЕМ ДАННОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ИЛИ ЕГО ДОКУМЕНТАЦИИ, ДАЖЕ ЕСЛИ
ОБЩЕСТВО С ОГРАНИЧЕННОЙ ОТВЕТСТВЕННОСТЬЮ "ПОСТГРЕС ПРОФЕССИОНАЛЬНЫЙ" БЫЛО ИЗВЕЩЕНО
О ВОЗМОЖНОСТИ ТАКИХ ПОВРЕЖДЕНИЙ.
ОБЩЕСТВО С ОГРАНИЧЕННОЙ ОТВЕТСТВЕННОСТЬЮ "ПОСТГРЕС ПРОФЕССИОНАЛЬНЫЙ" (Postgres Professional)
СПЕЦИАЛЬНО ОТКАЗЫВАЕТСЯ ПРЕДОСТАВЛЯТЬ ЛЮБЫЕ ГАРАНТИИ, ВКЛЮЧАЯ, НО НЕ ОГРАНИЧИВАЯСЬ ТОЛЬКО ЭТИМИ ГАРАНТИЯМИ: НЕЯВНЫЕ ГАРАНТИИ ПРИГОДНОСТИ ТОВАРА ИЛИ ПРИГОДНОСТИ ДЛЯ ОТДЕЛЬНОЙ ЦЕЛИ. ДАННОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ПРЕДОСТАВЛЯЕТСЯ НА ОСНОВЕ ПРИНЦИПА "КАК ЕСТЬ" И ОБЩЕСТВО С ОГРАНИЧЕННОЙ ОТВЕТСТВЕННОСТЬЮ "ПОСТГРЕС ПРОФЕССИОНАЛЬНЫЙ"
НЕ ОБЯЗАНО ПРЕДОСТАВЛЯТЬ СОПРОВОЖДЕНИЕ, ПОДДЕРЖКУ, ОБНОВЛЕНИЯ, РАСШИРЕНИЯ ИЛИ ИЗМЕНЕНИЯ.