インデックス、マッピング定義の作成エラー

以下のマッピング定義を使用したインデックスの作成で
エラーが発生しており色々調べてはいるのですが解決せず、
回答頂けますと幸いです。
ElasticsearchのVersion7.5.0を使用しています。

・mapping.json

{
    "mappings" : {
        "text" : {
            "properties" : {
                "text1" : { "type" : "text", "fielddata" : "true" },
                "text2" : { "type" : "text", "fielddata" : "true" }
            }
        }
    }
}

・作成コマンド

curl -H "Content-Type: application/json" -XPUT 'http://localhost:9200/test?pretty' -d @mapping.json

・エラー内容

{
  "error" : {
    "root_cause" : [
      {
        "type" : "mapper_parsing_exception",
        "reason" : "Root mapping definition has unsupported parameters:  [text : {properties={text1={type=text}, text2={type=text}}}]"
      }
    ],
    "type" : "mapper_parsing_exception",
    "reason" : "Failed to parse mapping [_doc]: Root mapping definition has unsupported parameters:  [text : {properties={text1={type=text}, text2={type=text}}}]",
    "caused_by" : {
      "type" : "mapper_parsing_exception",
      "reason" : "Root mapping definition has unsupported parameters:  [text : {properties={text1={type=text}, text2={type=text}}}]"
    }
  },
  "status" : 400
}

意図しているドキュメントの構造は以下のようなものでしょうか。

{
  "text": {
    "text1": "aaaaa",
    "text2": "bbbbb"
  }
}

であれば、次のようなjsonでいかがでしょうか。mappingsとtextの間にpropertiesをおきました。

{
  "mappings": {
    "properties": {
      "text": {
        "properties": {
          "text1": {
            "type": "text",
            "fielddata": "true"
          },
          "text2": {
            "type": "text",
            "fielddata": "true"
          }
        }
      }
    }
  }
}

ご参考になれば幸いです。

ご回答ありがとうございます。
頂いたjsonで作成することができました。
ありがとうございました。

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.