1. 程式人生 > >讀書筆記--MapReduce 適用場景 及 常見應用

讀書筆記--MapReduce 適用場景 及 常見應用

1、MR解決的問題的特點

MR是應大資料的背景產生,其解決的問題的共性為:大問題可以被分解為許多子問題,且這些子問題相對獨立,將這些子問題並行處理完後,大問題也就被解決。是用來分治、分解的思想。

2、Google論文中提及的典型應用:

URL訪問率統計,分散式grep,分散式排序,倒序索引構建,Web連線圖反轉等。

3、從書中看到的幾個比較複雜的應用:

(1)、TopK問題

問題:在搜尋引擎中,查出最近最熱門的K個查詢詞。

解決:將問題分解為兩個MR,統計詞頻(相當於wordcount)和找出詞頻最高的前K個查詢詞,第二個輸入依賴於第一個輸出。在第二部分,每個map找出自己的TopK,然後再reduce階段進行合併,找出最終的TopK。

(2)、K-means 聚類 (k均值)

(3)、貝葉斯分類

後兩個問題,我還沒有搞清楚怎麼實現,等我研究明白了,在po出來

4、MR難以解決的問題

(1)、斐波那契數列,由於演算法是遞迴實現的,下一個結果依賴於前面的結果,無法分解為獨立的子問題,所以不能mr

(2)、層次類聚

通過不斷的迭代,按距離來合併,要計算兩兩物件間的距離。

參考《hadoop技術內幕》

相關推薦

讀書筆記--MapReduce 適用場景 常見應用

1、MR解決的問題的特點 MR是應大資料的背景產生,其解決的問題的共性為:大問題可以被分解為許多子問題,且這些子問題相對獨立,將這些子問題並行處理完後,大問題也就被解決。是用來分治、分解的思想。 2、Google論文中提及的典型應用: URL訪問率統計,分散式grep,

筆記】DLX演算法常見應用

參考資料 精確覆蓋問題講解——grenet 數獨模型轉換——bl0ss0m DLX演算法求解數獨——grenet 問題引入 精確覆蓋問題: 有r個由1~n組成的集合S1,S2,S3....Sr,要求選擇若干集合,使得1~n恰好只在一個集合裡出現。 數獨問題: 在9×9的矩陣裡填數,使得每一行每

讀書筆記】推薦系統實踐-常見推薦演算法應用

《推薦系統實踐》系統性地介紹了推薦系統這一領域,思路清晰,詳細介紹了各個領域不同情景的推薦演算法的應用,是一本很好的推薦系統入門書,尤其第二第三章的講解比較細緻。(Ps:書中插入的python程式碼有點生硬,讀者可以直接忽略) 衡量推薦演算法的指標 使

筆記】DLX算法常見應用

get true -s 相關 結點 == 模板題 循環 恢復 參考資料 精確覆蓋問題講解——grenet 數獨模型轉換——bl0ss0m DLX算法求解數獨——grenet 問題引入 精確覆蓋

對JS閉包的理解常見應用場景

