昨天終于hadoop的項目驗收完成了,終于可以松一口氣了,總體還是比較滿意的。
首先說一下項目流程,用mapreduce對數據進行預處理,然后用mahout中的聚類算法(kmeans)對數據進行處理,最后用peoplerank對數據進行處理。
根據老師交給我們的數據,包括Google+和Twitter的部分社交網絡數據。以下是兩個數據下載的鏈接
http://snap.stanford.edu/data/egonets-Gplus.html(Google+)
http://snap.stanford.edu/data/egonets-Twitter.html(Twitter)
這里面的Google的人數是大概是100000多,相互之間的映射關系(A->B,就是A關注B,或者A是B的好友)有20W+,Twitter的人數大概是80000多,相互之間的映射關系也有20W+。
對下面的圖片做一些解釋,橫坐標代表擁有好友的數量,縱坐標為擁有該好友數的用戶數。這樣的分布是符合網絡的無標度性。
我是在本地上實現分布式的,在我的機子上開啟了兩個虛擬機,和使用了其他兩個同學的電腦。
然后我們的性能是用ganglia進行檢測的,ganglia的安裝以及使用我已在之前的一篇博文中已經說過。
這只是其中一張性能分析的圖片,估計本地上配置除了問題,所以才導致,master做了所有的工作。
如果有想要程序的朋友,可以在下面留言,我會寫出全部的過程,和代碼。