Más contenido relacionado
La actualidad más candente (20)
Similar a マイニング探検会#10 (20)
マイニング探検会#10
- 3. なぜ「情報爆発」?
• データ発生源の増大
• ストレージ量の増大
• コンピュータへのニーズの変化
• 大規模データが処理できるインフラの普及
3
- 4. データ発生源の増大
• PCのブラウザ
• 携帯電話/スマートフォン
• 電子マネー/IC乗車券
• GPS
• センサーネットワーク
4
- 7. 大規模データ処理のインフラ普及
• Googleの社内システムとして開発
– Google File System (2003):
http://labs.google.com/papers/gfs.html
– MapReduce (2004):
http://labs.google.com/papers/mapreduce.html
• Hadoop: Googleのアイディアのオープンソー
ス実装
7
- 8. Hadoopとは何か?
A large-scale distributed batch processing
infrastracture
• Large-scale = Web規模のデータを扱える
• 1TBytes(1兆バイト)~1PBytes(1000兆バイト)
• Distributed = 分散型システム
• Batch = バッチ処理専用 (高速な処理)
• Infrastructure = インフラとしてのシステム
• つまり意識せずに使える
- 9. スケール・アップとスケール・アウト
価格 性能を上げようとすると スケール・アップ
価格が飛躍的に
上昇してしまう
スケール・アウト
1台のコンピュータ
この領域をうまく の性能
使いたい
- 12. スケール・アウトのボトルネック
分割されたデータを 台数を増やすほど処理
それぞれのサーバー は速くなるはずだが…
で処理する
処理結果データをそ 集められた処理結
れぞれのサーバー 果の集計処理を行
から集める い、集計結果を出力
巨大な入力データを
分割し、それぞれサー する
バーに配布する
入力 出力
・・
・
スケール・アウトの
必要に応じて繰り返す
ボトルネック
- 13. スケール・アウトのボトルネックを解消
するには?
3種類の処理を分散できるしくみが必要
1. 処理すべきデータの固まりを分担して扱うし
くみ
2. ばらばらの処理結果を集めて仕分けるしくみ
3. 仕分けられた結果を集計して出力するしくみ
- 14. 担当
ボトルネックの解消
入力 出力
ファイル ファイル
担当
担当
最初からデータを 仕分け先をマークごとに決めて まとめた結果データ
仕分け用の
それぞれのサーバに 振り分ける もそれぞれのサーバ
マーキング
ばらまいておく 仕分け先はできるだけ均等に が保持
- 15. Hadoopのボトルネック解消のしくみ
• 2つのシステムのコラボレーション
• 分散ファイルシステム
– HDFS (Hadoop Distributed File System)
– それぞれのサーバのハードディスクを束ねて、ひとつ
の巨大な仮想ディスクとして扱う
– 多重書き込み (cf. RAID0) → 耐障害性
• MapReduce
– map (分担する) → shuffle (仕分ける) → reduce (集計す
る)
– 分散バッチ処理をフレームワーク化
• プログラミングが必要なのは map と reduceのみ
– 仕分けのしくみはHadoopで用意されている
- 16. Hadoopがスケール・アウトする仕組み
データ本体を扱わないため、 マスタ-・サーバーはシステム
ボトルネックになりにくい 全体のデータの流れをコント
マスター・サーバー ロールする役割を果たす
(親分)
shuffle
仕分け作業のために、ス map, shuffle, reduceは
レーブ・サーバー同士が 必要に応じて繰り返す
データをやりとりする
スレーブ・サーバー reduce
map (子分) 仕分けられたデータを
それぞれのスレーブ・
分散ファイル・システムか サーバーが分担して
らそれぞれのスレーブ・ 集計し、処理結果を分
サーバーが入力データを 散ファイル・システム
読み込み、分担して処理 に書き出す
分散ファイル・システム(HDFS)
スレーブ・サーバーのハードディスクを束ねて構成
巨大な入力データを分 出力データを分散ファイ
散ファイル・システムに ル・システムから読み出
書き込む す
分散ファイル・システムへの読み書き性能、
計算処理性能ともに台数にほぼ比例する