function showContent(content){ document.getElementById('info').innerHTML = content; }; function setContent(){ var infoArr = [

《黑客攻防技術寶典Web實戰篇@第2版》讀書筆記1:了解Web應用程序

金融 主機 border ket 邊界 輕量 在線 讀書 目的 讀書筆記第一部分對應原書的第一章,主要介紹了Web應用程序的發展,功能,安全狀況。 Web應用程序的發展歷程 早期的萬維網僅由Web站點構成,只是包含靜態文檔的信息庫,隨後人們發明了Web瀏覽器用來檢索和

箭頭函數適用場景需要註意的地方

event str ons print 函數嵌套 efi 副作用 狀態 沒有 箭頭函數適合於無復雜邏輯或者無副作用的純函數場景下,例如:用在 map、reduce、filter 的回調函數定義中 箭頭函數的亮點是簡潔,但在有多層函數嵌套的情況下,箭頭函數反而影響了函數的作

讀書筆記】Cronjob原理源碼分析

之前 jobs 所有 res net pes 垃圾回收gc ive 發現 原文鏈接:https://mp.weixin.qq.com/s?__biz=MzI0NjI4MDg5MQ==&mid=2715291842&idx=1&sn=e605f9b40

puma vs passenger vs rainbows! vs unicorn vs thin 適用場景 performance

ruby的幾個web server,按照開發活躍度、併發方案及要點、適用場景等分析puma vs passenger vs rainbows! vs unicorn vs thin。 1. thin: 長久未更新, 2. unicorn: 未測試。 3. opensource passenger or

NoSQL資料庫:Redis適用場景產品定位(轉)

原文轉自http://tech.it168.com/a2011/0818/1234/000001234403.shtml       傳統MySQL+ Memcached架構遇到的問題   實際MySQL是適合進行海量資料儲存的,通過Memcached將熱點資料載入到cac

常用資料結構與排序演算法實現、適用場景優缺點(Java)

1.下壓棧(後進先出)(能夠動態調整陣列大小的實現): package Chapter1_3Text; import java.util.Iterator; public class ResizingArrayStack<Item> implements

git 放棄本地修改強制更新& Git中分支merge和rebase的適用場景區別

本地有修改和提交,如果想放棄這些修改和提交 可以使用如下命令強制用遠端的庫更新: git fetch --all git reset --hard origin/master git fetch --all 只是下載遠端的庫的內容,不做任何的合併 git rese

01 . OpenResty簡介部署,優缺點,壓測,適用場景用Lua實現服務灰度釋出

#### 簡介 > OpenResty® 是一個基於 [Nginx](http://openresty.org/cn/nginx.html) 與 Lua 的高效能 Web 平臺,其內部集成了大量精良的 Lua 庫、第三方模組以及大多數的依賴項。用於方便地搭建能夠處理超高併發、擴充套件性極高的動態 Web 應

時間序列分析應用 R語言 讀書筆記 02

第二章 基本概念 Yt代表時間序列t時刻的值 自協方差函式γt,s γt,s=cov(Yt,Ys)=E[(Yt−μt)(Ys−μs)]=E(YtYs)−μtμs 自相關函式 ρt,s=corr(YtYs)=cov(YtYs)Var(Yt)Var(Ys)

嵌入式實時作業系統uc/os-ii 原理應用 讀書筆記

對任務就緒表的操作理解: 將優先級別為prio的任務置為就緒狀態,可使用如下程式碼 OSRdyGrp |= OSMapTbl[prio >>3];//將prio任務所在的組狀態置為1,表示該組有任務就緒。 OSRdyTbl[prio>>3] |= O

時間序列分析應用 R語言 讀書筆記 03

第三章 趨勢 Trends 3.1 隨機趨勢與確定性趨勢 上節中的隨機漫步序列(random walk)雖然呈現出來整體線性增長的趨勢,但是這是因為每個e的隨機取值造成的,如果重新生成一遍,其趨勢不一定還是這樣,所以,這樣的不確定的趨勢稱為隨機趨勢。 有些

rabbitmq系列(二)幾種常見模式的應用場景實現

一、簡單模式 原理:生產者將訊息交給預設的交換機,交換機獲取訊息後交給繫結這個生產者的佇列(投遞規則為佇列名稱和routing key 相同的佇列),監聽當前佇列的消費者獲取資訊並執行消費邏輯。 場景:有一個oa系統,使用者通過接收手機驗證碼進行註冊,頁面上點選獲取驗證碼後,將驗證碼放到訊息佇列,然後簡訊

《嵌入式系統可靠性設計技術案例解析》讀書筆記(七)

lcd 適合 實現 電源線 寬度 減少 狀態 面膜 平面 電磁兼容(Electro Magnetic Compatibility,EMC)是指設備或系統在電磁環境中運行時,不會因為其他設備的合理電磁幹擾而影響本機的功能和安全性,也不會對其環境中的任何設備產生不合理的電磁幹擾

python3學習筆記常見問題

packages 學習 chm iss error mission 版本 mod back 1,mac自帶的python是2.7版本,我們需要按照python3,這樣在terminal下可以直接使用,但是編譯打包的時候會默認使用python2.7 解決辦法:安裝virtua

《從0到1》讀書筆記第2章&quot;像1999 年那樣狂歡&quot;第1記:小結詞匯解析

content 高新 1.8 匯率 穩定 盈利模式 fun csdn 外匯 小結 本章的目的應該是通過90年代末的互聯網泡沫的背景,成因。影響,以及教訓來教誡人們,在全部人都瘋狂的拋身於洪流熱潮之中時,我們要冷靜的思考辨識出那些不切實際的大眾觀點,