我有一个索引,该索引带有我正在存储日期信息的字段。目前该字段正在冲突中。据我所知,有三种价值:
- 一些文档没有字段
- 一些文档在JSON中具有这样的字段:
- "时间戳":" 2019-03-01T23:32:28Z"
- 其他文档在JSON中具有这样的字段:
- "时间戳":" 1551206688760"
我想解决冲突。
我尝试进行通配符搜索,并且会收到以下错误:
failed to parse date field [*] with format [strict_date_optional_time||epoch_millis]
我有两个问题,最终。
1)核心问题是否导致冲突,当我试图代表epoch_millis中的时间戳时,我使用了字符串而不是数字?IOW,"timestamp": 1551206688760
会很好吗?
2)在不简单地将所有数据扔掉的情况下解决此问题的正确方法是什么?
不幸的是,您需要重新索引。
- 创建使用日期映射的新索引以提供多种格式
"格式":" yyyy-mm-dd HH:mm:ss || yyyy-mm-dd || epoch_millis"
- Reindex您的数据
- 使用别名