2016-05-12 61 views
0

我们试图对低基数的字符串列之一强制执行全局序号以提高聚合。mapper_parsing_exception | Elasticsearch |全球序号

以下是该指数描述

{ 
    "recharge_olap": { 
    "mappings": { 
     "recharge_olap": { 
     "_all": { 
      "enabled": true 
     }, 
     "dynamic_templates": [ 
      { 
      "string_fields": { 
       "mapping": { 
       "index": "not_analyzed", 
       "omit_norms": true, 
       "type": "string" 
       }, 
       "match": "*", 
       "match_mapping_type": "string" 
      } 
      } 
     ], 
     "properties": { 
      "@version": { 
      "type": "string", 
      "index": "not_analyzed" 
      }, 
      "product_brand_name": { 
      "type": "string", 
      "index": "not_analyzed" 
      }, 
      "vertical_name": { 
      "type": "string", 
      "index": "not_analyzed" 
      } 
     } 
     } 
    } 
    } 
} 

当我们试图做全球序映射product_brand_name,我得到下面的错误?是否有任何可用的文档,因为我试图找到但得不到多少帮助。

PUT /recharge_olap/_mapping/recharge_olap 
{ 
    "product_brand_name": { 
    "type": "string", 
    "doc_values": true, 
    "fielddata": { 
     "loading" : "eager_global_ordinals" 
    } 
    } 
} 

以下是答复。

"error": { 
      "root_cause": [ 
      { 
       "type": "mapper_parsing_exception", 
       "reason": "Root mapping definition has unsupported parameters: [product_brand_name : {type=string, fielddata={loading=eager_global_ordinals}}]" 
      } 
      ], 
      "type": "mapper_parsing_exception", 
      "reason": "Root mapping definition has unsupported parameters: [product_brand_name : {type=string, fielddata={loading=eager_global_ordinals}}]" 
     }, 
     "status": 400 
    } 

回答

2

我认为正确的命令是:

PUT /recharge_olap/_mapping/recharge_olap 
{ 
    "properties": { 
    "product_brand_name": { 
     "type": "string", 
     "index": "not_analyzed", 
     "doc_values": true, 
     "fielddata": { 
     "loading": "eager_global_ordinals" 
     } 
    } 
    } 
} 
+0

映射[实施例](https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-put-mapping的.html) – pkhlop