Picodata 24.6 is out!

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

The Picodata development team is pleased to announce the release of Picodata 24.6, our core software product. This version sports some amazing new features with the main ones being tiers and plugins.

In Picodata 24.6, we introduce tiers — groups of instances with custom replication factors. Tiers allow you to group instances by their function and work with different storage groups. Within individual tiers, data is sharded independently of each other. Each sharded table is defined as belonging to a specific tier.

Another major and long-awaited feature is full support for plugins. Plugins in Picodata allow you to implement almost any business logic in Rust and use it as previously advertised distributed applications that run in DBMS. Technically, a plugin is compiled into a shared library (*.so) and once loaded runs directly in the picodata process. For plugin management we use SQL commands. The plugin’s working objects (tables, etc.) that make up its data schema are created and deleted using sets of SQL commands that we call migrations.

In Picodata 24.6 we present a mechanism for managing plugins, as well as instructions for working with them, including a guide to writing plugins using our picodata-plugin Rust crate, which acts as an SDK.

Other notable new features and chnages in Picodata 24.6:

  • support for new LIKE and ILIKE operators in SQL
  • support for converting results to lower and upper registers in SQL
  • support for SELECT without scans (e.g., select 1)
  • when creating objects in SQL, it is now possible to check their absence in the DBMS (IF NOT EXISTS) and their presence (IF EXISTS) when deleting them.
  • when creating users and connecting to the Picodata console, the MD5 authentication method is now used by default (instead of CHAP-SHA1).
  • picodata connect and picodata expel commands now have the --timeout parameter to specify the time to wait for a response.
  • new entrypoint .proc_get_vshard_config in RPC API allows to find out sharding parameters of a tier
  • the ; delimiter is now used by default when entering SQL commands (it does not need to be declared explicitly).

Additionally, we keep on improving the Picodata role for Ansible, which enables convenient management of a distributed cluster. All Picodata features are available within the picodata-ansible role, including working with tiers and deploying plugins, as well as many additional features (e.g., managing instances via supervisord instead of systemd).

See the full list of changes in the CHANGELOG for this release.

Get a hand on Picodata 24.6 by downloading the pre-built packages for supported Linux distributions in the download section at our site.

You can find installation advisory as well as documentation for installing software, creating instances, cluster configuration and deployment at our dedicated documentation site.

Send your feedback and get in touch with Picodata developers in our Telegram chat at @picodataen or @picodataru.