Open source licenses are in the news again. Elastic recently changed the licensing for ElasticSearch and Kibana from Apache 2.0 to a choice of Server Side Public License (SSPL) or the non-open source Elastic license. Like most open source licensing changes, this one prompted a lot of discussion. Examples here and here include some of the more printable comments.
But we’re not here to discuss Elastic’s business model or their choice of license(s). We’re here to discuss ClickHouse licensing and Altinity’s view of it. Here’s the executive summary.
ClickHouse is Apache 2.0. Altinity is committed to ensuring it stays that way.
Our contributions to ClickHouse are Apache 2.0. Our ecosystem projects like the ClickHouse Kubernetes operator are likewise Apache 2.0. We believe the Apache 2.0 license is best for our users. It’s also the best way to make ClickHouse the most popular SQL data warehouse on the planet. There are several reasons for our outlook.
Apache 2.0 promotes innovation in analytic applications
The most important feature of Apache 2.0 is that it allows use for any purpose, which is the first of the four essential freedoms of open source software. Such freedom is important for all applications, regardless of whether they run on-prem or as cloud services. Apache 2.0 opens the door to imaginative new services as well as creative paths to develop them. Installed applications morph into online services. Services that hide data behind APIs morph into open data. This freedom is key to enabling innovative new ways to incorporate analytics into applications, which in turn unlocks new business opportunities.
Apache 2.0 is also a great license for contributors. It has been around since 2004, which is a long time in open source. Corporate legal departments understand it and can easily approve contributions from employees. Individual contributors understand the freedom Apache 2.0 confers to publish their work and use it freely in future. It’s a win-win: companies are motivated to make investment decisions in open source projects, and contributors are motivated to implement them.
Apache 2.0 licensing opens a path to increasing ClickHouse capabilities and worldwide use. More important, it is enabling a flood of innovation in analytic applications. In a crowded market with many database products besides ClickHouse, that’s a critical competitive advantage.
Apache 2.0 creates a level playing field
Since the ClickHouse Apache 2.0 license places no restriction on business use, we can expect many competing services that leverage ClickHouse in one way or another. This includes hosted ClickHouse and value-added analytic services built on top of ClickHouse capabilities. It also extends to add-ons for countless existing services ranging from web analytics to network flow log management to financial asset valuation and everything in between.
The competition will be distressing for unprepared vendors, but it’s great for users. Competing services mean that users have alternatives. It also means that innovation is not random but focused on things that users care about: SQL features, performance, security, cost-efficiency, and time to market.
The same vendors that offer ClickHouse managed services have contributed popular features to ClickHouse like S3 storage integration, Role-based Access Control, Common Table Expressions, and many more. ClickHouse is experiencing the same co-opetition feedback effect that helped fuel the success of Linux, Kubernetes, PostgreSQL, and other open source projects.
Restrictive licenses like SSPL are antithetical to user interests
The Server Side Public License is an attempt to set back the clock on open source software development. It rules out new SaaS offerings based on projects whose value
…entirely or primarily derives from the value of the Program or modified version, or offering a service that accomplishes for users the primary purpose of the Program or modified version. (SSPL Section 13).
The goal of the SSPL and similar licenses is nothing short of setting up monopoly providers of SaaS offerings. It has ambiguous terms-creating uncertainty for potential competitors-and onerous viral requirements. Services that fall under Section 13 must release all source code required to run the entire SaaS offering. That includes everything from the service management plane down to deployment and backup scripts. SSPL is copyleft with fangs.
This obviously affects vendors trying to set up competing services to the copyright holders of SSPL projects. But the effect on the market is far wider. Analytics are pervasive in modern applications and SaaS is the primary way that software is now distributed. The SSPL potentially harms any user building an application who just wants a managed offering to take care of running it. We believe that’s an unacceptable limitation.
But wait, what about Amazon?
Many vendors have justified open source relicensing as a necessary defense against “strip mining” from public clouds. Aren’t we afraid of this ourselves? If so, it’s a bit late. There are already multiple cloud services for ClickHouse, including our own offering, Altinity.Cloud. There’s also Yandex.Cloud and at least three services in China. New entrants need to compete by adding additional value, just as Rancher did in the Apache 2.0-licensed Kubernetes market.
Our goal at Altinity is to help customers bring high-value analytic applications to market quickly and operate them cost-effectively. We focus on development efficiency, data privacy, world-class support, and operations. We do so on all platforms, both public cloud and on-prem. Anybody who has worked on such services knows there’s opportunity here to build many valuable companies, not just one.
Other paths are possible. Vendors may fork ClickHouse and try to add licenses that create a proprietary fortress. If so, we would point to some friendly advice from a famous competitive analyst of the Italian Renaissance:
So the best fortress that exists is to avoid being hated by the people. If you have fortresses and the people hate you, they will not save you.
Niccolo Machiavelli, The Prince
We don’t want to build new fortresses to protect ourselves against our users. We want to tear them down. Apache 2.0 is the key to enabling a new generation of analytic applications based on ClickHouse. Altinity is all in.
P.S.: If you are worried about ElasticSearch and Kibana switching licenses, this might be a nice time to look at alternatives. ClickHouse can store log data remarkably well. More on that in future articles.