Elasticsearch-根映射定义具有不支持的参数

时间:2019-06-10 11:33:07

标签: elasticsearch

我正在尝试创建索引并添加映射。这是我的数据:

{
  "test" : [ {
    "data" : "119050300",
    "date" : "00:00 2019-06-03"
  } ]
}

这是我的映射命令:

http://...com:5101/...060619/_mapping
    {
      "mappings": {
        "properties": {
          "date": {
            "type":   "date",
            "format": "HH:mm yyyy-MM-dd"
          },
            "data": {
            "type":   "integer"
          }
        }
      }
    }

在放入数据之前,请先尝试设置映射。这是我得到的错误:

{
    "error": {
        "root_cause": [
            {
                "type": "mapper_parsing_exception",
                "reason": "Root mapping definition has unsupported parameters:  [mappings : {properties={date={format=HH:mm yyyy-MM-dd, type=date}, data={type=integer}}}]"
            }
        ],
        "type": "mapper_parsing_exception",
        "reason": "Root mapping definition has unsupported parameters:  [mappings : {properties={date={format=HH:mm yyyy-MM-dd, type=date}, data={type=integer}}}]"
    },
    "status": 400
}

1 个答案:

答案 0 :(得分:2)

您正在呼叫_mapping端点,并且仍在有效负载中传递mappings。我只是使用以下语法创建了映射,并且对我有用,而如果我在JSON有效负载中传递了mapping键,我将得到相同的异常

{  ---> Note I removed `mappings` key from payload
        "properties": {
            "date": {
                "type": "date",
                "format": "HH:mm yyyy-MM-dd"
            },
            "data": {
                "type": "integer"
            }
        }
}

编辑:-我只是花了一些时间,发现如果要创建新索引,但如果要使用{更新现有映射,则可以在有效负载中传递mapping {1}}端点,则似乎不接受它。进一步了解here