Javascript 如何在nodejs中使用弹性搜索聚合查询进行分页(从、大小)
我目前有一个API,返回用户使用日志前端,但数据太大,所以我需要分页。我无法在弹性搜索聚合查询中进行分页。 当前正在使用此代码Javascript 如何在nodejs中使用弹性搜索聚合查询进行分页(从、大小),javascript,node.js,
elasticsearch,Javascript,Node.js,
elasticsearch,我目前有一个API,返回用户使用日志前端,但数据太大,所以我需要分页。我无法在弹性搜索聚合查询中进行分页。 当前正在使用此代码 const result = await esClient.search({ index: 'user-logs', body: { size: 0, query: { bool: { filter: [ { r
const result = await esClient.search({
index: 'user-logs',
body: {
size: 0,
query: {
bool: {
filter: [
{
range: {
timestamp: {
gte: 1596804771643,
lte: 1596904771643,
format: 'epoch_millis'
}
}
},
{
query_string: {
analyze_wildcard: true,
query: `*`
}
}
]
}
},
aggs: {
3: {
terms: {
field: 'email.keyword',
size: 10,
order: {
_term: 'desc'
},
min_doc_count: 1
},
aggs: {
4: {
terms: {
field: 'mobile.keyword',
order: {
_term: 'desc'
},
min_doc_count: 1
},
aggs: {
5: {
terms: {
field: 'fullName.keyword',
order: {
_term: 'desc'
},
min_doc_count: 1
},
aggs: {
6: {
terms: {
field: 'branchName.keyword',
order: {
_term: 'desc'
},
min_doc_count: 1
},
aggs: {
1: {
sum: {
field: 'timespent'
}
}
}
}
}
}
}
}
}
}
}
}
});
在简单查询中,我使用“from”和“size”,但在聚合查询中,它们不起作用。我不熟悉弹性搜索。术语不支持分页
查看哪些确实支持分页,请在键后使用
这些术语不支持分页
查看w/哪些确实支持在按键后使用分页
我使用的是弹性搜索版本5.5,它不支持这种情况,在这种情况下,您可能需要循环使用某些度量(日期范围在脑海中出现)在较小的批次中,然后合并agg结果。是的,这就是我正在做的。我使用的是弹性搜索版本5.5,它不支持这种情况。在这种情况下,您可能需要在较小的批次中循环一些度量(日期范围)然后合并agg结果。是的,这就是我正在做的