我的Elasticsearch 6.4.2带有这样的映射:
date_of_birth": {
"type": "date"
},
"prefix_search": {
"type": "text"
}
并通过使用copy_to
功能,我想向date_of_birth
中添加prefix_search
(稍后将其用于某些基于文本的搜索)。当查询ES时,我得到1430438920000
代表date_of_birth
,但是当将其添加到prefix_search
时,我希望将其格式化为例如2018.05.24
(或其他格式,与哪一种格式无关紧要)。
为了使格式化日期在搜索prefix_search
时有用,必须制作一个自定义分析器-请将此视为另一个问题。
使用copy_to
功能将date
属性的格式化值附加到目标属性时该怎么办?
谢谢!
答案 0 :(得分:0)
copy_to
索引到具有目标字段分析链的另一个字段中的字段的原始源。
您可以
1 /在管道中使用script processor(但我认为这确实是一个痛苦。)
2 /将要格式化的数据添加到要在另一个字段中建立索引的源中(例如date_of_birth_formatted
)并在其上配置copy_to
3 /使用相同的date_of_birth
字段,在建立索引之前格式化数据并在date_of_birth
字段上更改date format