对于Elasticsearch进行大数据量的排序和分页,可以使用以下两个重要的关键词:sort
和from/size
。
sort
可以用来指定排序的字段及排序方式。例如,按照age
字段进行升序排序:
GET /my_index/_search
{
"query": {
"match_all": {}
},
"sort": [
{ "age": "asc" }
]
}
可以使用多个排序字段,例如按照age
字段升序排序,如果age
字段相同则按照name
字段进行升序排序:
GET /my_index/_search
{
"query": {
"match_all": {}
},
"sort": [
{ "age": "asc" },
{ "name": "asc" }
]
}
from/size
可以用来指定返回的结果集起始位置和大小。例如,假设想要从第10个结果开始返回10个结果:
GET /my_index/_search
{
"query": {
"match_all": {}
},
"sort": [
{ "age": "asc" }
],
"from": 9,
"size": 10
}
以上是在Elasticsearch中进行大数据量的排序和分页的方法。