Команда разработчиков Picodata рада сообщить о выпуске распределенной СУБД Picodata 25.4 — нашего основного программного продукта. В новой версии добавлено много новых функций: аудит всех действий пользователя, создание согласованной резервной копии кластера, поддержка TLS-шифрования, более гибкое создание уникальных индексов для шардированных таблиц и многое другое. Подробнее об этом — читайте ниже!
Аудит действий пользователя
В Picodata 25.4 добавлена новая DCL-команда AUDIT POLICY, которая используется для включения/выключения записи DML-операций в журнал аудита для явно указанного пользователя, например:
AUDIT POLICY dml_default BY andyПолитика dml_default включает в себя все операции по изменению данных (INSERT/UPDATE/DELETE). Это существенно расширяет возможности аудита и позволяет более детально отслеживать активность пользователей в кластере. Для отключения используйте следующую команду:
AUDIT POLICY dml_default EXCEPT andyНовые возможности резервного копирования
В Picodata 25.4 мы добавили отдельную SQL-команду BACKUP, которая создает согласованную, кластерную резервную копию данных. При выполнении BACKUP каждый инстанс в кластере сохраняет данные в поддиректории внутри backup-dir в файле, имя которого содержит временную метку в формате YYYYMMDDThhmmss. В резервную копию входят:
- файлы
.snap, в том числе данные глобальных таблиц (включая конфигурацию СУБД, БД, хранимые процедуры, пользовательские объекты) и шардированных таблиц - конфигурационный файл инстанса
- файл
.picodata-cookie - данные плагинов из
share-dir
Для восстановления из резервной копии следует остановить все инстансы кластера и выполнить picodata restore --path <backup-path> на каждом инстансе, указывая одну и ту же директорию резервной копии (например, YYYYMMDDThhmmss)
Новый метод аутентификации
Picodata 25.4 теперь поддерживает метод SCRAM-SHA-256 для проверки подлинности как новых, так и существующих пользователей при подключении по протоколу PostgreSQL. SCRAM-SHA-256 (Salted Challenge Response Authentication Mechanism с хэшем SHA-256) — это безопасный метод аутентификации по паролю, который предотвращает перехват пароля и хранит его в криптографическом виде на сервере.
Использование mTLS
Picodata 25.4 позволяет использовать mutual TLS (mTLS) как для коммуникации внутри кластера по протоколу IPROTO, так и для проверки подлинности пользователей. Для конфигурации инстанса доступен новый блок параметров instance.iproto_tls, позволяющий задействовать защищенный режим и указать пути к сертификатам и закрытому ключу. При работе из командной строки для picodata status, picodata expel и picodata plugin configure доступны соответствующие параметры --tls-ca, --tls-cert и --tls-key.
Использование mTLS позволяет аутентифицировать пользователей без необходимости ввода пароля при соблюдении ряда условий: в сертификате должно быть заполнено поле Common Name (например, CN=dbuser@company.com), а при подключении явно задан параметр --tls-auth.
Улучшения в SQL
Помимо новой функции AUDIT POLICY, в Picodata 25.4 мы представили следующие новые возможности SQL:
- При создании уникальных индексов для шардированных таблиц теперь можно указывать дополнительные колонки (не входящие в ключ распределения). Например,
CREATE UNIQUE INDEX ON table (id, item, location)при ключе распределения(id, item). такие колонки должны обязательно идти после ключа. - Появилась новая скалярная функция
abs(). - Команда
EXPLAINподдерживает дополнительный форматEXPLAIN (raw), показывающий низкоуровневый план запроса отдельно на узле хранения и маршрутизаторе. Также дляEXPLAINтеперь можно задавать ограничивающие опции (например,EXPLAIN SELECT 1 OPTION (SQL_VDBE_OPCODE_MAX = 6)). - В блоке
OPTIONSможно указывать несколько опций, и это больше не приводит к ошибке (применяется последняя опция).
Полный список нововведений и список исправленных ошибок доступны в документе CHANGELOG.
Попробуйте Picodata в деле!
Для установки Picodata 25.4 следуйте инструкциям на сайте. Готовые пакеты доступны для следующих дистрибутивов Linux:
- Astra 1.8
- Debian 12 (bookworm)
- RHEL/Rocky 9
- Fedora 41–42
Инструкции и руководства по установке, использованию и администрированию Picodata размещены на портале документации Picodata.
Вопросы и пожелания направляйте в наш Telegram-чат @picodataru.