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