elasticsearch 从弹性搜索中过滤响应的最佳方法
我正在努力寻找从Elastic Search查询中过滤出响应JSON的最佳方法,我知道其中两种,如下所示:
elasticsearch 从弹性搜索中过滤响应的最佳方法,
elasticsearch,kibana,elasticsearch-7,
elasticsearch,Kibana,Elasticsearch 7,我正在努力寻找从Elastic Search查询中过滤出响应JSON的最佳方法,我知道其中两种,如下所示: 过滤路径: _资料来源: 我无法决定使用哪一个,它们将对查询、性能和其他方面产生什么影响。filter\u path在某种程度上是\u source的超集。它允许您删除响应元数据,而\u source仅限于文档的实际源 免费范例: ?filter\u path=hits.hits.\u source.id与?\u source=id类似,但前者会导致 { "hits&qu
- 过滤路径:
- _资料来源:
我无法决定使用哪一个,它们将对查询、性能和其他方面产生什么影响。
filter\u path
在某种程度上是\u source
的超集。它允许您删除响应元数据,而\u source
仅限于文档的实际源
免费范例:
?filter\u path=hits.hits.\u source.id
与?\u source=id
类似,但前者会导致
{
"hits" : {
"hits" : [
{
"_source" : {
"id" : "O1819976"
}
},
...
后者包含所有常见细节:
{
"took" : 39,
"timed_out" : false,
"_shards" : {
"total" : 1,
"successful" : 1,
"skipped" : 0,
"failed" : 0
},
"hits" : {
"total" : 11,
"max_score" : null,
"hits" : [
{
"_index" : "...",
"_type" : "...",
"_id" : "O1819976",
"_score" : null,
"_ignored" : [
...
],
"_source" : {
"id" : "O1819976" <----
}
},
{
“take”:39,
“超时”:false,
“_碎片”:{
“总数”:1,
"成功":一,,
“跳过”:0,
“失败”:0
},
“点击次数”:{
“总数”:11,
“最大分数”:空,
“点击次数”:[
{
“_索引”:“…”,
“_类型”:“…”,
“_id”:“O1819976”,
“_分数”:空,
“_忽略”:[
...
],
“_来源”:{
“id:“O1819976”为了添加到@joe的答案中,第三种可能是使用而不是源代码筛选(对于除文本
)以外的任何字段类型)。字段数据是从每个字段的文档值中检索的,而不是加载整个\u源代码
文档并对其进行筛选。Kibana就是这样做的!第四种方法是使用