elasticsearch - 使用突出显示优化弹性搜索查询
问题描述
我想知道为什么使用突出显示时处理时间会增加。有没有办法优化它?
下面提到了一个示例查询:
{
"from": 30,
"size": 60,
"query": {
"bool": {
"must": {
"multi_match": {
"query": "shall have the right",
"fields": ["subType", "title", "type", "content"],
"fuzziness": 1
}
}
}
},
"highlight": {
"type": "unified",
"fields": {
"*": {}
}
}
}
解决方案
因为要获取高亮信息,ES 需要运行一个 fetch 阶段,这意味着另一个调用。
请阅读有关获取阶段的更多信息https://www.elastic.co/guide/en/elasticsearch/guide/current/_fetch_phase.html。同样在同一个文档中,提到了有关突出显示的信息。
分片加载文档正文(_source 字段),并在请求时通过元数据和搜索片段突出显示来丰富结果。协调节点收到所有结果后,会将它们组合成一个响应,然后返回给客户端。
推荐阅读
- jquery - 带有内联链接的 Bootstrap 嵌套手风琴
- php - “嵌套”标识符 - 在另一个变量的标识符中使用一个变量的值。这可能吗?
- pine-script - 贸易观松;将 v2 更改为 v3:未声明的标识符错误
- reactjs - React 路由器:userHistory 推送功能未按预期工作
- ruby-on-rails - 为什么 rspec 找不到我的 no-params-required 路线?
- javascript - 如何在javascript执行之前传递输入,而不在终端中提示
- javascript - 如何在AngularJS中动态更改表格单元格颜色
- node.js - 防止未经身份验证的用户下载服务器上的任何资源
- laravel - 如何在 Laravel Blade 中使用 Vue 标签?
- ddev - 在 DDEV 中如何安装非 Debian 软件包,如 PECL、npm、pip 等