Kibana在可视化中包括版本化文档

时间:2018-07-13 16:11:08

标签: elasticsearch kibana amazon-elasticsearch

我有一个带有_id“ 123456”的文档,当我在Elasticsearch中对索引中的ID进行GET时,我看到它是_version: 2,因为我更新了它。

但是在我的Kibana可视化文件中,显示结果时似乎正在拾取同一文档的两个版本。

如何排除版本化文档重新出现在可视化中?例如,该记录在我的条形图中显示了两次。

请谢谢你


示例GET响应:

{
    "_index": "censored",
    "_type": "censored",
    "_id": "123456",
    "_version": 2,
    "found": true,
    "_source": {
        ... ommitted
    }
}

我还可以确定只有一个具有该ID的实际文档,因为如果我在_search字段上进行了_id,我会看到:

{
    "took": 1,
    "timed_out": false,
    "_shards": {
        "total": 5,
        "successful": 5,
        "skipped": 0,
        "failed": 0
    },
    "hits": {
        "total": 1,
        "max_score": 7.53924,
        "hits": [
            {
                "_index": "censored",
                "_type": "censored",
                "_id": "123456",
                "_score": 7.53924,
                "_source": {
                    ... ommitted
                }
            }

        ]
    }
}

编辑:我在下面尝试过的事情

aggs": {
    "latest": {
      "terms": {
        "field": "_id"
      }
    }
}

"aggs": {
    "latest": {
      "max": {
        "field": "version"
      }
    }
}

1 个答案:

答案 0 :(得分:0)

坦率地说,这只是一种解决方法,如果有人找到了更好的解决方案,我将其标记为答案。无论如何,这就是我如何防止仪表板上的可视化中显示具有相同_id的多个记录:

我只是将所有可视化中的"Y Axis - Count"更改为"Y Axis - Unique Count on field _id"

老实说,我不得不这样做似乎很愚蠢,因为我认为不同版本应该自动免于出现在我保存的搜索和可视化中。我找不到有关为什么发生这种情况的任何信息。我什至尝试使用_forcemerge来尝试删除记录的先前版本,但是它什么也没做。

如果有人找到了真正的解决方案,那会很好。