2012-01-12 52 views
8

好吧,我正在嘗試學習Hadoop和mapreduce。我真的想從mapreduce開始,我發現很多很多簡化的mappers和reducer的例子等等。但是,我發現我錯過了一些東西。雖然一個例子顯示文檔中出現了多少次單詞,但很容易理解,它並不能真正幫助我解決任何「現實世界」問題。有沒有人知道在逼真的情況下實現mapreduce的好教程。比方說,我想在類似於Adventureworks的數據存儲上使用hadoop和mapreduce。現在我想在五月份獲得給定產品的訂單。從hadoop/mapreduce的角度來看,這將如何? (我意識到這可能不是mapreduce打算解決的問題類型,但是,它只是想到了很快。)Mapreduce for dumbmies

任何方向都會有所幫助。

回答

13

該書Hadoop: The Definitive Guide是一個很好的開始。介紹性的章節應該對你非常有用,以確定MapReduce的用處以及何時使用它。更高級的章節比字數有更多更實際的例子。

如果您想深入探索,您可能需要查看Data-Intensive Text Processing with MapReduce。這肯定有很多「真實世界」用例,但聽起來你並不感興趣做文本處理。


爲了您的具體的例子,要實現的主要事情是:

  • map階段主要是爲解析,轉換數據,並過濾掉數據。考慮記錄,無共享的方法來記錄處理。在字數統計中,這是解析該行並分離出單詞。
  • 縮小階段全部是關於聚合:計數,平均,最小/最大等。在字數統計中,這是計數字的實例。

因此,如果您希望在5月的某個給定產品中使用所有記錄,則可以使用純地圖作業來過濾所有數據,並只保留所需的記錄。但是,您應該瞭解Hadoop的用途。更適合Hadoop的問題將會是:給我一個每月購買每件產品的次數(或許可以構建一個矩陣)。你很少正在尋找像你所建議的特定記錄。

如果您正在尋找一個更實時的訪問平臺,您應該在完成了解Hadoop的學習後檢查HBase

+0

傑出!非常感謝! – RockyMountainHigh 2012-01-12 19:58:20

+4

「我希望看到除字數外的更多示例」是新人們常見的問題,不幸的是,最好的解釋是印刷版。 – 2012-01-12 20:07:47

4

Hadoop可用於各種各樣的問題。從atbrox查看此博客條目。另外,互聯網上有很多關於Hadoop和MapReduce的信息,很容易迷路。因此,here是Hadoop上資源的綜合列表。

順便說一句,Hadoop - The Definitive Guide 3rd edition將於5月份到期。看起來它也包含MRv2(NextGen MapReduce),還包括更多的案例研究。第二版是值得的,由orangeoctopus提到。

+0

破損的鏈接.... – UpTheCreek 2012-07-30 18:51:11

+0

更新謝謝你 – 2012-07-31 00:45:20

0

MapReduce可能是一個複雜的主題,所以我發現通過將其方法應用於一個簡單的問題可以更容易地理解它。然後,我繼續介紹MapReduce如何使解決羣集中的相同問題變得簡單。你可以看看我的文章:Intro to Parallel Processing with MapReduce

讓我知道你是否認爲這篇文章能夠更容易理解MapReduce和Hadoop。