導航:首頁 > 編程語言 > 統計詞頻java

統計詞頻java

發布時間:2024-07-17 02:01:29

『壹』 簡述Hadoop的MapRece與Googl的MapRecc 之間的關系

江湖傳說永流傳:谷歌技術有"三寶",GFS、MapRece和大表(BigTable)!

谷歌在03到06年間連續發表了三篇很有影響力的文章,分別是03年SOSP的GFS,04年OSDI的MapRece,和06年OSDI的BigTable。SOSP和OSDI都是操作系統領域的頂級會議,在計算機學會推薦會議里屬於A類。SOSP在單數年舉辦,而OSDI在雙數年舉辦。

那麼這篇博客就來介紹一下MapRece。

1. MapRece是幹啥的

因為沒找到谷歌的示意圖,所以我想借用一張Hadoop項目的結構圖來說明下MapRece所處的位置,如下圖。


這幅圖描述了MapRece如何處理詞頻統計。由於map worker數量不夠,首先處理了分片1、3、4,並產生中間鍵值對;當所有中間值都准備好了,Rece作業就開始讀取對應分區,並輸出統計結果。

6. 用戶的權利

用戶最主要的任務是實現map和rece介面,但還有一些有用的介面是向用戶開放的。

  • an input reader。這個函數會將輸入分為M個部分,並且定義了如何從數據中抽取最初的鍵值對,比如詞頻的例子中定義文件名和文件內容是鍵值對。

  • a partition function。這個函數用於將map函數產生的中間鍵值對映射到一個分區里去,最簡單的實現就是將鍵求哈希再對R取模。

  • a compare function。這個函數用於Rece作業排序,這個函數定義了鍵的大小關系。

  • an output writer。負責將結果寫入底層分布式文件系統。

  • a combiner function。實際就是rece函數,這是用於前面提到的優化的,比如統計詞頻時,如果每個<w, "1">要讀一次,因為rece和map通常不在一台機器,非常浪費時間,所以可以在map執行的地方先運行一次combiner,這樣rece只需要讀一次<w, "n">了。

  • map和rece函數就不多說了。

  • 7. MapRece的實現

    目前MapRece已經有多種實現,除了谷歌自己的實現外,還有著名的hadoop,區別是谷歌是c++,而hadoop是用java。另外斯坦福大學實現了一個在多核/多處理器、共享內存環境內運行的MapRece,稱為Phoenix(介紹),相關的論文發表在07年的HPCA,是當年的最佳論文哦!

    閱讀全文

    與統計詞頻java相關的資料

    熱點內容
    十字軍聖印審判命令聖印宏 瀏覽:308
    輕量雲伺服器有顯卡 瀏覽:144
    linux文件添加內容 瀏覽:223
    永恆之塔單機命令 瀏覽:216
    加密貨幣好轉嗎 瀏覽:768
    如何將手機上的app發給微信好友 瀏覽:491
    解壓文件無效 瀏覽:86
    用戶畫像數據建模演算法 瀏覽:848
    假睫毛濃密加密 瀏覽:784
    ppt教程pdf 瀏覽:112
    北京加密狗廠家 瀏覽:869
    大地超app怎麼更改個人信息 瀏覽:485
    excel自動被加密 瀏覽:180
    linux命令行分號 瀏覽:730
    linux命令執行文件 瀏覽:169
    模擬飛行解壓 瀏覽:339
    程序員必讀定律 瀏覽:660
    長沙保衛戰薛岳下命令是哪一集 瀏覽:416
    hp伺服器如何進iLO界面 瀏覽:142
    固定ip伺服器如何加防火牆 瀏覽:235