SlideShare uma empresa Scribd logo
1 de 16
【VLDB2011勉強会】


    Session 18: MapReduce and Hadoop


                      担当: 塩川浩昭(NTT)



1
紹介する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)
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)
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)
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)
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)
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)
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)
2. Automatic Optimization for MapReduce Programs
       評価実験
           ベンチマークPavloにおける最適化箇所の検出精度

                                                             検出失敗

                          論文Table1より引用
              【原因】・ 通常は使用しないクラスを用いた実装がされていた.
                  ・ 今回,未対応としたJava Hashtableが含まれていた

             →(イレギュラーな場合を除き)最適化箇所の抽出に成功している
           処理速度比較




                            論文Table2より引用        約3~11倍の高速化を実現
    9        Session 18: MapReduce and Hadoop 担当:塩川浩昭(NTT)
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)
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)
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)
3. CoHadoop: Flexible Data Placement and Its
Exploitation in Hadoop
    データ配置のばらつきとリカバリ時間の検証
        CoHadoopは可能な限りcolocateするため,データノード毎に配置され
         るデータ量にばらつきが生じる
        しかしながら,障害発生時のリカバリ時間は最小となる




             論文Figure7より引用                    論文Figure8より引用



    13     Session 18: MapReduce and Hadoop 担当:塩川浩昭(NTT)
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)
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)
4. Profiling, What-if Analysis, and Cost-based
Optimization of MapReduce Programs





                                            論文Figure5より引用




    16   Session 18: MapReduce and Hadoop 担当:塩川浩昭(NTT)

Mais conteúdo relacionado

Mais procurados

Hadoopによる大規模分散データ処理
Hadoopによる大規模分散データ処理Hadoopによる大規模分散データ処理
Hadoopによる大規模分散データ処理Yoji Kiyota
 
実践機械学習 — MahoutとSolrを活用したレコメンデーションにおけるイノベーション - 2014/07/08 Hadoop Conference ...
実践機械学習 — MahoutとSolrを活用したレコメンデーションにおけるイノベーション - 2014/07/08 Hadoop Conference ...実践機械学習 — MahoutとSolrを活用したレコメンデーションにおけるイノベーション - 2014/07/08 Hadoop Conference ...
実践機械学習 — MahoutとSolrを活用したレコメンデーションにおけるイノベーション - 2014/07/08 Hadoop Conference ...MapR Technologies Japan
 
FluentdやNorikraを使った データ集約基盤への取り組み紹介
FluentdやNorikraを使った データ集約基盤への取り組み紹介FluentdやNorikraを使った データ集約基盤への取り組み紹介
FluentdやNorikraを使った データ集約基盤への取り組み紹介Recruit Technologies
 
MapR と Vertica エンジニアが語る、なぜその組み合わせが最高なのか? - db tech showcase 大阪 2014 2014/06/19
MapR と Vertica エンジニアが語る、なぜその組み合わせが最高なのか? - db tech showcase 大阪 2014 2014/06/19MapR と Vertica エンジニアが語る、なぜその組み合わせが最高なのか? - db tech showcase 大阪 2014 2014/06/19
MapR と Vertica エンジニアが語る、なぜその組み合わせが最高なのか? - db tech showcase 大阪 2014 2014/06/19MapR Technologies Japan
 
Amazon Redshift ベンチマーク Hadoop + Hiveと比較
Amazon Redshift ベンチマーク  Hadoop + Hiveと比較 Amazon Redshift ベンチマーク  Hadoop + Hiveと比較
Amazon Redshift ベンチマーク Hadoop + Hiveと比較 FlyData Inc.
 
Hadoopことはじめ
HadoopことはじめHadoopことはじめ
Hadoopことはじめ均 津田
 
マイニング探検会#10
マイニング探検会#10マイニング探検会#10
マイニング探検会#10Yoji Kiyota
 
トレジャーデータのバッチクエリとアドホッククエリを理解する
トレジャーデータのバッチクエリとアドホッククエリを理解するトレジャーデータのバッチクエリとアドホッククエリを理解する
トレジャーデータのバッチクエリとアドホッククエリを理解するTakahiro Inoue
 
Hive on Spark の設計指針を読んでみた
Hive on Spark の設計指針を読んでみたHive on Spark の設計指針を読んでみた
Hive on Spark の設計指針を読んでみたRecruit Technologies
 
Hadoopソースコードリーディング8/MapRを使ってみた
Hadoopソースコードリーディング8/MapRを使ってみたHadoopソースコードリーディング8/MapRを使ってみた
Hadoopソースコードリーディング8/MapRを使ってみたRecruit Technologies
 
