Mahout駕馭hadoop之詳解

來源:互聯網
上載者:User

 

            眾所周知,Mahout是基於Hadoop分布式系統的,要想看懂Mahout的源碼,首先得明白mahout是如何使用hadoop的!

            首先,在我的<<Hadoop運行原理詳解>>一篇中,詳細介紹了hadoop的運行機制,這裡就不多說了!下面我就以Kmeans聚類演算法為例,講講mahout如何利用hadoop實現資料採礦演算法並行化.如以下類圖所示,

 

 

該圖描述了整個mahout實現Kmeans演算法的架構圖,首先KmeansCluster繼承Cluster,在KmeansCluster中有幾個比較重要的方法,首先clusterPoints()是實現Kmeans聚類演算法的方法,而其中調用了runKMeansIteration()方法,該方法是單次聚類迭代方法.

 尤其可見,這塊演算法實現和普通kmeans演算法沒有太大差別!在Mahout針對每個演算法都有一個Driver,這個東西是幹什麼的啊?

 我們先看看KMeansDriver源碼,KmeansDriver繼承了AbstractJob.我們知道Hadoop上的任務都是以Job的形式啟動的!我們要使用某個演算法進行一項資料採礦工作,因此就要啟動一個Job.因此,KmeansDriver就是建立一個Job,然後對Job的屬性進行配置,然後運行該Job.

反映了KMeansDriver工作原理.

 

  

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.