我正在評估Mahout作爲協作過濾推薦引擎。到目前爲止它看起來很棒。 我們有來自12M不同用戶的近20M布爾推薦。 根據Mahout's wiki和Sean Owen的一些線程,在這種情況下,一臺機器應該足夠了。因此,我決定使用MySql作爲數據模型,並跳過現在使用Hadoop的開銷。使用Mahout進行連續協作過濾
但有一件事情讓我想起了什麼,在不從頭讀取整個數據的情況下不斷更新建議的最佳實踐是什麼?我們每天都有數以萬計的新建議。雖然我不希望它實時處理,但我希望每隔15分鐘左右處理一次。
請詳細說明基於Mysql和Hadoop的部署方法。 謝謝!
謝謝肖恩。我對Hadoop如何適合整體情況有點困惑。據我所知,它被用來預先計算相似性,從而使應用程序本身只根據選定的推薦器進行匹配。這是真的嗎? –
Hadoop不一定非要成爲其中的一部分。除非您被迫遇到規模問題,否則我不會使用Hadoop。是的,您可以將其用於部分流程,並脫機計算相似度。 –
肖恩,你是什麼意思「一次重新加載用戶」?我正在使用ReloadFromJDBCDataModel,但是當我調用reload()時,整個數據集都會重新加載。我知道重新加載我們要求推薦的用戶是有道理的,我怎麼能實現這一點? – arielcamus