我有大量的數據需要編入索引,並且花了超過10個小時才完成工作。有沒有辦法在hadoop上做到這一點?任何人都曾經這樣做過?非常感謝!在hadoop上運行solr索引
2
A
回答
3
您還沒有解釋10hr在哪裏?是否需要提取數據?或者它只是爲了索引數據。
如果您需要很長時間提取,那麼您可以使用hadoop。 Solr具有稱爲批量插入的功能。因此,在您的地圖功能中,您可以累積1000個記錄並一次提交索引以解決大量的記錄。這將優化您的性能。
您的數據是多大?
您可以在map/reduce作業的reduce函數中收集大量記錄。您必須在地圖中生成適當的密鑰,以便大量記錄進入單個縮減功能。在您的自定義reduce類中,根據您的hadoop版本初始化setup/configure方法中的solr對象,然後在清理方法中關閉它。您將不得不創建一個文檔集合對象(在solrNet或solrj中)並將它們全部提交到一個單發。
如果您使用的是hadoop,還有其他選項katta。你也可以查看它。
0
你可以在你的hadoop集羣上編寫一個map reduce作業,它只需要記錄每條記錄並將它發送到索引上的solr進行索引。 Afaik solr目前沒有對機器集羣進行索引,因此如果您想要將索引也分佈在多個節點上,則需要查看彈性搜索。
0
有一個SOLR hadoop輸出格式,它在每個reducer中創建一個新的索引 - 所以你根據你想要的索引分散你的密鑰,然後在事實之後將hdfs文件複製到你的SOLR實例中。
http://www.datasalt.com/2011/10/front-end-view-generation-with-hadoop/
相關問題
- 1. 在Google應用引擎上運行hadoop?
- 2. 在hadoop上運行lucene搜索出錯
- 3. 在Hadoop上運行Lucene/Solr的最佳方式是什麼?
- 4. 如何使用Hadoop MapReduce程序對HBase表進行Solr索引?
- 5. Solr配置Woes - solr運行但不索引
- 6. 在hadoop上運行字數
- 7. 在tomcat上運行Solr
- 8. 在Azure上運行Solr
- 9. Solr重新索引行爲
- 10. 在Hadoop作業中調用Solr雲索引時出錯
- 11. Tika和Solr Drupal 7在Cron上索引
- 12. Solr在多個附件上索引
- 13. 搜索Solr上的DIH索引數據
- 14. Solr不索引
- 15. Ajax搜索未在引號上運行
- 16. java.lang.NoClassDefFoundError:上運行Hadoop集羣
- 17. 在Solr中索引空值
- 18. 在Apache Solr中索引MySQL
- 19. Solr的HTTPS上運行 -
- 20. 將Solr索引同步到Hadoop友好格式
- 21. Hadoop WordCount示例 - 在Hadoop(Eclipse)上運行選項不提示選擇Hadoop服務器在窗口上運行
- 22. 使用Hadoop索引
- 23. Solr索引時間
- 24. 清除Solr索引
- 25. Solr的索引ñ
- 26. Solr索引分析
- 27. Solr,多個索引
- 28. Solr索引問題
- 29. Solr索引過長
- 30. Apache Solr索引Bechmarking
類似的(你把你的數據到Hadoop的後把它歸結爲同樣的問題):http://stackoverflow.com/questions/11548357/searching-over-documents-stored-in-hadoop-哪些工具可以使用 – 2012-07-23 23:57:45