40分でわかるHadoop徹底入門 (Cloudera World Tokyo 2014 講演資料)
40分でわかるHadoop徹底入門 (Cloudera World Tokyo 2014 講演資料) 40分でわかるHadoop徹底入門 (Cloudera World Tokyo 2014 講演資料)
40分でわかるHadoop徹底入門 (Cloudera World Tokyo 2014 講演資料) hamaken
 
Hadoopのシステム設計・運用のポイント
Hadoopのシステム設計・運用のポイントHadoopのシステム設計・運用のポイント
Hadoopのシステム設計・運用のポイントCloudera Japan
 
Apache Hadoop & Hive 入門 (マーケティングデータ分析基盤技術勉強会)
Apache Hadoop & Hive 入門 (マーケティングデータ分析基盤技術勉強会)Apache Hadoop & Hive 入門 (マーケティングデータ分析基盤技術勉強会)
Apache Hadoop & Hive 入門 (マーケティングデータ分析基盤技術勉強会)Takeshi Mikami
 
Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)
Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)
Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)Hadoop / Spark Conference Japan
 
データサイズ2ペタ ソネット・メディア・ネットワークスでのImpala活用とHadoop運用
データサイズ2ペタ ソネット・メディア・ネットワークスでのImpala活用とHadoop運用データサイズ2ペタ ソネット・メディア・ネットワークスでのImpala活用とHadoop運用
データサイズ2ペタ ソネット・メディア・ネットワークスでのImpala活用とHadoop運用Yoshikazu Suganuma
 

Mais procurados (20)

Apache Hadoop HDFSの最新機能の紹介(2018)#dbts2018
Apache Hadoop HDFSの最新機能の紹介(2018)#dbts2018Apache Hadoop HDFSの最新機能の紹介(2018)#dbts2018
Apache Hadoop HDFSの最新機能の紹介(2018)#dbts2018
 
Hadoopによる大規模分散データ処理
Hadoopによる大規模分散データ処理Hadoopによる大規模分散データ処理
Hadoopによる大規模分散データ処理
 
実践機械学習 — MahoutとSolrを活用したレコメンデーションにおけるイノベーション - 2014/07/08 Hadoop Conference ...
実践機械学習 — MahoutとSolrを活用したレコメンデーションにおけるイノベーション - 2014/07/08 Hadoop Conference ...実践機械学習 — MahoutとSolrを活用したレコメンデーションにおけるイノベーション - 2014/07/08 Hadoop Conference ...
実践機械学習 — MahoutとSolrを活用したレコメンデーションにおけるイノベーション - 2014/07/08 Hadoop Conference ...
 
MapReduce解説
MapReduce解説MapReduce解説
MapReduce解説
 
FluentdやNorikraを使った データ集約基盤への取り組み紹介
FluentdやNorikraを使った データ集約基盤への取り組み紹介FluentdやNorikraを使った データ集約基盤への取り組み紹介
FluentdやNorikraを使った データ集約基盤への取り組み紹介
 
MapR と Vertica エンジニアが語る、なぜその組み合わせが最高なのか? - db tech showcase 大阪 2014 2014/06/19
MapR と Vertica エンジニアが語る、なぜその組み合わせが最高なのか? - db tech showcase 大阪 2014 2014/06/19MapR と Vertica エンジニアが語る、なぜその組み合わせが最高なのか? - db tech showcase 大阪 2014 2014/06/19
MapR と Vertica エンジニアが語る、なぜその組み合わせが最高なのか? - db tech showcase 大阪 2014 2014/06/19
 
Amazon Redshift ベンチマーク Hadoop + Hiveと比較
Amazon Redshift ベンチマーク  Hadoop + Hiveと比較 Amazon Redshift ベンチマーク  Hadoop + Hiveと比較
Amazon Redshift ベンチマーク Hadoop + Hiveと比較
 
Hadoopことはじめ
HadoopことはじめHadoopことはじめ
Hadoopことはじめ
 
マイニング探検会#10
マイニング探検会#10マイニング探検会#10
マイニング探検会#10
 
トレジャーデータのバッチクエリとアドホッククエリを理解する
トレジャーデータのバッチクエリとアドホッククエリを理解するトレジャーデータのバッチクエリとアドホッククエリを理解する
トレジャーデータのバッチクエリとアドホッククエリを理解する
 
Hive on Spark の設計指針を読んでみた
Hive on Spark の設計指針を読んでみたHive on Spark の設計指針を読んでみた
Hive on Spark の設計指針を読んでみた
 
Hadoop事始め
Hadoop事始めHadoop事始め
Hadoop事始め
 
