Компания «Тантор Лабс» (входит в ГК «Астра»), сообщила о выходе мажорной версии обновлений СУБД Tantor Special Edition 15, в основе которой лежит дополненная и усовершенствованная версия PostgreSQL 15. Релиз Tantor SE включает в себя новую функциональность, а также полный набор возможностей, добавленных в ранее вышедший выпуск Tantor Special Edition 14. Обновленная версия СУБД поддерживает все сертифицированные российские операционные системы, а также большинство наиболее популярных платформ на базе Open Source-кода.
Среди ключевых изменений стоит выделить поддержку
В новом релизе благодаря добавлению параметра origin в команду CREATE SUBSCRIPTION появилась возможность создавать двунаправленную логическую репликацию, которая позволяет передавать изменения из одной БД в другую и наоборот, что обеспечивает синхронизацию данных в режиме реального времени. Данные можно синхронизировать между несколькими БД, находящимися на разных физических серверах. Таким образом можно добиться повышенной отказоустойчивости системы и непрерывности бизнес-процессов при отказе одного из серверов. Кроме того, распределение нагрузки между несколькими серверами способствует повышению производительности БД в целом.
В версии Tantor SE 15 реализована поддержка сжатия в библиотеке libpq. В ее конфигурации теперь есть параметр libpq_compression, поддерживаются алгоритмы сжатия lz4 и zlib. Это существенно ускоряет передачу данных и работу приложений, уменьшает нагрузку на сеть и потребление памяти на сервере, а также экономит место на диске.
Доработки затронули и ядро СУБД Tantor: внедрен метод SIMD (Single Instruction, Multiple Data), позволяющий повысить производительность продукта. Более эффективное использование ресурсов процессора особенно заметно при обработке больших массивов данных либо сложных данных, таких как тексты и JSON. Поддержка SIMD ускоряет запросы, которые используют математические операции, на несколько порядков. Также оптимизирован линейный поиск, обеспечена поддержка SSE2 (SIMD для процессоров Intel и AMD архитектуры x86) и SIMD NEON (SIMD для процессоров ARM).
Среди нововведений стоит отметить возможность резервировать подключения для пользователей, не являющихся superuser. Это происходит с помощью нового параметра конфигурации reserved_connections, доступного в файле postgresql.conf. Еще одно новшество это параметр transaction_timeout, который позволяет отменить любую транзакцию, если она продолжается дольше указанного интервала времени, и применим как к явным, так и к неявным транзакциям.
В новой версии СУБД Tantor появилась поддержка автономных транзакций в PL/pgSQ: добавлено расширение языка PL/pgSQL для автономных транзакций, что дает возможность независимо фиксировать или отменять дочернюю транзакцию, не влияя на то, что происходит с текущей (например, для ведения журнала аудита). Расширение реализует автономные транзакции через механизм фоновых процессов. В будущих релизах разработчики планируют обеспечить поддержку расширения языка PL/Python и SQL.
«Мы провели большую работу в части оптимизации ядра под высокие нагрузки: добавили