Релиз Picodata 25.1

Александр Толстой

Команда разработчиков Picodata рада сообщить о выпуске новой версии нашего основного программного продукта — Picodata 25.1. В этой версии появилось несколько интересных функций, таких как поддержка оконных функций в SQL и возможность LDAP-аутентификации при использовании PostgreSQL-протокола. Многие существующие функции были также доработаны и улучшены.

В Picodata 25.1 мы представляем оконные функции SQL — возможность выполнять вычисления над набором кортежей в пределах отдельного “окна”. Пользователи могут использовать в SQL-запросах агрегатные оконные функции с помощью выражения OVER, а также задействовать встроенную функцию ROW_NUMBER().

Другое нововведение касается дальнейшего развития поддержки PostgreSQL при подключении к инстансу Picodata. При использовании протокола PostgreSQL будет автоматически задействовано безопасное соединение (SSL) если оно поддерживается (и настроено) на стороне сервера. Поддерживаются разные типы аутентификации, включая LDAP. Сам PostgreSQL-протокол в Picodata теперь работает до 4-х раз быстрее (по сравнению с прошлой реализацией).

При работе во встроенных клиентах Picodata (picodata connect и picodata admin) теперь можно использовать клавишу ввода (↵) в качестве разделителя строк (вместо какого-либо специального символа). Это делает работу в консоли удобнее во многих случаях! Как включить: \set delimiter enter.

Набор встроенных команд picodata также стал удобнее. Для быстрого просмотра состояния кластера теперь есть отдельная команда picodata status, которая показывает все узлы кластера с необходимыми подробностями. Вывод команды picodata --version расширен и включает тип сборки (статический/динамический) и ее конфигурацию (release/debug). При удалении инстанса из кластера (picodata expel) теперь следует указывать UUID инстанса, а не его имя.

Другие заметные новинки и изменения в Picodata 25.1:

  • По умолчанию, файл конфигурации называется picodata.yaml
  • Сгенерированные автоматически имена инстансов и репликасетов теперь включают имя тира, номер репликасета в тире и номер инстанса в репликасете
  • При использовании движка хранения Vinyl New теперь доступны новые параметры конфигурации: bloom_fpr, max_tuple_size, page_size, range_size, run_count_per_size, run_size_ratio, read_threads, write_threads и timeout
  • Многие параметры в системной таблице _pico_db_config были переименованы, см. полный список изменений
  • В системную таблицу _pico_instance добавлен новый уникальный индекс по колонке uuid. Прежние индексы _pico_instance_raft_id и _pico_instance_replicaset_name теперь имеют идентификаторы 2 и 3 соответственно.
  • Параметр командной строки --service-password-file удален, теперь вместо него используется файл .picodata-cookie в директории инстанса.
  • При конфигурации кластера с помощью команды ALTER SYSTEM SET... теперь можно указывать отдельные тиры (т.е. в рамках кластера у разных тиров могут быть свои наборы параметров)
  • При получении данных из таблиц с помощью SELECT, текстовые значения теперь отображаются без двойных кавычек

Дополнительно, мы развиваем роль Picodata для Ansible, что позволяет удобно управлять распределенным кластером. С picodata-ansible доступны все возможности, включая работу с тирами, развертывание плагинов, а также многие дополнительные функции (например, возможность использования системы управления процессами supervisord взамен systemd для управления кластером).

Полный список нововведений доступен в документе CHANGELOG.

Для установки Picodata 25.1 следуйте инструкциям на сайте. Кстати, мы обновили список поддерживаемых ОС и теперь предоставляем пакеты для следующих дистрибутивов Linux:

  • Astra 1.8
  • Debian 12 (bookworm)
  • Fedora 40, 41

Инструкции и руководства по установке, использованию и администрированию Picodata размещены на портале документации Picodata.

Вопросы и пожелания направляйте в наш Telegram-чат @picodataru.