在elasticsearch中查询多个索引并删除重复项

时间:2015-09-17 11:28:26

标签: elasticsearch

我们在elasticsearch中有两个(或两个以上)索引编入索引的文档。

如何从两个索引中获取所有文档而不重复?

1 个答案:

答案 0 :(得分:0)

更改要编入索引的_id,然后使用terms聚合。

映射更改:

{
  "mappings": {
    "test": {
      "_id": {
        "store": true,
        "index": "not_analyzed"
      }
...

查询:

GET /test*/_search
{
  "aggs": {
    "NAME": {
      "terms": {
        "field": "_id",
        "size": 10
      }
    }
  }
}

棘手的部分是“从两个索引中获取所有文档”。从size聚合中增加terms会占用大量内存。