我正在为Elasticsearch开发一个带Python Pyes客户端的驱动程序。我需要具有日期列的映射索引具有基于文档http://www.elasticsearch.org/guide/reference/mapping/date-format/的格式No“date_hour_minute_second”我还检查pyes docs https://pyes.readthedocs.org/en/latest/guide/reference/mapping/date-format.html
当我在我的字段中使用“date_hour_minute_second”格式时,我得到了标题中提到的异常。
这是我的字段定义:
"date": {
"boost": 1.0,
"store": "yes",
"type": "date_hour_minute_second_fraction",
"term_vector": "with_positions_offsets"
}
我无法弄明白为什么它会抛出一个例外,即使文档说它得到了支持。
答案 0 :(得分:12)
我认为你的映射略有错误,你拥有的"date"
是字段名称,你还需要"type": "date"
试试这个:
"date": {
"type": "date",
"format": "date_hour_minute_second_fraction",
"store": "yes"
}
"boost"
默认为1.0,所以不需要。
另外我会问你为什么需要"store": "yes"
,除非你已经关闭全局存储(默认情况下它是打开的,并且可以检索你发送给elasticsearch的整个文档)。
最后,"term_vector": "with_positions_offsets"
不是"date"
类型的适用参数。看看at the elasticsearch docs on core types and scroll to the date section。