Эластичный поиск - разбиение на страницы на агрегаты - PullRequest
0 голосов
/ 28 марта 2019

У меня есть индекс, и я запрашиваю агрегацию, вместо того, чтобы возвращать всю агрегацию сразу, я хочу, чтобы он возвращался кусками, то есть небольшими небольшими блоками, возможно ли это сделать в Elastic Search?

1 Ответ

0 голосов
/ 28 марта 2019

Попробуйте использовать Bucket sort

POST /sales/_search
{
    "size": 0,
    "aggs" : {
        "sales_per_month" : {
            "date_histogram" : {
                "field" : "date",
                "interval" : "month"
            },
            "aggs": {
                "total_sales": {
                    "sum": {
                        "field": "price"
                    }
                },
                "sales_bucket_sort": {
                    "bucket_sort": {
                        "sort": [
                          {"total_sales": {"order": "desc"}}
                        ],
                        "size": 3,
                        "from": 10
                    }
                }
            }
        }
    }
}
...