RSAL is a software license created by Redis Labs for certain Redis Modules running on top of open source Redis. RSAL grants equivalent rights to permissive open source licenses for the vast majority of users. With RSAL, developers can use the software, modify the source code, integrate it with an application, and use, distribute or sell the application. The only restriction is that the application cannot be a database, a caching engine, a stream processing engine, a search engine, an indexing engine or an ML/DL/AI serving engine.
Software protected by RSAL is designed to be used as part of an application. We want to help and encourage people to develop their own applications, but RSAL differentiates between a “database product” and all other applications. RSAL defines a database product as any of the following products or services: (a) databases, (b) caching engines, (c) stream processing engines, (d) search engines, (e) indexing engines or (f) ML/DL/AI serving engines.
If your application built with RSAL-protected software is NOT a database product, RSAL defines it as “your application,” and you can:
Modern open source infrastructure software has created more value over the past decade than we could have ever imagined. Databases, orchestrators, distributed systems and other software technologies now power nearly every business on the planet — all thanks to the shared, collaborative philosophy of the open source community.
However, some cloud providers have repeatedly taken advantage of successful open source projects, without significant contributions to their communities. They repackage software that was not developed by them into competitive, proprietary service offerings and use their business leverage to reap substantial revenues from these open source projects.
Redis Labs has been leading and financing the development of open source Redis for years, and at the same time believe we deserve the fruits of these efforts. While the Redis core is and will always remain available under the open source BSD license, in order to keep our business and the Redis project sustainable, we’ve decided to license certain modules built by Redis Labs (e.g. RediSearch, RedisGraph, RedisJSON, RedisBloom, RedisML) with the Redis Source Available License.
Commons Clause, the license previously used for Redis Labs’ modules, was initiated by a coalition of infrastructure software companies to protect their rights against cloud providers. The concept was based on adding a restriction to existing open source software licenses to limit commercial sale of the software.
However, the use of Commons Clause as a rider to an existing open source license (i.e. Apache2) — as well as the agreement’s use of the term “substantial” to define what is and is not allowed — created some confusion and uncertainty regarding the terms of use. Last but not least, some Commons Clause restrictions regarding the support of the software worked against our intention to help grow the ecosystem around Redis Modules.
We created RSAL to address all these concerns and provide maximum freedom of use (similar to permissive open source licenses), while continuing to protect our rights against cloud providers.
We initially licensed some of Redis Labs’ early Redis Modules under AGPL. However, we later realized that AGPL did not prevent cloud providers from creating managed services using our code. Furthermore, we received requests from developers at large enterprises to move from AGPL to a more permissive license, because the use of AGPL was against their company policies.
Although the source code is available under RSAL, according to the Open Source Initiative (OSI), an open source license cannot include limitations. Therefore, certain restrictions imposed by RSAL mean that any software under this license is not open source by definition. However, in practice, RSAL is very similar to permissive open source licenses, and only restricts cloud providers from gaining commercial benefit from software that was not developed by them.
Redis Labs’ community projects are listed here. Anyone can contribute to any of these projects (including those licensed with RSAL), provided he/she signs our Contributor License Agreement.
RSAL will apply from the following Redis Module versions as of February 21st, 2019:
If you are not distributing a “database product”, or using a Redis service by a cloud provider, RSAL should not restrict you in any way.
Yes. RSAL is similar in this sense to permissive open source licenses. You can modify the software, integrate the variant into your application, and distribute and sell your application, as long as your application is not a “database product” (as defined by RSAL). The only thing you need to do is include a notice that your product is subject to the terms of RSAL.
Absolutely! One of the main reasons we moved to RSAL was to help grow the ecosystem around our modules. In this spirit, commercial support by a third party is more than welcome.
We want to provide developers with free access to our Redis Modules source code — including rights to modify it, integrate it with their applications and freely distribute or sell their applications. Since this wouldn’t be possible with a closed source license, we decided to use the more permissive RSAL.
The Redis Enterprise commercial license covers Redis Modules integrated with Redis Enterprise. Therefore, RSAL is not applicable in this case. For further clarification, please contact your account manager.
No. Open source Redis remains under 3-Clause-BSD. Furthermore, we continue to support the open source project by adding advanced features and fixing bugs in the same way we always have.