StarRocks is a source available software licensed under Elastic License 2.0. This license ensures our community and customers have free and open access to use, modify, redistribute, and collaborate on the code.


1. Why does StarRocks adopt Elastic License 2.0?

More and more open source software companies, MongoDB, MariaDB, Elastic, Confluent, etc., are changing their licenses to protect their software from being abused and misused by large companies that use the software without contributing back to the community.
To minimize the impact on our community, we adopt the Elastic 2.0 license to ensure that our users can continue to use, modify and distribute StarRocks' source code for free, while protecting StarRocks' copyrights and trademarks.

2. What is the relationship between StarRocks and Apache Doris?

Apache Doris(incubating) is the upstream of StarRocks. We are very grateful to Apache Doris(incubating) community for contributing such an excellent OLAP database.

StarRocks was developed based on version 0.13 of Apache Doris (incubating) released in early 2020. We have adopted the framework and columnar storage engine from Apache Doris(incubating), while added a full vectorized execution engine, CBO optimizer, real-time update engine, and other important features.

Of the approximately 700K lines of code currently in StarRocks, about 40% is identical to Apache Doris(incubating), which is still under the Apache 2.0 license, leaving 60% as additions or modification.[1]

We will continue to contribute to Apache Doris(incubating) and help to build the open source ecosystem in the future.

3. Can you summarize what is allowed with the Elastic License 2.0?

Elastic License V2 (ELv2) is a license introduced by Elastic NV in early 2021. It is a very simple source available license. The license allows the free right to use, modify, create derivative works, and redistribute, with three simple limitations:
(1)You may not provide the products to others as a managed service
(2)You may not circumvent the license key functionality or remove/obscure features protected by license keys
(3)You may not remove or obscure any licensing, copyright, or other notices[2]

Currently, we have not provided any license keys in our software yet. However, if we provide them in the future, you also need to comply with the restrictions in (2) above.

4. Can you explain the meaning of "You may not provide the products to others as a managed service"?

A direct quote from ELv2:
"You may not provide the software to third parties as a hosted or managed service, where the service provides users with access to any substantial set of the features or functionality of the software."[3]

Here are a few examples to help you understand this quote:
I develop and sell a marketing SaaS, using StarRocks as the backend - this is permitted, because the functionality of a marketing SaaS is different from and additive to StarRocks.
I provide my customers with StarRocks implementation services such as installation and deployment - this is permitted because I sell consulting and implementation services, not managed services.
I provide StarRocks as a managed service, that is, customers can directly access most of the features of StarRocks by purchasing my service - this is not permitted. Adding a thin UI or shim layer does not make any difference - this is not permitted.

5. I am a developer. How does ELv2 affect me?

There is no significant impact on you. StarRocks is still under a source available license.
And a big thanks for your attention to StarRocks. Welcome to contribute to StarRocks and communicate with developers from all over the world!

6. My company has a policy against using code that restricts commercial use – can I still use StarRocks protected under ELv2?

First of all, you are more than welcome to use StarRocks internally in your company. ELv2 permits that kind of use.
Secondly, if your company is not directly providing StarRocks as a managed service, it should not have a practical impact on you.

7. I built an application that embeds StarRocks, how does ELv2 affect me?

You are more than welcome to build and distribute your application based on StarRocks as long as you abide by the above three restrictions. Generally, applications built on top of StarRocks will not violate ELv2.

8. I have customized StarRocks, how does ELv2 affect me?

The ELv2 allows use, modification and redistribution, with the three restrictions summarized above. It should be noted that if you modify the software, you must include a prominent notice stating that you have modified the software in any copy of the modified software. You cannot change the licensing of StarRocks when you re-distribute it, of course.

9. What are the future plans for open source?

We will continue to build the StarRocks open development community. In the future, there will be more features developed in the open and provided for free. We also look forward to more developers joining the StarRocks family!

[1] Statistics from GitHub, 2021-09
[2] FAQ on Elastic License 2.0 (ELv2), elastic website, Reference Date 2021-08-03
[3] Elastic License 2.0 (ELv2), elastic website, Reference Date 2021-08-03

Get Started for Free!

Download Now