Recently, the release of the DBMS Valkey 8.1 took place, marking a new chapter for the project after its transition to a pro-government License. Valkey 8.1 is being developed on a neutral platform under the Linux Foundation organization, with the participation of developers from renowned companies such as Amazon, Google, Oracle, Ericsson, and Snap. Madelin Olson, a former contributor to Redis, has also joined the development team for Valkey. The project code is written in the SI language and is distributed under the BSD license, with support for Linux, MacOS, OpenBSD, NETBSD, and FreeBSD.
Following the release of Redis 7.4, issues arose with the RSALV2 (Redis Source Available License V2) and SSPLV1 (SERVER SIDE PUBLIC LICENSE V1), impacting certain user categories and raising questions about openness and freedom. Both licenses have distinct objectives, with the SSPL license based on the AGPLV3 license and the RSAL license based on the BSD permissive license. The RSAL license permits usage, modifications, distribution, and integration of code into applications, except for commercial or managed paid service applications. The SSPL license includes a reciprocity clause, requiring the release of not only code but also the original texts of all components involved in cloud service provision.
Valkey, like Redis, offers key/value data storage capabilities, with expanded support for structured data formats such as lists, hash sets, and the option to execute LUA scripts on the server side. Data in the database can reside in memory, synchronized with disk versions, or logged changes for data safety in case of shutdown. Various features such as transactions, Publish/Subscribe mode, increment/decrement commands, list and set operations, key renaming, Master-Slave replication, multiple sampling, and cryptographic functions are supported.
In the latest version of Valkey 8.1, the implementation of a hash table has been completely rewritten to optimize data storage efficiency for key-value, hash, set, and sorted set types. This update reduces memory consumption and random access to memory. Each key-value pair without a TTL (Time To Live) limit now consumes 20 bytes less memory, and with a TTL, the reduction is 30 bytes. Throughput has also increased by approximately 10% in non-multi-flow input/output mode.