2016-11-29 70 views
0

我嘗試上傳ES中緯度和經度字段的RDD。我想使用geo_point類型在地圖上繪製它們。我試圖爲每個文檔創建一個「位置」字段,其中包含像「12.25,-5.2」這樣的字符串或經緯度/長度爲兩個雙精度的數組,但ES不會將它們檢測爲geo_point。插入數據之前,索引不存在。從Spark中彈性搜索中插入地理數據

我該如何告訴ES該位置是geo_point?

與elasticsearch-hadoop的LIB當前代碼來存儲:

myRDD.saveToEs(indexName, someConf) 

myRDD含有一個 「位置」 的RDD [地圖] - > [雙,雙]

someConf包含「es.index.auto.create」 - > 「真」

+0

你應該添加映射在你走之前適合你的索引,在這種情況下索引自動創建不是一個好主意 – innovatism

+0

我該怎麼做? – Benjamin

+0

不知道你是什麼樣的索引,但你應該把這樣的:PUT my_index { 「映射」:{ 「my_type」:{ 「屬性」:{ 「位置」:{ 「類型」:「 geo_point」 }} } } } 是 – innovatism

回答

0

A工作液在意見提出:

  1. HTTP PUT來創建一個映射只有這一特定領域
  2. 插入RDD指數正常

如果插入數據之前,它是爲時已晚

相關問題