2016-05-25 2 views
1

私はこのgeo_point

"id": "edff12sd3" 
"main_array": [ 
{ 
"id": "2308", 
"name": "Grey Area", 
"location": { 
    "lat": 28.5696577, 
    "lon": 77.3229933 
} 
} 
, 
{ 
"id": "2274", 
"name": "Tribute to The Beatles by Atul Ahuja- Live Music", 
"location": { 
    "lat": 29.5696577, 
    "lon": 77.3229933 
} 
} 

ようelasticsearch内のデータは、今私は場所フィールドにgeo_pointを設定したいしています。私はこのよう

{ 
"mappings": { 
"search_data": { 
    "properties": { 
    "main_array.location": { 
     "type": "geo_point" 
    } 
    } 
    } 
} 
} 

で試してみましたが、それはあなたが私を助けてくださいすることができ、私にエラー

"type": "mapper_parsing_exception", 
"reason": "Field name [main_array.location] cannot contain '.'" 

をスローします。おかげ

答えて

2

locationあなたはmain_arrayに格納するオブジェクトのプロパティですので、このようにしてみてください:ES 2.0 field names may not contain dots

+0

こんにちはヴァル、その作業罰金のようgeo_pointを設定すること

{ "mappings": { "search_data": { "properties": { "main_array": { "properties": { "location": { "type": "geo_point" } } } } } } } 

注意。おかげで多く –

+0

うまくいってうれしい! – Val

+0

valもう1つ質問がありますが、main_arrayでlatのlongデータが50km以内に存在することを確認できますか? –

関連する問題