Recently, the release of redis 7.4, a database management system (DBMS) belonging to the class of NoSQL systems, was announced. Redis offers functionalities for storing data in key/value format, along with support for structured data formats like lists, hashes, and sets. Additionally, it allows for executing LUA scripts on the server side. Unlike memory-based storage systems like Memcache, Redis not only stores data in memory but also on disk, ensuring the safety of the database in case of unforeseen shutdowns.
The latest version, redis 7.4, comes with new licensing conditions, departing from the previously used BSD license. It is now available under proprietary licenses known as rsalv2 (Redis Source Available License v2) and ssplv1 (Server Side Public License v1). Users who prefer the BSD license can opt for alternatives like Valkey, Redict, Garnet, or keydb.
The SSPL and RSAL licenses have raised concerns as they may lead to the discrimination of certain user categories due to restrictions that do not align with traditional open source principles. While both licenses have similarities, the SSPL license, based on AGPLv3, requires cloud service providers to also disclose initial texts of all components under the same license, expanding beyond the code itself. On the other hand, the RSAL license, based on the BSD permissive license, permits usage, modification, and distribution of the code, except in cases involving commercial applications or managed paid services.
Redis DBMS supports transactions that enable the execution of command groups in a single step, ensuring consistency and preventing commands from other requests from interfering. In case of issues, changes can be rolled back. All data is fully cached in RAM, and client libraries are available for various popular languages such as Perl, Python, PHP, Java, Ruby, and Tcl.