0
MapReduce
プログラミング⼊入⾨門
「DevLOVE  ⻩黄⾊色い象使いが、獄⻑⾧長に出会うまで。」  
〜~象、邂逅編〜~  
2011-‐‑‒05-‐‑‒11
変更履歴
•2011/05/11
•新規作成。
•2011/09/20
•変更履歴を追加した。
•try-hadoop-mapreduce-javaへのリン
クを追加した。
•MapReduce入門へのリンクを追加した。
n3104
•能登 諭(のと さとし)
•Hadoop好きのJava使いです。
•twitter : @n3104
•株式会社トップゲート所属
最初に
このスライドは try-hadoop-mapreduce-
java のソースについて解説している。
http://code.google.com/p/try-hadoop-
mapreduce-java/
WordCount
•MapReduceの基本
•Mapとは
•Reduceとは
•Combinerとは
•旧APIと新API
MapReduceの基本
MapReduce入門参照
http://www.slideshare.net/n3104/
mapreduce-7587216
旧APIと新API
•0.20系から新APIが登場した。
•0.20系は移行途中で一部のAPIしか移行され
ていない。0.21系は移行済み。
•周辺プロダクトやEMRは0.20系、つまり旧
APIにか対応していない。
•現状は旧APIを使うのが...
AverageAgeOf
Employee
•MapReduceの仕組みを再確認。
•MapperとReducerの出力の型が異なる場
合は設定が必要になる。
•Writableについて
Writable
•Hadoopは独自のシリアライゼーションの仕
組みを持つ。
•象本の4章に詳しく載っている。
•無料ならひしだまさんのメモ参照。
•http://www.ne.jp/asahi/hishidama/home/tech/apa...
平均給与を求めてみましょう。
AverageAgeOf
Department
•Mapperの出力はkey毎にReducerでまと
められる。
•Reducerの処理自体は
AverageAgeOfEmployeeと同じ。key
の型が異なるだけ。
部門ごとの平均給与を
求めてみましょう。
SortByAgeUsing
HashPartitioner
•Mapperの出力がReducerの入力として渡
される際にkeyでソートされる。
•ソートには部分ソートと全体ソートがある。
•ソートの制御にはPartionerと
Writab...
給与でソートしてみましょう。
SortByAgeUsing
TotalOrderPartitioner
•全体ソートにはTotalOrder-Partitioner
を利用する。
•InputSamplerを利用して実データをサン
プリングする。
•サンプリングデータの配布...
SortByDeptAndAge
UsingSecondarySort
•複数のキーでソートするにはSecondary
Sortを利用する。
•SortByDeptAndAgeUsing-
Comparatorのように単一キーのソートで
も実現...
MergeByDepartment
UsingMultipleInputs
•ジョインには複数の種類のファイルが必要。
MultipleInputsを利用することで単一の
MapReduceジョブで複数の種類のファイル
を同時に処理できる。
JoinWithDeptName
UsingReduceSideJoin
•Reduce-Side Joinは以下の2つを利用す
る。
•MultipleInputs
•Secondary Sort
テストについて
•ユニットテスト
•Hadoop徹底入門ではMRUnit。
•象本ではMockitoを紹介。
•象本はLocalJobRunnerなど色々紹介。
•まだ確認できてません^^;
書籍について
•Hadoop徹底入門はHadoopの入門書とし
てとてもいい。
•象本はMapReduceプログラミングの入門
書としてとてもいい。
•実践的な内容だと「Data-Intensive Text
Processing with M...
これであなたも象使い(^^)
Upcoming SlideShare
Loading in...5
×

MapReduceプログラミング入門

7,653

Published on

