搜索功能
OpenSearch 提供了许多功能,可用于自定义您的搜索用例并提高搜索相关性。
搜索方法
OpenSearch 支持以下搜索方法。
精确匹配和关键词
OpenSearch 使用 BM25 算法实现词汇(关键词)文本搜索,根据词频和文档长度匹配和排序文档。
相似性和语义
OpenSearch 支持使用密集和稀疏向量嵌入进行相似度(k 近邻)搜索,以支持语义搜索、检索增强生成和多模态图像搜索等用例。
AI 驱动的搜索
OpenSearch 支持超出向量嵌入的 AI 驱动搜索功能。OpenSearch 的 AI 搜索允许通过任何 AI 服务丰富搜索和摄入流,以支持全方位的 AI 增强搜索用例。
查询语言
在 OpenSearch 中,您可以使用以下查询语言来搜索数据:
-
查询领域特定语言 (DSL):主要的 OpenSearch 查询语言,支持创建复杂、完全可自定义的查询。
-
查询字符串查询语言:一种精简的查询语言,可在搜索请求的查询参数中或 OpenSearch Dashboards 中使用。
-
SQL:一种传统的查询语言,弥合了传统关系数据库概念与 OpenSearch 文档导向数据存储灵活性之间的差距。
-
管道处理语言 (PPL):OpenSearch 中用于可观测性的主要语言。PPL 使用管道语法将命令链接到查询中。
-
Dashboards 查询语言 (DQL):一种简单的基于文本的查询语言,用于在 OpenSearch Dashboards 中过滤数据。
搜索性能
OpenSearch 提供了多种提高搜索性能的方法:
搜索相关性
搜索相关性衡量文档与搜索查询的匹配程度。当您运行搜索查询时,OpenSearch 会将查询中的词与每个文档中的词进行比较,并根据词出现的频率以及匹配的紧密程度等因素分配相关性分数。更多信息请参见相关性。
为了帮助您微调和提高搜索相关性,OpenSearch 提供了多项专用功能:
搜索结果
OpenSearch 支持对搜索结果进行以下常用操作:
搜索管道
您可以使用搜索管道处理搜索查询和搜索结果。