【发布时间】:2020-01-20 03:02:52
【问题描述】:
我有以下动态映射模板。
PUT my_index
{
"mappings": {
"dynamic_templates": [
{
"objects": {
"match_mapping_type": "object",
"mapping": {
"type": "nested"
}
}
}
],
"dynamic_date_formats": ["yyyy-MM-dd" , "yyyy-MM-dd HH:mm:ss"]
}
}
唯一的问题是当我有空日期时它会抛出错误。我只想忽略空日期。我的数据有多个日期字段,因此不想为每个日期字段进行映射。
以下是我得到的错误:
org.elasticsearch.hadoop.rest.EsHadoopRemoteException:非法参数异常:不同类型的映射器 [pb_bureau.applications.accounts.dateclosed],current_type [文本],merged_type [日期] {"index":{"_id":"02ade9b5-1ca5-4006-ab06-9c96439e7d02"}}
在我们插入的日期以下:空白字段是日期的空值
select date1, date2 from cbl_application_credit_report_account ;
2014-11-14
2018-03-31
2012-07-27 2012-07-23
2015-11-30
2017-08-04 2016-05-13
下面是我正在应用的映射:
PUT my_index
{
"mappings": {
"dynamic_templates": [
{
"objects": {
"match_mapping_type": "object",
"mapping": {
"type": "nested"
}
}
},
{
"dates_ignore_malformed": {
"path_match": "*",
"match_mapping_type": "date",
"mapping": {
"format": "yyyy-MM-dd||yyyy-MM-dd HH:mm:ss",
"ignore_malformed": true
}
}
}
],
"dynamic_date_formats": ["yyyy-MM-dd" , "yyyy-MM-dd HH:mm:ss"]
}
}
动态映射中是否有任何方法可以忽略空日期?
【问题讨论】:
-
您的日期字段是否共享一致的命名?即它们是否都以
Date或_date等结尾?
标签: azure elasticsearch kibana