Elasticsearch 应用编辑

搜索应用程序 使用户能够构建搜索驱动的应用程序,这些应用程序利用 Elasticsearch 及其查询 DSL 的全部功能,并提供简化的用户体验。根据您的 Elasticsearch 索引创建搜索应用程序,使用搜索模板构建查询,并轻松地在 Kibana 搜索 UI 中直接预览您的结果。

您还可以使用 搜索应用程序 API 与您的搜索应用程序进行交互。搜索应用程序旨在简化使用 Elastic 平台跨各种企业搜索用例构建统一搜索体验的过程。

可用性和先决条件编辑

搜索应用程序功能在 Elastic 版本 8.8.0 中引入。

搜索应用程序是测试版功能。测试版功能可能会发生变化,并且不受一般发布 (GA) 功能的支持 SLA 的约束。Elastic 计划在将来的版本中将此功能提升为 GA。

此功能适用于所有 Elastic Cloud 部署。

当满足 Elastic 订阅要求时,此功能也适用于 自托管 部署。在 Elastic Stack 订阅 页面上的 Elasticsearch 部分查看此功能的要求。

您的部署必须包含 Elasticsearch 和 Kibana 服务。

管理搜索应用程序需要 manage_search_application 集群权限,并且还需要对与搜索应用程序关联的所有索引具有 manage 索引权限

概述编辑

Elasticsearch 查询 DSL 功能强大且灵活,但学习曲线陡峭。复杂的查询冗长,对于非专家来说难以理解。我们设计了搜索应用程序,使其更容易搜索,但同时保留了使用 Elasticsearch 索引的灵活性。

搜索应用程序使用 搜索模板 来简化构建查询的过程。模板在创建搜索应用程序时定义,可以根据您的需要进行自定义。有关详细信息,请阅读 搜索 API 和模板

入门编辑

选项 1:在 UI 中入门编辑

您可以在 Kibana UI 中的 搜索 下直接创建、构建和管理您的搜索应用程序。确保您的部署中至少有一个 Elasticsearch 索引可以使用。您的搜索应用程序底层的索引将一起搜索,类似于 别名 如何搜索多个索引。

要在 Kibana 中创建新的搜索应用程序

  1. 转到 搜索 > 搜索应用程序
  2. 选择 创建
  3. 选择要用于搜索应用程序的 Elasticsearch 索引。
  4. 为您的搜索应用程序命名。
  5. 选择 创建

您的搜索应用程序现在应该在搜索应用程序列表中可用。

创建后,您可以在 搜索 > 搜索应用程序 > 您的搜索应用程序 > 文档浏览器 下探索您的搜索应用程序中的文档。从那里,您可以展开匹配的 Elasticsearch 文档以查看其完整内容。

选项 2:使用 API 入门编辑

使用 Elasticsearch 放置搜索应用程序 API 创建搜索应用程序。

以下示例创建了一个名为 my_search_application 的搜索应用程序,该应用程序搜索 my_search_index1my_search_index2 索引,并定义了一个简单的搜索模板(请参阅 默认模板示例)。

PUT /_application/search_application/my_search_application
{
  "indices": [ "my_search_index1", "my_search_index2" ],
  "template": {
    "script": {
      "source": {
        "query": {
          "query_string": {
            "query": "{{query_string}}",
            "default_field": "{{default_field}}"
          }
        }
      },
      "params": {
        "query_string": "*",
        "default_field": "*"
      }
    }
  }
}

搜索模板编辑

搜索模板是搜索应用程序的核心。为搜索应用程序创建的 默认模板 非常简单,您需要根据自己的需要对其进行自定义。在 搜索 API 和模板 中包含了一些示例,可以帮助您入门,包括默认模板以及用于文本搜索、语义搜索和混合搜索的模板。