使用from和size参数的弹性搜索过滤器构面

时间:2013-04-01 18:52:05

标签: elasticsearch facet

我正试图在过滤文档的前几页中得到计数。

这可能吗?

例如,在这里,我希望我的previous_macs facets计算20之前具有os_name:“mac”的所有文档。

{
    "from": 20,
    "size": 10,
    "sort": {
        "created_at": "desc"
    },
    "facets": {
        "previous_macs": {
            "filter": {
                "term": {
                    "os_name": "mac"
                }
            }
            // something here ? facet_filter maybe?
        }
    }
}

1 个答案:

答案 0 :(得分:0)

没有通用的方法,但如果您可以制定一个过滤器,可以可靠地过滤除前20个记录之外的所有内容,则可以将其用作facet_filter。因此,如果created_at字段是唯一的,您可以使用它来创建范围过滤器,其中包括第20个文档的所有内容。然后,您可以将此范围过滤器用作方面的facet_filter