0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
7,653
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
32
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide
  • \n
  • \n
  • 15分\n実際にプログラムを実行し、処理イメージもセットで説明。\n
  • \n
  • 10分\n実際にプログラムを実行し、処理イメージもセットで説明。\n
  • 10分\n実際にプログラムを実行し、処理イメージもセットで説明。\n
  • \n
  • 10分\n実際にプログラムを実行し、処理イメージもセットで説明。\n
  • \n
  • 10分\n実際にプログラムを実行し、処理イメージもセットで説明。\n
  • \n
  • 5分\nこの時点で1時間経過しているようであれば飛ばす\n
  • 15分\n\n
  • 5分\n\n
  • 15分\n\n
  • \n
  • \n\n
  • \n
  • Transcript of "MapReduceプログラミング入門"

    1. 1. MapReduce プログラミング⼊入⾨門 「DevLOVE  ⻩黄⾊色い象使いが、獄⻑⾧長に出会うまで。」   〜~象、邂逅編〜~   2011-‐‑‒05-‐‑‒11
    2. 2. 変更履歴 •2011/05/11 •新規作成。 •2011/09/20 •変更履歴を追加した。 •try-hadoop-mapreduce-javaへのリン クを追加した。 •MapReduce入門へのリンクを追加した。
    3. 3. n3104 •能登 諭(のと さとし) •Hadoop好きのJava使いです。 •twitter : @n3104 •株式会社トップゲート所属
    4. 4. 最初に このスライドは try-hadoop-mapreduce- java のソースについて解説している。 http://code.google.com/p/try-hadoop- mapreduce-java/
    5. 5. WordCount •MapReduceの基本 •Mapとは •Reduceとは •Combinerとは •旧APIと新API
    6. 6. MapReduceの基本 MapReduce入門参照 http://www.slideshare.net/n3104/ mapreduce-7587216
    7. 7. 旧APIと新API •0.20系から新APIが登場した。 •0.20系は移行途中で一部のAPIしか移行され ていない。0.21系は移行済み。 •周辺プロダクトやEMRは0.20系、つまり旧 APIにか対応していない。 •現状は旧APIを使うのが無難。
    8. 8. AverageAgeOf Employee •MapReduceの仕組みを再確認。 •MapperとReducerの出力の型が異なる場 合は設定が必要になる。 •Writableについて
    9. 9. Writable •Hadoopは独自のシリアライゼーションの仕 組みを持つ。 •象本の4章に詳しく載っている。 •無料ならひしだまさんのメモ参照。 •http://www.ne.jp/asahi/hishidama/home/tech/apache/ hadoop/Writable.html
    10. 10. 平均給与を求めてみましょう。
    11. 11. AverageAgeOf Department •Mapperの出力はkey毎にReducerでまと められる。 •Reducerの処理自体は AverageAgeOfEmployeeと同じ。key の型が異なるだけ。
    12. 12. 部門ごとの平均給与を 求めてみましょう。
    13. 13. SortByAgeUsing HashPartitioner •Mapperの出力がReducerの入力として渡 される際にkeyでソートされる。 •ソートには部分ソートと全体ソートがある。 •ソートの制御にはPartionerと WritableComparatorを利用する。
    14. 14. 給与でソートしてみましょう。
    15. 15. SortByAgeUsing TotalOrderPartitioner •全体ソートにはTotalOrder-Partitioner を利用する。 •InputSamplerを利用して実データをサン プリングする。 •サンプリングデータの配布には DistributedCacheを利用する。
    16. 16. SortByDeptAndAge UsingSecondarySort •複数のキーでソートするにはSecondary Sortを利用する。 •SortByDeptAndAgeUsing- Comparatorのように単一キーのソートで も実現可能。
    17. 17. MergeByDepartment UsingMultipleInputs •ジョインには複数の種類のファイルが必要。 MultipleInputsを利用することで単一の MapReduceジョブで複数の種類のファイル を同時に処理できる。
    18. 18. JoinWithDeptName UsingReduceSideJoin •Reduce-Side Joinは以下の2つを利用す る。 •MultipleInputs •Secondary Sort
    19. 19. テストについて •ユニットテスト •Hadoop徹底入門ではMRUnit。 •象本ではMockitoを紹介。 •象本はLocalJobRunnerなど色々紹介。 •まだ確認できてません^^;
    20. 20. 書籍について •Hadoop徹底入門はHadoopの入門書とし てとてもいい。 •象本はMapReduceプログラミングの入門 書としてとてもいい。 •実践的な内容だと「Data-Intensive Text Processing with MapReduce」?
    21. 21. これであなたも象使い(^^)
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×