居然是你

搜索百科(4):OpenSearch — 开源搜索的新选择

liaosy 发表了文章 • 0 个评论 • 5495 次浏览 • 2025-09-21 14:31 • 来自相关话题

大家好,我是 INFINI Labs 的石阳。

欢迎关注 《搜索百科》 专栏!每天 5 分钟,带你速览一款搜索相关的技术或产品,同时还会带你探索它们背后的技术原理、发展故事及上手体验等。

上一篇我们围观了 [“流量明星” Elasticsearch](https://infinilabs.cn/blog/202 ... earch/) — 从食谱搜索到 PB 级明星产品,从 Apache 2.0 到 SSPL 协议风波;今天我们来聊聊它的“分叉兄弟” OpenSearch

![](https://infinilabs.cn/img/blog ... /1.jpg)

引言


2021 年,当 Elasticsearch 宣布将其许可证从 Apache 2.0 变更为 SSPL/Elastic License 时,整个搜索社区为之震动。这一变更直接催生了一个新的开源分支 — OpenSearch。这个由 AWS 主导的项目不仅在短短几年内迅速发展成熟,更成为了许多企业在云原生环境下搜索解决方案的新选择。

OpenSearch 概述


OpenSearch 是从 Elasticsearch 7.10.2 分支而来的开源搜索与分析套件,由 AWS 主导开发并贡献给开源社区。OpenSearch 包括 OpenSearch(搜索引擎)和 OpenSearch Dashboards(可视化界面),完全兼容 Apache 2.0 协议,旨在为用户提供一个真正开源、社区驱动的搜索与分析解决方案。

  • 首次发布:2021 年 4 月
  • 最新版本:3.2.0(截止 2025 年 9 月)
  • 开源协议:Apache License 2.0
  • 主导企业:Amazon Web Services (AWS)
  • 官方网址:[https://opensearch.org/](https://opensearch.org/)
  • GitHub 仓库:[https://github.com/opensearch-project](https://github.com/opensearch-project)

    诞生故事:开源协议争议的产物


    时间回到 2021 年 1 月,Elastic 公司宣布 Elasticsearch 从 7.11 版本起不再使用 Apache 2.0 协议,而改为 Elastic License 与 SSPL。这一决定立刻在社区和产业界引发巨大争议。

    ![](https://infinilabs.cn/img/blog ... /4.jpg)

    AWS(亚马逊云)作为 Elasticsearch 的重要用户与云服务提供商,不愿意被 Elastic 的商业条款所限制,随即牵头将 Elasticsearch 7.10 版本 fork 出来,并与 Kibana 一起重命名为 OpenSearch 与 OpenSearch Dashboards。

    从此,开源世界分裂成了两条路线:

    1. Elastic 官方的 Elasticsearch + Kibana(带有商业许可)。
    2. 社区驱动的 OpenSearch + OpenSearch Dashboards(继续遵循 Apache 2.0 协议)。

      这个分叉,既是开源协议之争的产物,也是云厂商与开源公司之间博弈的缩影。虽然初期被质疑过“是否真开源”,但经过数年的迭代,OpenSearch 已形成了相对独立的开发节奏和用户群体,插件和生态也逐渐丰富。

      技术架构与特性


      ![](https://infinilabs.cn/img/blog ... /2.png)

      OpenSearch 是一个基于 Apache Lucene 的分布式搜索与分析引擎。在将数据添加到 OpenSearch 后,可以对其执行各种功能完备的全文搜索操作:按字段搜索、跨多个索引搜索、提升字段权重、按得分排序结果、按字段排序结果以及对结果进行聚合。

      ![](https://infinilabs.cn/img/blog ... /3.png)

      OpenSearch 的核心架构由集群、节点、索引、分片和文档组成。最高层是 OpenSearch 集群,它是由多个节点组成的分布式网络,每个节点会根据其类型负责不同的集群操作。数据节点负责存储索引(即文档的逻辑分组),并处理数据写入、搜索和聚合等任务。

      每个索引会被划分为多个分片,分片包含主数据和副本数据。分片会分布在多台机器上,从而实现水平扩展,提升性能并高效利用存储资源。

      OpenSearch vs Elasticsearch:详细对比


      | 特性 | OpenSearch | Elasticsearch |
      | --------------- | ---------------------------------- | ---------------------------- |
      | 许可证 | Apache 2.0(完全开源) | SSPL/Elastic License/AGPLv3 |
      | 起始版本 | 基于 Elasticsearch 7.10.2 | 从 7.11 开始协议变更 |
      | 社区治理 | 开放治理模式,由社区驱动 | 由 Elastic NV 公司主导 |
      | 安全性 | 所有安全功能默认开源 | 部分高级安全功能需要付费 |
      | AI/向量检索 | 近年快速跟进,兼容性较好 | 原生支持,功能逐步增强 |
      | 部署选择 | AWS OpenSearch Service / 自建 | Elastic Cloud / 自建 |
      | 升级路径 | 从 Elasticsearch 7.x 平滑迁移 | 原生升级路径 |
      | 社区活跃度 | 社区逐渐壮大,受到纯开源拥护者欢迎 | 用户基础庞大,但分裂带来争议 |

      快速开始:5 分钟部署 OpenSearch


      1. 使用 Docker 部署


      ```bash

      拉取 OpenSearch 镜像

      docker pull opensearchproject/opensearch:3.2.0

      启动 OpenSearch 节点

      docker run -d --name opensearch-node \
      -p 9200:9200 -p 9600:9600 \
      -e "discovery.type=single-node" \
      -e "plugins.security.disabled=true" \
      opensearchproject/opensearch:3.2.0

      拉取 OpenSearch Dashboards

      docker pull opensearchproject/opensearch-dashboards:3.2.0

      启动 Dashboards

      docker run -d --name opensearch-dashboards \
      -p 5601:5601 \
      -e "OPENSEARCH_HOSTS=http://opensearch-node:9200" \
      opensearchproject/opensearch-dashboards:3.2.0
      ```

      2. 验证安装


      ```bash

      检查集群状态

      curl -X GET "<a href="http://localhost:9200/"" rel="nofollow" target="_blank">http://localhost:9200/"
      ```

      出现如下结果说明安装成功。
      ![](https://infinilabs.cn/img/blog ... /5.png)

      3. 创建索引和搜索


      ```bash

      索引文档

      curl -X POST "<a href="http://localhost:9200/my-first-index/_doc"" rel="nofollow" target="_blank">http://localhost:9200/my-first-index/_doc" -H 'Content-Type: application/json' -d'
      {
      "title": "OpenSearch 入门指南",
      "content": "这是我在 OpenSearch 中的第一个文档",
      "timestamp": "2025-09-18T10:00:00"
      }'

      执行搜索

      curl -X GET "<a href="http://localhost:9200/my-first-index/_search"" rel="nofollow" target="_blank">http://localhost:9200/my-first-index/_search" -H 'Content-Type: application/json' -d'
      {
      "query": {
      "match": {
      "content": "第一个文档"
      }
      }
      }'
      ```

      4. 访问控制台


      打开浏览器访问 http://localhost:5601 即可使用 OpenSearch Dashboards 界面。

      ![](https://infinilabs.cn/img/blog ... ds.png)

      结语


      OpenSearch 的出现,是开源社区的一次“自救”。它不仅延续了 Elasticsearch 的核心功能,还代表了另一种治理模式:由云厂商和社区共同维护,保证了开源协议的延续。

      在搜索技术的版图里,Elasticsearch 与 OpenSearch 的分叉,注定会成为一个重要的历史节点。未来,两者可能会继续竞争,也可能各自发展出独特的生态。

      🚀 下期预告

      下一篇我们将介绍 OpenSearch 的另一个兄弟 [Easysearch](https://infinilabs.cn/products/easysearch/),一个衍生自开源协议 Apache 2.0 的 Elasticsearch 7.10.2 版本的轻量级搜索引擎,作为一个 ES 国产替代方案,看看它如何以其极致的速度和易用性在国内搜索领域占据一席之地。

      💬 三连互动

    3. 您是否考虑过从 Elasticsearch 迁移到 OpenSearch?
    4. 在开源协议方面,您更倾向于哪种模式?Apache 2.0 还是 Elastic 的多重许可?
    5. 对于云厂商与开源项目之间的关系,您有什么看法?

      对搜索技术感兴趣的朋友,也欢迎加我微信(ID:lsy965145175)备注“搜索百科”,拉你进  搜索技术交流群,一起探讨与学习!

      推荐阅读

  • [搜索百科(3):Elasticsearch — 搜索界的"流量明星"](https://infinilabs.cn/blog/202 ... earch/)
  • [搜索百科(2):Apache Solr — 企业级搜索的开源先锋](https://infinilabs.cn/blog/2025/search-wiki-2-solr/)
  • [搜索百科(1):Lucene — 打开现代搜索世界的第一扇门](https://infinilabs.cn/blog/202 ... ucene/)

    🔗 参考资源

  • [OpenSearch 官方文档](https://opensearch.org/docs/latest/)
  • [OpenSearch 与 Elasticsearch 功能对比](https://www.netdata.cloud/acad ... earch/)

    原文:https://infinilabs.cn/blog/202 ... arch/

OpenSearch里的机器学习demo简介

回复

Charele 回复了问题 • 2 人关注 • 4 个回复 • 4351 次浏览 • 2024-06-21 14:39 • 来自相关话题

4月13日 OpenSearch Meetup:探索大模型时代下的 VectorDB

liaosy 发表了文章 • 0 个评论 • 4460 次浏览 • 2024-04-10 10:08 • 来自相关话题

![OpenSearch](https://elasticsearch.cn/uploa ... 7.jpeg)

在大模型席卷全球的行业背景下,基于检索结果增强的文本生成(RAG)备受关注。而作为 RAG 关键技术的向量数据库(VectorDB)正处在发展的十字路口。作为全球头部的 VectorDB 解决方案,OpenSearch 社区一直致力于前沿向量检索技术的研发。为了探讨 VectorDB 的发展趋势、应用场景、上下游技术生态,我们策划了这一场技术分享与线下见面会。希望可以给 VectorDB 玩家提供一个学习知识、结交朋友的平台。

在这场见面会中,我们会邀请来自于头部企业的向量检索技术研发专家、OpenSearch 社区的活跃贡献者以及一线人工智能科学家,来分享 VectorDB、大模型以及上下游相关技术的最新发展,以及对这个行业的未来的走向的见解。您将在这场会议中看到各个 VectorDB 头部企业的最新向量检索技术和产品,甚至有机会亲自作为用户去尝试。同时,我们还将举行圆桌讨论,您可以和各个相关行业的资深人士深入探讨 VectorDB 的未来,以及在这个行业中可能把握的机会。

时间:2024/04/13(周六) 14:00-18:30

地点:上海市长宁区新华路345弄4号楼 STOP SHOP(社友咖啡)

INIFINI Labs 议题推荐


向量搜索基础设施 OpenSearch - 多集群管理的挑战与实践》By 曾嘉毅| INFINI Labs 联合创始人

摘要:数据规模不断增长和业务需求的多样化,推动了向量搜索技术的兴起。本次介绍聚焦于向量搜索的崛起和 OpenSearch 平台的能力,同时探讨业务数据集群发展趋势和常见挑战,包括管理多套集群、容量规划、监控、告警、治理、安全、开发、流量和排障等问题,提供解决方案和最佳实践。

活动整体议程


WechatIMG32.jpg



关于极限科技(INFINI Labs)


![INFINI Labs](https://www.infinilabs.com/img ... bs.png)

极限科技,全称极限数据(北京)科技有限公司,是一家专注于实时搜索与数据分析的软件公司。旗下品牌极限实验室(INFINI Labs)致力于打造极致易用的数据探索与分析体验。

极限科技是一支年轻的团队,采用天然分布式的方式来进行远程协作,员工分布在全球各地,希望通过努力成为中国乃至全球企业大数据实时搜索分析产品的首选,为中国技术品牌输出添砖加瓦。

官网:<https://www.infinilabs.com>;

也欢迎大家微信扫码添加小助手(INFINI-Labs),加入用户群一起讨论交流。

![](https://infinilabs.cn/img/blog ... ew.jpg)

3月26日 OpenSearch Community Meeting 视频回放

Charele 回复了问题 • 2 人关注 • 1 个回复 • 5522 次浏览 • 2024-04-05 16:58 • 来自相关话题

OpenSearch 与 Elasticsearch:哪个开源搜索引擎适合您?

Hansoph 发表了文章 • 1 个评论 • 3244 次浏览 • 2024-03-15 10:49 • 来自相关话题

![](https://infinilabs.com/img/blo ... 01.png)

当谈论到搜索引擎产品时,Elasticsearch 和 OpenSearch 是两个备受关注的选择。它们都以其出色的功能和灵活性而闻名,但在一些方面存在一些差异。在本文中,我们将从功能和延展性、工具与资源、价格和许可这三个角度对这两个产品进行论述。通过深入研究它们的特点和优势,您将能够更好地了解它们,从而为您的搜索需求做出明智的选择。让我们开始探索 Elasticsearch 和 OpenSearch 的世界,以便您能够为自己的项目或业务找到最佳的搜索解决方案。

功能和延展性


Elasticsearch 是一个功能强大的搜索引擎,它支持全文搜索、实时数据分析、数据聚合和可视化等功能。

  1. 分布式架构:它使用分布式架构,可以处理大规模数据集,并以快速的速度返回查询结果。
  2. 多种查询类型和过滤器:提供多种查询类型和过滤器,使用户能够进行复杂的数据分析和检索。
  3. 高可用性和容错性:提供高可用性和容错性,通过复制和分片机制来确保数据的安全性和可靠性。
  4. 强大的插件生态系统:帮助用户处理映射、分析、脚本引擎和发现等任务。通过使用这些插件,用户可以根据其特定的数据处理和分析需求进行功能扩展和定制。

    OpenSearch 是从 Elasticsearch 分叉出来的版本,因此在许多方面与 Elasticsearch 相似。它保留了 Elasticsearch 的核心功能,并加入了一些新的功能和扩展性。下面主要讨论一些差异点:

  5. 开源性和社区参与:OpenSearch 更注重开源性和社区参与,鼓励用户共同开发和改进系统。
  6. 功能差异:OpenSearch 提供了一些额外的免费功能,如集中用户账户/访问控制、交叉集群复制、IP 过滤、可配置的数据保留期、异常检测、Tableau 连接器、JDBC 驱动程序、ODBC 驱动程序以及回归和分类等机器学习功能。
  7. 插件生态系统差异:OpenSearch 中的某些功能作为插件捆绑在一起,需要用户额外学习和适应新工具。

    服务与支持


    Elasticsearch 拥有丰富的工具和资源,使用户能够更好地使用和管理搜索引擎。

  8. 配套工具:丰富的生态系统,Logstash 用于数据摄取和转换,可以帮助用户为非结构化数据添加结构,进行字段匿名处理,并解析 IP 地址以获取位置信息。Beats 是一个专注于数据传输的工具,可以将数据从数千台机器发送到 Logstash 或 Elasticsearch。
  9. 完善的文档资料和培训资源:

    a. 官方网站提供了产品指南、教程视频、博客文章、讨论论坛等丰富的学习材料。

    b. Elastic 还提供了 Slack 频道、YouTube 频道、以及定期举办的在线研讨会和培训活动,为用户提供即时的答疑和学习机会。

    c. 广泛的支持服务,包括社区支持、商业支持和培训服务。

    OpenSearch 配套工具延展性更好,但是在学习资料和用户培训方面存在大部分空白,目前的服务与支持模式主要依赖于社区。

  10. 配套工具:除去支持 Logstash 和 Beats 外,还有其他工具如 Fluentd、Fluent Bit、OpenTelemetry Collector 和 Data Prepper,来支持数据处理和传输。

  11. 文档资料和培训资源:

    a. 文档资源:积极填补文档中的空白,并且每月举行两次社区会议,鼓励用户通过 GitHub 提交拉取请求、报告问题和提供反馈。

    b. 合作伙伴:提供 OpenSearch 的咨询支持和托管服务,其中就包括 [INFINI Labs](https://infinilabs.com/blog/) 在内,通过这些合作伙伴,用户可以获取与 OpenSearch 相关的专业服务和咨询,以满足其特定需求。

    OpenSearch 的学习资源和培训材料相对较少,相比之下,Elasticsearch 的学习资料更加丰富和全面。然而,OpenSearch 社区积极发展中,未来可能会有更多的学习资源和支持服务可用。

    价格和许可


    Elasticsearch 和 OpenSearch 在价格和许可方面也存在差异。本文将从紧急支持和许可限制两个角度进行分析。

    Elasticsearch:

  12. 紧急支持:Elasticsearch 的高级许可证提供紧急支持,这意味着当出现集群崩溃、数据丢失或安全漏洞等问题时,公司能够提供即时的支持。
  13. 许可限制:Elasticsearch 提供基于订阅模型的商业许可,其中包括从免费的基本许可到高级许可的多个层次。高级许可提供了额外的功能和支持,适合对性能和功能有更高要求的企业。

    Opensearch:

  14. 紧急支持:当前可以通过过第三方咨询公司或 AWS OpenSearch 等免费工具获得同样水平的支持,OpenSearch 有一个合作伙伴页面,列出了许多咨询公司,包括 [INFINI Labs](https://infinilabs.com/blog/) 的 OpenSearch 支持页面,他们提供 24 x 7 的支持。
  15. 许可限制:OpenSearch 是基于 Apache 2.0 许可的开源软件,允许用户自由使用、修改和分发。它提供了免费的功能和灵活的定制,使用户能够根据自己的需求进行自定义和扩展。

    总结


    Elasticsearch 和 OpenSearch 都是强大而灵活的搜索引擎产品,但是存在一些差异。

    总体来说,Elasticsearch 是一个成熟、功能强大的搜索引擎,拥有广泛的插件生态系统和丰富的学习资源。商业版本提供额外的功能和支持服务,适合需要高级功能和专业支持的企业。

    OpenSearch 是从 Elasticsearch 分叉出来的版本,保留了核心功能,并添加了一些额外的功能。它更注重开源性和社区参与,适合更倾向于自主开发和定制的用户。

    作者的话


    希望这些信息能为您提供有价值的帮助,并使您更好地了解 Elasticsearch 和 OpenSearch。无论您选择哪个搜索引擎,都希望它能满足您的需求并取得成功。