Kibana插件Discover功能的使用中,有“Filter in”(查找与此值匹配的数据)与“Filter out”(排除与此值匹配的数据)两大快捷方式,在对日期数据进行操作的时候,提示如下错误:
Discover: failed to parse date field [975542400000] with format [year_month_day]
failed to parse date field [975542400000] with format [year_month_day]
按照提示,应该是索引的映射无法解析数据的错误,前端提交的数据为整数(long)格式,但后台以String的方式进行解析。
解决方法很简单,修改索引中日期的映射方式:
"birthday" : {
"type": "date",
"format": "strict_date_optional_time||epoch_millis"
},
在这种映射格式的支持下,插入数据时,日期格式可以为“2017/07/07”,而在Kibana的AJAX提交方式中,也支持整数型数据。
另外,在数据映射的创建过程中,一定要注意索引(index)与分词(analyze)的区别,没有索引的数据将无法检索,以日期为例,如果没有创建索引,在Kibana中将无法创建时间轴。
结论
数据检索与可视化只是大数据的外在呈现,而索引映射模式与内联关系才是大数据的灵魂。