OpenSearch
是AWS 在ElasticSearch 7.10.2
的分支的基础上,以Apache 2.0
协议开放的搜索服务软件.
结论
- 从github仓库看 Star数来
4.1k
Fork396
,发展挺好 - 通过分析可知,
Open Distro for Elasticsearch
(OpenSearch 的前身)劫持的SQL插件,在ElasticSearch
SQL
插件是不会再对ElasticSearch 7.10.2
之后的版本进行支持的,本人目前的项目使用的ElasticSearch 7.13.4
,想使用免费的SQL插件不太可能了. github仓库有一个v1.13.2.0
的Release版本,打包日期正好是更名为OpenSearch的时间.
参考
- www.sohu.com/a/501770462…
- 搜索引擎流行趋势 db-engines.com/en/ranking_…
- Opensearch官网
- 下载安装,可使用Docker快速安装一个环境
笔者观点
AWS的搜索软件基于ElasticSearch7.10.2版本发行,opensearch 1.1.x版本的文档可以当做elasticsearch文档的补充,某些点讲得比elasticsearch清楚很多.
如聚合的的文档,就写的比较清楚,可以做为es官方文档的一个补充
Aggregations on text fields By default, OpenSearch doesn’t support aggregations on a text field. Because text fields are tokenized, an aggregation on a text field has to reverse the tokenization process back to its original string and then formulate an aggregation based on that. This kind of an operation consumes significant memory and degrades cluster performance.
ES与AWS之争
- 2010年2月,Elastic发布ElasticSearch,源于Apache Lucene,许可证为Apache 2.0
- 2018-2019 ,为限制云服务提供商,ElasticSearch的开源协议改为(ALv2 -> SSPL & Elastic 双授权),意味着7.10.2版本后不再提供开源版本.
- 2021年4月,AWS基于ElasticSearch 7.10.2版本创建分支,许可证为Apache 2.0
ELv2与SSPL协议
ELv2
由Elastic制定的源代码许可.目标是在尽可能宽松的情况下防止滥用.允许免费使用使用、修改、创建衍生作品和重新分发,但有三个基本的限制条件:
- 不得将产品作为托管服务提供给其他人
- 不得规避许可密钥功能或删除/隐藏受许可密钥保护的功能
- 不得删除或隐藏任何许可协议、版权或其他声明
SSPL
由 MongoDB 制定的源代码许可。针对云服务提供商做出了限制,即要求云服务提供商在未对项目做出贡献的情况下,不得发布自己的开源产品即服务。SSPL 允许用户以自由且不受限制的方式使用并修改代码成果,唯一的要求是: 如果将产品以作为一种服务进行交付,那么必须同时公开发布所有关于修改及 SSPL 之下管理层的源代码。