SASとHadoopとの連携
SASとHadoopとの連携SASとHadoopとの連携
SASとHadoopとの連携
 
Hadoopソースコードリーディング8/MapRを使ってみた
Hadoopソースコードリーディング8/MapRを使ってみたHadoopソースコードリーディング8/MapRを使ってみた
Hadoopソースコードリーディング8/MapRを使ってみた
 
40分でわかるHadoop徹底入門 (Cloudera World Tokyo 2014 講演資料)
40分でわかるHadoop徹底入門 (Cloudera World Tokyo 2014 講演資料) 40分でわかるHadoop徹底入門 (Cloudera World Tokyo 2014 講演資料)
40分でわかるHadoop徹底入門 (Cloudera World Tokyo 2014 講演資料)
 
Hadoopのシステム設計・運用のポイント
Hadoopのシステム設計・運用のポイントHadoopのシステム設計・運用のポイント
Hadoopのシステム設計・運用のポイント
 
Apache Hadoop & Hive 入門 (マーケティングデータ分析基盤技術勉強会)
Apache Hadoop & Hive 入門 (マーケティングデータ分析基盤技術勉強会)Apache Hadoop & Hive 入門 (マーケティングデータ分析基盤技術勉強会)
Apache Hadoop & Hive 入門 (マーケティングデータ分析基盤技術勉強会)
 
Hadoop Conference Japan 2009 #1
Hadoop Conference Japan 2009 #1Hadoop Conference Japan 2009 #1
Hadoop Conference Japan 2009 #1
 
Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)
Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)
Sparkによる GISデータを題材とした時系列データ処理 (Hadoop / Spark Conference Japan 2016 講演資料)
 
データサイズ2ペタ ソネット・メディア・ネットワークスでのImpala活用とHadoop運用
データサイズ2ペタ ソネット・メディア・ネットワークスでのImpala活用とHadoop運用データサイズ2ペタ ソネット・メディア・ネットワークスでのImpala活用とHadoop運用
データサイズ2ペタ ソネット・メディア・ネットワークスでのImpala活用とHadoop運用
 

Semelhante a VLDB2011勉強会 Research Session 18: MapReduce and Hadoop

Googleの基盤クローン Hadoopについて
Googleの基盤クローン HadoopについてGoogleの基盤クローン Hadoopについて
Googleの基盤クローン HadoopについてKazuki Ohta
 
SIGMOD'10勉強会 -Session 8-
SIGMOD'10勉強会 -Session 8-SIGMOD'10勉強会 -Session 8-
SIGMOD'10勉強会 -Session 8-Takeshi Yamamuro
 
【17-E-3】Hadoop:黄色い象使いへの道 ~「Hadoop徹底入門」より~
【17-E-3】Hadoop:黄色い象使いへの道 ~「Hadoop徹底入門」より~【17-E-3】Hadoop:黄色い象使いへの道 ~「Hadoop徹底入門」より~
【17-E-3】Hadoop:黄色い象使いへの道 ~「Hadoop徹底入門」より~Developers Summit
 
ビッグデータ活用支援フォーラム
ビッグデータ活用支援フォーラムビッグデータ活用支援フォーラム
ビッグデータ活用支援フォーラムRecruit Technologies
 
