Is OpenSearch, the open source alternative that AWS "robbed" from Elastic, successful?

In early 2021, Elastic, the parent company behind the open source search and data analysis engine Elasticsearch, announced changes to the open source licenses of Elasticsearch and Kibana, changing the original Apache License 2.0 to a dual license, Server Side Public License (SSPL) + Elastic License , neither of which is an open source license that conforms to the OSI definition.

SSPL is a license designed by MongoDB  . It is based on GPLv3 and is considered a Copyleft License. Its core clause is "If the function or modified version of the program is provided as a service to a third party, the source code of the service must be provided free of charge".

The Elastic License is a non-commercial license, and the core clause is that commercial authorization is required if the product is used as SaaS.

At the time, Elastic said that the move was mainly to restrict cloud service providers (such as AWS) from providing Elasticsearch and Kibana as a service to others without giving back , so as to protect Elastic's continuous investment in developing free and open products. But the license change also means that Elasticsearch and Kibana are no longer truly "open source software" (open source as defined by the OSI).

145324_tHsk_2720166.png

Subsequently, AWS announced the creation of a branch of Elasticsearch that claims to be truly open source - OpenSearch , and has received support from multiple organizations and vendors including Red Hat, SAP, Capital One, and Logz.io.

135104_sTkQ_2720166.png

OpenSearch is a community-driven open source search and analysis suite, including enterprise security, anomaly detection, alerting, machine learning, SQL, index status management and other functions, fork Elasticsearch 7.10.2 and Kibana 7.10.2 licensed from Apache License 2.0 . It consists of a search engine daemon (OpenSearch), a visualization and user interface (OpenSearch Dashboards), and the advanced features of Open Distro for Elasticsearch.

AWS introduced that the OpenSearch they launched removed the functions, codes and trademarks restricted by the Elastic commercial license in Elasticsearch to be compatible with Apache License 2.0, claiming that this is the basis for everyone to build and innovate, and no one needs to sign the CLA ( Contributor License Agreement) to contribute code to the project.

At that time, some people thought that AWS' actions were blatantly "robbing" open source projects , but others believed that Elastic changed the open source protocol at the beginning, and later restricted users from using the client normally , which not only violated the spirit of open source, but also used users as bargaining chips. means.

It's been two years since OpenSearch was born, what has this Elasticsearch-based open source fork achieved?

According to the annual report released by OpenSearch at the beginning of the year , by the end of 2022, the total downloads of OpenSearch, OpenSearch Dashboards and client libraries have exceeded 100 million, and a total of 496 contributors have submitted 8760 PRs.

The BigData blog also recently made a detailed comparison between OpenSearch and Elasticsearch . The comparison items include the number of repo submissions, functions, licenses and restrictions .

They count the commits both have made on the master/main branch since April 22, 2021 (stats collected in April 2023). The statistics show that there are nearly 20,000 commits in the Elasticsearch repository, 6,000 of which are committed to the Elasticsearch core ("server" folder), and some are committed to subsidiary modules.

# total commits in repo since fork
➜  elasticsearch git:(master) git log --oneline --all --since='Apr 22 2021' | wc -l
19527
# total commits to the main codebase (server folder) since fork
➜  elasticsearch git:(master) git log --oneline --all --since='Apr 22 2021' -- server/ | wc -l
6130
# total commits to main modules (various surrounding functionality not under x-pack) since fork
# https://github.com/elastic/elasticsearch/tree/main/modules
➜  elasticsearch git:(master) git log --oneline --all --since='Apr 22 2021' -- modules/ | wc -l
1437
# just as means of comparison, the amount of work made on x-pack features is not negligible
➜  elasticsearch git:(master) git log --oneline --all --since='Apr 22 2021' -- x-pack/ | wc -l
7294

Compared with OpenSearch, the amount of code submitted to the core is about 1/3 of Elasticsearch, and the important modules are about 1/14. These modules include scripting language, reindexing function, extraction pipeline processor, etc.

➜  OpenSearch git:(main) git log --oneline --all --since='Apr 22 2021' | wc -l           
3727
➜  OpenSearch git:(main) git log --oneline --all --since='Apr 22 2021' -- server/ | wc -l
1966
# total commits to main modules (surrounding functionality not under x-pack) since fork
# https://github.com/opensearch-project/OpenSearch/tree/main/modules
➜  OpenSearch git:(main) git log --oneline --all --since='Apr 22 2021' -- modules/ | wc -l
470

Therefore, OpenSearch releases fewer versions (major and minor) than Elasticsearch releases.

Functionally, there is not much difference between OpenSearch and Elasticsearch in terms of basic functions and performance. Although Elasticsearch provides richer features, it requires customers to pay extra, and some similar features are provided for free by Elasticsearch and OpenSearch.

In terms of enterprise adoption, Adobe has decided to replace Elasticsearch with OpenSearch in the Adobe Commerce suite. In addition, OpenSearch has entered the top fifty of the DB-Engines database popularity rankings.

Therefore, there is a view that OpenSearch, an open source branch based on Elasticsearch, has succeeded in a certain sense.


The comparison of the number of submissions of the respective repos of Elasticsearch and OpenSearch is mentioned above. This value reflects the activity of the project to some extent, but it is relatively one-sided as a whole.

The following is the result of comparing Elasticsearch and OpenSearch through OSS Compass , and the data range is the last 2 years.

Open Source Compass OSS Compass is an open source ecological health assessment platform that provides public SaaS services. Just enter the warehouse name or community name on the GitHub or Gitee hosting platform to fully display the health status of the warehouse or project. It is easy to use , efficient and convenient.

OSS Compass currently builds an open source ecological evaluation system including three dimensions of productivity, robustness, and innovation, covering 14 indicator models.

It can be seen that the collaborative development index of OpenSearch and Elasticsearch are very close, which shows that the number of contributors and the frequency of code submissions on both sides are comparable. However, for evaluation indicators such as community service and support, project activity, and organizational activity, OpenSearch lags behind Elasticsearch significantly.

Click here to see the full OSS Compass comparison .

Finally the question comes, do you choose OpenSearch or Elasticsearch?

Guess you like

Origin www.oschina.net/news/241162/opensearch-vs-elasticsearch