2016-02-19 4 views
0

Я пытаюсь сделать запрос $ near с MongoDB, используя Spark и mongo-hadoop с измененными координатами lat/lon. Как я могу выполнить запрос с mongo-hadoop?Spark: Mongo-Hadoop как запросить

Помимо somethnig как:

mongodbConfig.set("mongo.input.query", "{'field':'value'}") Я не вижу ничего со смыслом.

любая идея?

+0

Последний раз я проверил это было единственным общественным выбор и не особенно хорошо. Также он должен быть строгим JSON. – zero323

+0

Да, у меня создается впечатление, что использование MongoDB с Spark - это своего рода катастрофа. Идеал будет работать для геокрес в памяти, создавая индексы geohash и т. Д. Я попытался использовать lucene/spaces4j в памяти, что дало мне точные результаты mongodb, но это было намного медленнее, чем Mongoldb. Во всяком случае, миллионный запрос в памяти, возможно, Mongodb не будет масштабировать это хорошо, и решение Lucene победит. Еще одна вещь, которую я пробовал - это создание QuadTree с ESRI всегда в памяти, но у меня нет времени проверить качество результатов на данный момент. – Randomize

+0

[Magellan] (https://github.com/harsha2010/magellan)? – zero323

ответ

0

Я предлагаю вы можете увидеть com.mongodb.hadoop.util.MongoConfigUtil, есть много настроек запроса конфигурации:

mongodbConfig.set("mongo.input.query","{key:{\"$eq\":20160517080039}}"); 
mongodbConfig.set("mongo.input.fields","{key:0}"); 
mongodbConfig.setInt("mongo.input.limit", 1); 
+0

Используйте правильное форматирование –

Смежные вопросы