0

私はElasticSearchを始めたばかりで、基本的なクエリなどを行うことができましたが、現在、次のようなデータマッピングがあります:

merchant: {
  properties: {
    id: {
      type: 'integer'
    },
    name: {
      type: 'text'
    },
    logo: {
      type: 'boolean'
    }
  }
},
store: {
  properties: {
    location: {
      type: 'geo_point'
    },
    category: {
      type: 'integer'
    }
  }
}

ドキュメントDistance Sort Exampleからの距離に基づいて結果をソートしようとしています。現在、店舗の下の場所フィールドで機能させる方法がわかりません。を使用store.locationすると、次のようなエラーが発生します。

{
  "error" : {
    "root_cause" : [
      {
        "type" : "parsing_exception",
        "reason" : "unknown field [store.location]",
        "line" : 1,
        "col" : 0
      }
    ],
    "type" : "search_phase_execution_exception",
    "reason" : "all shards failed",
    "phase" : "query",
    "grouped" : true,
    "failed_shards" : [
      {
        "shard" : 0,
        "index" : "merchants",
        "node" : "9t4Z6koOTe2rWZmNcwYNNQ",
        "reason" : {
          "type" : "parsing_exception",
          "reason" : "unknown field [store.location]",
          "line" : 1,
          "col" : 0
        }
      }
    ]
  },
  "status" : 400
}

これを機能させるものを見つけることができませんstore.location

{
    "merchants" => {
        "mappings" => {
            "store" => {
                "properties" => {
                    "category" => {
                        "type" => "integer"
                    }, "location" => {
                        "type" => "geo_point"
                    }
                }
            }, "merchant" => {
                "properties" => {
                    "id" => {
                        "type" => "integer"
                    }, "logo" => {
                        "type" => "boolean"
                    }, "name" => {
                        "type" => "text"
                    }
                }
            }, "offer" => {
                "properties" => {
                    "description" => {
                        "type" => "text"
                    }, "expiresAt" => {
                        "type" => "integer"
                    }, "id" => {
                        "type" => "integer"
                    }, "intro" => {
                        "type" => "text"
                    }, "title" => {
                        "type" => "text"
                    }, "top" => {
                        "type" => "integer"
                    }
                }
            }
        }
    }
}
4

0 に答える 0