Новые функции для аналитики, масштабируемости и оптимизации запросов
Postgres Professional, ведущий российский разработчик СУБД, выпустил обновление Postgres Pro Enterprise — флагманской редакции СУБД для высоконагруженных систем.
Релиз включает возможности мажорной версии Postgres Pro Enterprise 16.1.1, а также PostgreSQL 16.2 и ряд новых разработок для повышения безопасности, улучшенной оптимизации запросов, аналитики и работы с большими объектами.
Среди ключевых обновлений Enterprise 16.2.1:
- Интеграция с расширением Citus
Citus — расширение для PostgreSQL, которое обеспечивает масштабируемость PostgreSQL за счет шардирования данных на нескольких узлах PostgreSQL. Интеграция с Citus позволит эффективно обрабатывать аналитические данные на десятках серверов. В отличие от выпущенной в феврале 2024 года в широкое использование СУБД Postgres Pro Shardman, ориентированной на OLTP-нагрузку, Citus ориентирован на аналитическую OLAP-нагрузку. Заказчик сможет выбрать тот тип шардирования, который больше подходит для его приложения.
- Перепланировщик запросов Replan
Адаптивное выполнение (adaptive query execution) — переоптимизация, которая применяется во время выполнения запроса. В составе Enterprise 16.2.1 заказчикам доступна первая компонента AQE — Перепланировщик запросов (Replan), срабатывающий по максимальному времени выполнения.
- Работа с большими объектами
Добавлено расширение dbms_lob, позволяющее обращаться к определённым частям больших объектов (LOB) или большим объектам целиком и управлять ими. Поддерживаются объекты CLOB, BFILE и временные BLOB.
- Новые возможности pg_proaudit
Расширение pg_proaudit позволяет регистрировать события, связанные с безопасностью. Новая версия pg_proaudit 2.0 поддерживает правила, обобщающие типичные группы действий пользователей, а также срабатывание правил по группам пользователей, а не по их индивидуальным учётным записям.
- Пакеты с приватными функциями и переменными
Введены два новых модификатора для работы с пакетами: #private и #export. Модификатор #private определяет функции и процедуры как внутренние, а модификатор #export определяет, какие переменные пакета являются публичными.
- Ассоциативные массивы и хэш-коллекции (аналог indexed by таблиц PL/SQL в Oracle)
Изначально в языке программирования PL/pgSQL ассоциативные массивы не поддерживались, и это создавало проблемы при миграции — приходилось имитировать работу с ними вручную, используя сложные и неэффективные конструкции в коде. В Postgres Pro Enterprise 16 впервые реализована поддержка таких массивов. Бесконечные структуры «ключ-значение» реализованы в расширении pg_variables. В качестве ключа можно использовать как целое число, так и символьное значение. Хранимые процедуры и функции PL/pgSQL в Postgres Pro адаптированы для использования таких массивов и коллекций.
- Поддержка ассоциативных массивов и хэш-коллекций в утилите автоматической конвертации кода ora2pgpro
ora2pgpro — решение для автоматического портирования пакетов и автономных транзакций Oracle в пакеты и автономные транзакции Postgres Pro Enterprise. В новой версии утилиты ora2pgpro 24.1.1 добавлена функциональность автоматической конвертации PL/SQL-кода работы с коллекциями (varray, table of … indexed by …) в эквивалентный код для СУБД Postgres Pro Enterprise. Это позволит еще больше сократить объем работ при миграции кода из СУБД Oracle в Postgres Pro Enterprise.
Среди других обновлений и усовершенствований нового релиза:
- Встроенный отказоустойчивый кластер BiHA обновлен до версии 1.1: улучшена производительность и добавлены новые возможности.
- Добавлен параметр crash_info для управления сбором информации о сбоях сервера.
- Добавлено расширение apache_age, предоставляющее функциональность для работы с графовыми базами данных.
- Приложение pg_probackup обновлено до версии 2.7.2 Enterprise: оптимизировано использование памяти при резервном копировании в удалённом режиме.
- Обновлено расширение pg_variables: добавлена функциональность итератора для любых коллекций, а также функции для работы с общими переменными-коллекциями.
- Расширение pgpro_stats обновлено до версии 1.7: улучшена производительность и исправлены ошибки.
- Модуль pgpro_pwr обновлён до версии 4.4. Добавлена поддержка pgpro_stats 1.7, и в отчёты включены новые интерактивные возможности и фильтрация на основе подстроки.
- Модуль sr_plan: в новой версии улучшена производительность, добавлена возможность замораживать планы запросов на основе набора указаний, а также сохранять разные планы запроса с разными наборами параметризованных констант.
О компании
Postgres Professional — российский разработчик системы управления базами данных Postgres Pro. Postgres Pro входит в Единый реестр российского программного обеспечения и выпускается в вариантах: Postgres Pro Standard, Postgres Pro Enterprise, Postgres Pro Shardman, а также их сертифицированные ФСТЭК версии. Специалисты компании оказывают поддержку полного цикла: аудит, помощь в миграции, техподдержку 24х7 и SLA, обучение, заказные разработки, сертификацию специалистов. По данным исследования ЦСР, компания возглавляет рейтинг российских разработчиков СУБД (2023).
Команда Postgres Professional не только разрабатывает отечественную СУБД Postgres Pro, но и активно развивает PostgreSQL, являясь признанным экспертом и одной из крупнейших команд проекта в мире. Занимает 1 место в России и 2-е — в мире по вкладу в открытый код PostgreSQL.