ElasticSearch将字符串索引为整数,然后返回搜索结果中的整数值

时间:2017-08-29 15:35:25

标签: java elasticsearch

我正在使用的团队有很多脏数据。有时字段可能是字符串,有时是几个相关Mongo集合中特定字段的整数。当它是一个字符串时,我们总是可以依赖它是一个有效的整数,所以这两个工作正常:

PUT index/1
{
    "field": 1
}

PUT index/2
{
    "field": "2"
}

但是,后者中的_source字段将“field”作为字符串返回。清理源数据不是我的选择,因为它超出了我的权限。那么有没有办法让ElasticSearch一致地将“字段”作为一个整数返回,或者我总是会因为它被索引的形式(整数或字符串)而无法恢复它?

1 个答案:

答案 0 :(得分:3)

如果您使用的是ES 5+,则可以使用ingest node和包含convert processor的摄取管道。