並列分散処理基盤Hadoopの紹介と、開発者が語るHadoopの使いどころ (Silicon Valley x 日本 / Tech x Business ...
並列分散処理基盤Hadoopの紹介と、開発者が語るHadoopの使いどころ (Silicon Valley x 日本 / Tech x Business ...並列分散処理基盤Hadoopの紹介と、開発者が語るHadoopの使いどころ (Silicon Valley x 日本 / Tech x Business ...
並列分散処理基盤Hadoopの紹介と、開発者が語るHadoopの使いどころ (Silicon Valley x 日本 / Tech x Business ...NTT DATA OSS Professional Services
 
Data-Intensive Text Processing with MapReduce(Ch1,Ch2)
Data-Intensive Text Processing with MapReduce(Ch1,Ch2)Data-Intensive Text Processing with MapReduce(Ch1,Ch2)
Data-Intensive Text Processing with MapReduce(Ch1,Ch2)Sho Shimauchi
 
db tech showcase_2014_A14_Actian Vectorで得られる、BIにおける真のパフォーマンスとは
db tech showcase_2014_A14_Actian Vectorで得られる、BIにおける真のパフォーマンスとはdb tech showcase_2014_A14_Actian Vectorで得られる、BIにおける真のパフォーマンスとは
db tech showcase_2014_A14_Actian Vectorで得られる、BIにおける真のパフォーマンスとはKoji Shinkubo
 
Hadoopの紹介
Hadoopの紹介Hadoopの紹介
Hadoopの紹介bigt23
 
Introduction to Hadoop and Spark (before joining the other talk) and An Overv...
Introduction to Hadoop and Spark (before joining the other talk) and An Overv...Introduction to Hadoop and Spark (before joining the other talk) and An Overv...
Introduction to Hadoop and Spark (before joining the other talk) and An Overv...DataWorks Summit/Hadoop Summit
 
[db tech showcase Tokyo 2017] A15: レプリケーションを使用したデータ分析基盤構築のキモ(事例)by 株式会社インサイトテ...
[db tech showcase Tokyo 2017] A15: レプリケーションを使用したデータ分析基盤構築のキモ(事例)by 株式会社インサイトテ...[db tech showcase Tokyo 2017] A15: レプリケーションを使用したデータ分析基盤構築のキモ(事例)by 株式会社インサイトテ...
[db tech showcase Tokyo 2017] A15: レプリケーションを使用したデータ分析基盤構築のキモ(事例)by 株式会社インサイトテ...Insight Technology, Inc.
 
[DDBJing31] 軽量仮想環境を用いてNGSデータの解析再現性を担保する
[DDBJing31] 軽量仮想環境を用いてNGSデータの解析再現性を担保する[DDBJing31] 軽量仮想環境を用いてNGSデータの解析再現性を担保する
[DDBJing31] 軽量仮想環境を用いてNGSデータの解析再現性を担保するDNA Data Bank of Japan center
 
Hadoop基盤上のETL構築実践例 ~多様なデータをどう扱う?~
Hadoop基盤上のETL構築実践例 ~多様なデータをどう扱う?~Hadoop基盤上のETL構築実践例 ~多様なデータをどう扱う?~
Hadoop基盤上のETL構築実践例 ~多様なデータをどう扱う?~Sotaro Kimura
 
MapReduceによる大規模データを利用した機械学習
MapReduceによる大規模データを利用した機械学習MapReduceによる大規模データを利用した機械学習
MapReduceによる大規模データを利用した機械学習Preferred Networks
 
IPDPS & HPDC 報告
IPDPS & HPDC 報告IPDPS & HPDC 報告
IPDPS & HPDC 報告Junya Arai
 
Map server入門 - FOSS4G 2012 Hokkaido
Map server入門 - FOSS4G 2012 HokkaidoMap server入門 - FOSS4G 2012 Hokkaido
Map server入門 - FOSS4G 2012 HokkaidoHideo Harada
 
分散処理基盤Apache Hadoopの現状と、NTTデータのHadoopに対する取り組み
分散処理基盤Apache Hadoopの現状と、NTTデータのHadoopに対する取り組み分散処理基盤Apache Hadoopの現状と、NTTデータのHadoopに対する取り組み
分散処理基盤Apache Hadoopの現状と、NTTデータのHadoopに対する取り組みNTT DATA OSS Professional Services
 

Semelhante a VLDB2011勉強会 Research Session 18: MapReduce and Hadoop (20)

Googleの基盤クローン Hadoopについて
Googleの基盤クローン HadoopについてGoogleの基盤クローン Hadoopについて
Googleの基盤クローン Hadoopについて
 
SIGMOD'10勉強会 -Session 8-
SIGMOD'10勉強会 -Session 8-SIGMOD'10勉強会 -Session 8-
SIGMOD'10勉強会 -Session 8-
 
【17-E-3】Hadoop:黄色い象使いへの道 ~「Hadoop徹底入門」より~
【17-E-3】Hadoop:黄色い象使いへの道 ~「Hadoop徹底入門」より~【17-E-3】Hadoop:黄色い象使いへの道 ~「Hadoop徹底入門」より~
【17-E-3】Hadoop:黄色い象使いへの道 ~「Hadoop徹底入門」より~
 
AI・HPC・ビッグデータで利用される分散ファイルシステムを知る
AI・HPC・ビッグデータで利用される分散ファイルシステムを知るAI・HPC・ビッグデータで利用される分散ファイルシステムを知る
AI・HPC・ビッグデータで利用される分散ファイルシステムを知る
 
ビッグデータ活用支援フォーラム
ビッグデータ活用支援フォーラムビッグデータ活用支援フォーラム
ビッグデータ活用支援フォーラム
 
並列分散処理基盤Hadoopの紹介と、開発者が語るHadoopの使いどころ (Silicon Valley x 日本 / Tech x Business ...
並列分散処理基盤Hadoopの紹介と、開発者が語るHadoopの使いどころ (Silicon Valley x 日本 / Tech x Business ...並列分散処理基盤Hadoopの紹介と、開発者が語るHadoopの使いどころ (Silicon Valley x 日本 / Tech x Business ...
並列分散処理基盤Hadoopの紹介と、開発者が語るHadoopの使いどころ (Silicon Valley x 日本 / Tech x Business ...
 
Data-Intensive Text Processing with MapReduce(Ch1,Ch2)
Data-Intensive Text Processing with MapReduce(Ch1,Ch2)Data-Intensive Text Processing with MapReduce(Ch1,Ch2)
Data-Intensive Text Processing with MapReduce(Ch1,Ch2)
 
MapReduce/YARNの仕組みを知る
MapReduce/YARNの仕組みを知るMapReduce/YARNの仕組みを知る
MapReduce/YARNの仕組みを知る
 
db tech showcase_2014_A14_Actian Vectorで得られる、BIにおける真のパフォーマンスとは
db tech showcase_2014_A14_Actian Vectorで得られる、BIにおける真のパフォーマンスとはdb tech showcase_2014_A14_Actian Vectorで得られる、BIにおける真のパフォーマンスとは
db tech showcase_2014_A14_Actian Vectorで得られる、BIにおける真のパフォーマンスとは
 
Hadoopの紹介
Hadoopの紹介Hadoopの紹介
Hadoopの紹介
 
Introduction to Hadoop and Spark (before joining the other talk) and An Overv...
Introduction to Hadoop and Spark (before joining the other talk) and An Overv...Introduction to Hadoop and Spark (before joining the other talk) and An Overv...
Introduction to Hadoop and Spark (before joining the other talk) and An Overv...
 
Hadoop, NoSQL, GlusterFSの概要
Hadoop, NoSQL, GlusterFSの概要Hadoop, NoSQL, GlusterFSの概要
Hadoop, NoSQL, GlusterFSの概要
 
[db tech showcase Tokyo 2017] A15: レプリケーションを使用したデータ分析基盤構築のキモ(事例)by 株式会社インサイトテ...
[db tech showcase Tokyo 2017] A15: レプリケーションを使用したデータ分析基盤構築のキモ(事例)by 株式会社インサイトテ...[db tech showcase Tokyo 2017] A15: レプリケーションを使用したデータ分析基盤構築のキモ(事例)by 株式会社インサイトテ...
[db tech showcase Tokyo 2017] A15: レプリケーションを使用したデータ分析基盤構築のキモ(事例)by 株式会社インサイトテ...
 
[DDBJing31] 軽量仮想環境を用いてNGSデータの解析再現性を担保する
[DDBJing31] 軽量仮想環境を用いてNGSデータの解析再現性を担保する[DDBJing31] 軽量仮想環境を用いてNGSデータの解析再現性を担保する
[DDBJing31] 軽量仮想環境を用いてNGSデータの解析再現性を担保する
 
Hadoop基盤上のETL構築実践例 ~多様なデータをどう扱う?~
Hadoop基盤上のETL構築実践例 ~多様なデータをどう扱う?~Hadoop基盤上のETL構築実践例 ~多様なデータをどう扱う?~
Hadoop基盤上のETL構築実践例 ~多様なデータをどう扱う?~
 
MapReduceによる大規模データを利用した機械学習
MapReduceによる大規模データを利用した機械学習MapReduceによる大規模データを利用した機械学習
MapReduceによる大規模データを利用した機械学習
 
IPDPS & HPDC 報告
IPDPS & HPDC 報告IPDPS & HPDC 報告
IPDPS & HPDC 報告
 
Map server入門 - FOSS4G 2012 Hokkaido
Map server入門 - FOSS4G 2012 HokkaidoMap server入門 - FOSS4G 2012 Hokkaido
Map server入門 - FOSS4G 2012 Hokkaido
 
Apache Spark 1000 nodes NTT DATA
Apache Spark 1000 nodes NTT DATAApache Spark 1000 nodes NTT DATA
Apache Spark 1000 nodes NTT DATA
 
分散処理基盤Apache Hadoopの現状と、NTTデータのHadoopに対する取り組み
分散処理基盤Apache Hadoopの現状と、NTTデータのHadoopに対する取り組み分散処理基盤Apache Hadoopの現状と、NTTデータのHadoopに対する取り組み
分散処理基盤Apache Hadoopの現状と、NTTデータのHadoopに対する取り組み
 

Último

SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 

Último (10)

SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 

VLDB2011勉強会 Research Session 18: MapReduce and Hadoop

  • 1. 【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)