Recommended
Hadoop -ResourceManager HAの仕組み-
今さら聞けないHadoop セントラルソフト株式会社(20120119)
Apache Hadoop HDFSの最新機能の紹介(2018)#dbts2018
実践機械学習 — MahoutとSolrを活用したレコメンデーションにおけるイノベーション - 2014/07/08 Hadoop Conference ...
FluentdやNorikraを使った データ集約基盤への取り組み紹介
MapR と Vertica エンジニアが語る、なぜその組み合わせが最高なのか? - db tech showcase 大阪 2014 2014/06/19
Amazon Redshift ベンチマーク Hadoop + Hiveと比較
トレジャーデータのバッチクエリとアドホッククエリを理解する
Hive on Spark の設計指針を読んでみた
Hadoopソースコードリーディング8/MapRを使ってみた
40分でわかるHadoop徹底入門 (Cloudera World Tokyo 2014 講演資料)
Apache Hadoop & Hive 入門 (マーケティングデータ分析基盤技術勉強会)
Hadoop Conference Japan 2009 #1
Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)
データサイズ2ペタ ソネット・メディア・ネットワークスでのImpala活用とHadoop運用
More Related Content
Hadoop -ResourceManager HAの仕組み-
今さら聞けないHadoop セントラルソフト株式会社(20120119)
What's hot (20) Apache Hadoop HDFSの最新機能の紹介(2018)#dbts2018
実践機械学習 — MahoutとSolrを活用したレコメンデーションにおけるイノベーション - 2014/07/08 Hadoop Conference ...
FluentdやNorikraを使った データ集約基盤への取り組み紹介
MapR と Vertica エンジニアが語る、なぜその組み合わせが最高なのか? - db tech showcase 大阪 2014 2014/06/19
Amazon Redshift ベンチマーク Hadoop + Hiveと比較
トレジャーデータのバッチクエリとアドホッククエリを理解する
Hive on Spark の設計指針を読んでみた
Hadoopソースコードリーディング8/MapRを使ってみた
40分でわかるHadoop徹底入門 (Cloudera World Tokyo 2014 講演資料)
Apache Hadoop & Hive 入門 (マーケティングデータ分析基盤技術勉強会)
Hadoop Conference Japan 2009 #1
Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)
データサイズ2ペタ ソネット・メディア・ネットワークスでのImpala活用とHadoop運用
Similar to VLDB2011勉強会 Research Session 18: MapReduce and Hadoop (20)
【17-E-3】Hadoop:黄色い象使いへの道 ~「Hadoop徹底入門」より~
AI・HPC・ビッグデータで利用される分散ファイルシステムを知る
並列分散処理基盤Hadoopの紹介と、開発者が語るHadoopの使いどころ (Silicon Valley x 日本 / Tech x Business ...
Data-Intensive Text Processing with MapReduce(Ch1,Ch2)
db tech showcase_2014_A14_Actian Vectorで得られる、BIにおける真のパフォーマンスとは
Introduction to Hadoop and Spark (before joining the other talk) and An Overv...
Hadoop, NoSQL, GlusterFSの概要
[db tech showcase Tokyo 2017] A15: レプリケーションを使用したデータ分析基盤構築のキモ(事例)by 株式会社インサイトテ...
[DDBJing31] 軽量仮想環境を用いてNGSデータの解析再現性を担保する
Hadoop基盤上のETL構築実践例 ~多様なデータをどう扱う?~
MapReduceによる大規模データを利用した機械学習
Map server入門 - FOSS4G 2012 Hokkaido
Apache Spark 1000 nodes NTT DATA
分散処理基盤Apache Hadoopの現状と、NTTデータのHadoopに対する取り組み
VLDB2011勉強会 Research Session 18: MapReduce and Hadoop1. 【VLDB2011勉強会】
Session 18: MapReduce and Hadoop
担当: 塩川浩昭(NTT)
1
2. 紹介する4本の論文
1. Column-Oriented Storage Techniques for MapReduce
Avrilia Floratou, Jignesh M. Patel(University of Wisconsin Madison), Eugene J.
Shekita, Sandeep Tata (IBM)
2. Automatic Optimization for MapReduce Program
Eaman Jahani, Michael J. Cafarella (University of Michigan), Christopher Re
(University of Wisconsin Madison)
3. CoHadoop: Flexible Data Placement and Its Exploitation in
Hadoop
Mohamed Y. Eltabakh, Yuanyuan Tian, Fatma Ozcan (IBM), Rainer Gemulla (Max
Planck Institut fur Informatik), Aljoscha Krettek, John McPherson (IBM)
4. Profiling, What-if Analysis, and Cost-based Optimization of
MapReduce Programs
Herodotos Herodotou, Shivnath Babu (Duke Uiversity)
2 Session 18: MapReduce and Hadoop 担当:塩川浩昭(NTT)
3. 1. Column-Oriented Storage Techniques for MapReduce
背景
MapReduceに対してparallel DBMSのテクニックを導入したい
Hadoopの実装に手を入れるのは大変なのでデータフォーマッ
トを変えるだけで対応したい
本論文の提案
複数のデータ型から構成されるデータスキーマのcolocationを維持しつ
つ,列ごとに1つのファイルとして保持するデータフォーマット
ColumnInputFormat(CIF)を実装,高速化
CIFとskip listを用いた不要なColumnのdeserialize削減による処理の高
速化
LZOとDictionary Compressed Skip Listを用いたデータ圧縮による処理
の高速化
3 Session 18: MapReduce and Hadoop 担当:塩川浩昭(NTT)
4. 1. Column-Oriented Storage Techniques for MapReduce
対象とする処理
複合的なデータ型を持つスキーマの処理
例)URLに”ibm.com/jp”を持つ際,metadataを出力
Mapper データスキーマ
処理
論文Figure1より引用 論文Figure2より引用
処理の高速化に必要なテクニック
データスキーマに含まれるデータを同じデータノードで保持(colocation)
Binary formatでのデータの管理,serialize/deserialize処理の削減
データの圧縮による読み込み/書き出しデータ量の削減
4 Session 18: MapReduce and Hadoop 担当:塩川浩昭(NTT)
5. 1. Column-Oriented Storage Techniques for MapReduce
ColumnInputFormat(CIF)の実装
Column毎に別ファイルとして管理することで,不要なColumnデータの
deserializeを回避可能にする
さらに,colocationのために,同じRowに属するColumnデータは同じデータ
ノードに配置する
論文Figure4より引用
(その他) 論文Figure3より引用
処理に不要なColumnのスキップを高速化するためにColumn毎にSkip List
を導入
ColumnデータはDictionary Compressed Skip Listにより圧縮
5 Session 18: MapReduce and Hadoop 担当:塩川浩昭(NTT)
6. 1. Column-Oriented Storage Techniques for MapReduce
データスキャン速度,処理速度の評価
CIFは必要なcolumnがcolocateされており,必要なデータのみ
をdeserializeするため,データの読み込みがRCFile(Hiveの
データフォーマット)よりも最大で38倍速い
MapReduceの処理時間はSEQに対して10~12倍速い
論文Table1より引用
論文Figure7より引用
6 Session 18: MapReduce and Hadoop 担当:塩川浩昭(NTT)
7. 2. Automatic Optimization for MapReduce Programs
概要
MapReduce処理はユーザがコーディングしたプログラムを実行する計
算モデルであるため,DBMSで培った問合せ最適化技術が適用できず
効率が悪い
MANIMALというプログラム自動解析システムにより,MapReduceの問
合せ最適化を実現し,1,121%の処理速度向上を実現
本論文の貢献
Selection, Projection, Join処理を対象にプログラムの修正を
必要としない最適化の実現
プログラムからSelection, Projection, Join処理を検出・抽出す
るアルゴリズムの提案
既存ベンチマークPavloに対して,MANIMALを導入し,11倍の
性能向上を実現
7 Session 18: MapReduce and Hadoop 担当:塩川浩昭(NTT)
8. 2. Automatic Optimization for MapReduce Programs
MANIMAL:システム概要
MapReduce処理を実行
論文Figure1より引用
Analyzer Optimizer
• コンパイラで利用されるプログラム解析 • Control flowと呼ばれる処理・状態のフローと,
ツールを使い,<処理の種類(selection, 各処理の処理対象データから,DAGを生成
projection, join),処理対象データ,処理 • 処理結果が正しく出力される範囲内で,DAG
条件>を抽出 の統合を行い,問合せ最適化を実施
• 抽出したデータに応じて,処理対象データの
indexを作成しておく
8 Session 18: MapReduce and Hadoop 担当:塩川浩昭(NTT)
9. 2. Automatic Optimization for MapReduce Programs
評価実験
ベンチマークPavloにおける最適化箇所の検出精度
検出失敗
論文Table1より引用
【原因】・ 通常は使用しないクラスを用いた実装がされていた.
・ 今回,未対応としたJava Hashtableが含まれていた
→(イレギュラーな場合を除き)最適化箇所の抽出に成功している
処理速度比較
論文Table2より引用 約3~11倍の高速化を実現
9 Session 18: MapReduce and Hadoop 担当:塩川浩昭(NTT)
10. 3. CoHadoop: Flexible Data Placement and Its
Exploitation in Hadoop
背景
HDFSはファイルをパーティションに分割し,更にパーティションを幾つかのブロッ
クに分割するため,処理の際に複数のデータノードへのアクセスが発生し処理
速度が低下する
CoHadoopでは(特にlog解析を対象に)処理に必要となるブロックを同じデータ
ノードで持つ(colocating)ことにより処理速度の向上を実現
本論文の貢献
関連するブロックをcolocatingする
軽量な手法をHDFSに実装
Colocatingを基にlog解析処理を実装し,
処理速度を向上
CoHadoopの障害回復,データの分散に
ついて検証
論文Figure3より引用
10 Session 18: MapReduce and Hadoop 担当:塩川浩昭(NTT)
11. 3. CoHadoop: Flexible Data Placement and Its
Exploitation in Hadoop
• 基本アイデア
Partitioning Colocating
HDFS上のファイルをkey順にソート 1つの処理に必要となるファイル集
し,一定のkeyレンジ毎にファイル分 合にそれぞれlocatorを割り当てる
割する
Locatorが同じファイルはベストエ
フォートで同じデータノードに配置
論文Figure2より引用 論文Figure1より引用
11 Session 18: MapReduce and Hadoop 担当:塩川浩昭(NTT)
12. 3. CoHadoop: Flexible Data Placement and Its
Exploitation in Hadoop
データロード時間と処理時間の評価
リモートからのデータロードがないためHadoop++よりも高速に読み込み
ParHadoopがローカルにかデータを配置しない一方で,CoHadoopはリ
モートにも配置するため,CoHadoopのロード時間がわずかに遅い
CoHadoopはデータが大きいほどデータの処理時間が相対的に速くな
る(RawHadoopよりも約93%減)
論文Figure4より引用 論文Figure5より引用
12 Session 18: MapReduce and Hadoop 担当:塩川浩昭(NTT)
13. 3. CoHadoop: Flexible Data Placement and Its
Exploitation in Hadoop
データ配置のばらつきとリカバリ時間の検証
CoHadoopは可能な限りcolocateするため,データノード毎に配置され
るデータ量にばらつきが生じる
しかしながら,障害発生時のリカバリ時間は最小となる
論文Figure7より引用 論文Figure8より引用
13 Session 18: MapReduce and Hadoop 担当:塩川浩昭(NTT)
14. 4. Profiling, What-if Analysis, and Cost-based
Optimization of MapReduce Programs
背景
MapReduce実行に必要なパラメータの数が膨大(190個以上)
MapReduceの性能はパラメータにより複雑に変化
Cost-based optimizationをMapReduceでも自動チューニングを
実現できるようにしたい
本論文の提案
Profiler, What-if Engine, Cost-based
Optimizer(CBO)の導入
Profiler: MapReduceのプログラムから
入力 動的に統計情報を取得
What-if Engine: パラメータ変更時の性能
入力 を推定
CBO: 最適なパラメータの探索
論文Figure2(a)より引用
14 Session 18: MapReduce and Hadoop 担当:塩川浩昭(NTT)
15. 4. Profiling, What-if Analysis, and Cost-based
Optimization of MapReduce Programs
Profiler:MapReduce処理に関する情報の抽出
1. 解析ツールBtraceを用いてMapReduceプログラムのbyte codeに対して
ECAルールのアクションを関連付ける
2. Map, Reduce処理をより詳細なフェーズに分解し,以下の4カテゴリにつ
いてキャプチャする
Dataflow fields: 各フェーズで処理されたバイト数,レコード数など
Cost fields: 各フェーズの処理時間,CPU使用量,I/Oコストなど
Dataflow Statics fields: Dataflow fieldsに関する統計(平均,合計など)
Cost Statics fields: Cost fieldsに関する統計(平均,合計など)
MapのSpill
Spill数減尐
処理の時間が
I/Oの低下
増加してる
論文Figure3より引用 論文Figure4より引用
15 Session 18: MapReduce and Hadoop 担当:塩川浩昭(NTT)
16. 4. Profiling, What-if Analysis, and Cost-based
Optimization of MapReduce Programs
論文Figure5より引用
16 Session 18: MapReduce and Hadoop 担当:塩川浩昭(NTT)