我的映射中设置了日期字段,如下所示:
"groupsAssignedDate" : {
"type" : "date",
"format" : "MM-dd-YYYY"
}
在我的应用中,字段groupsAssignedDate最初设置为空字符串。分配组时,将生成unix时间戳并将其存储在字段中。我正在尝试使用elasticsearch的批量更新功能来引入一组groupAssignedDate为“”的文档,因为尚未分配任何组。但Elasticsearch不会为文档编制索引。这是在日志文件中:
Failed to parse [groupsAssignedDate]
...
failed to parse date field [], tried both date format [MM-dd-YYYY], and timestamp number
看来elasticsearch支持JSON null值...我是否需要将我的文档从使用“”切换为null或者是否有某些方法可以支持使用空字符串?
答案 0 :(得分:13)
听起来你可能已经自己回答了这个问题。只在日期字段中使用null而不是“”应该有效。
如果这是一个问题,可以考虑一下这个问题 https://www.elastic.co/guide/en/elasticsearch/reference/current/ignore-malformed.html#ignore-malformed-setting
可以在索引级别设置 index.mapping.ignore_malformed 全局设置,以允许在所有映射类型中全局忽略格式错误的内容(格式错误的内容示例尝试将字符串值索引为数字类型)。
修改强> 编辑上面的URL以跳转到新信息。
修改强> 再次编辑上面的URL以跳转到新信息。