Clouderaのビッグデータ技術
~ HadoopとCDH、Cloudera Manager ~

Cloudera株式会社 小林大輔
2012/02/19
アジェンダ

    • Hadoopとは?
    • Clouderaが提供するHadoopディストリ
      ビューション
    • Hadoopの運用について
    • 運用管理ツールのご紹介




2
自己紹介

    •   小林大輔
    • カスタマーオペレーションズエンジニアと
      して
      テクニカルサポート業務を担当
    • daisuke@cloudera.com


    (小中高を神戸の田舎の方で過ごしました)
    (いまは両親とも東京に移住済み)

3
Hadoopとは?




4
データ処理の課題

    • ストレージ
     •   データをどこにどう貯めておくか
    • 処理
     •   データをどこでどう計算するか




5
ストレージの容量

                  HDD単体容量(GB)
    3500
                                3000
    3000

    2500

    2000

    1500

    1000

    500                 200
           2.1
       0
           1997         2004    2012

6
ストレージの価格

                     GBあたりのコスト
    $180
    $160      $157
    $140
    $120
    $100
    $80
    $60
    $40
    $20
                             $1.05
     $0                                 $0.05
           1997           2004       2012

7
ディスクの性能

                      転送レート(MB/s)
    250.0

                                         210
    200.0


    150.0


    100.0


     50.0                      56.5

                   16.6
      0.0
            1997            2004      2012

8
ディスク読み込み時間

    •   ディスク全体の読み込み時間はむしろ増えてい
        る
        状況といえる
               年      容量        時間
            1994年    2.1GB     126秒
            2004年   200GB       59分
            2012年   3000GB   3時間58分




9
ディスク読み込み時間

     •   ディスク全体の読み込み時間はむしろ増えてい
         る
         状況といえる
                年      容量        時間
             1994年    2.1GB     126秒
             2004年   200GB       59分
             2012年   3000GB   3時間58分




10
つまり、、、

     • ディスク容量は増え、価格も下がった
     • しかし、データを読み書きする速度(I/O)
       はそれほど改善されていない




         データアクセスがボトルネックに
                なる


11
処理

     • 一般的に計算処理はCPUに依存
     • ムーアの法則
       「マイクロプロセッサの性能は18ヶ月
       で2倍になる」
     • iPhone5のCPUは、1977年に発表された
       富士通のスーパーコンピュータ、
       FACOM 230-75の20倍

12
処理


     • 一般的に計算処理はCPUに依存
     • ムーアの法則
       「マイクロプロセッサの性能は18ヶ月
       で2倍になる」
     • iPhone5のCPUは、1977年に発表された
       富士通のスーパーコンピュータ、
       FACOM 230-75の20倍

13
大規模処理をしようと思ったら、、、

     • 現代の大規模処理はマシン間で処理を分散する
     • 分散処理システムが必要




          「開拓時代には重いものを引くのに雄牛が
          使われたものですが、一頭の雄牛が丸太を
         引くことができなくても、もっと大きな雄牛を
             育てようとはしませんでした」
            Grace Hopper: 初期の分散コンピューティングの研究者




14
分散処理の問題:データ処理のボトルネッ
     ク

     • 少量のデータでは問題ない
     • 計算サーバーが増えると悪化する
      •   ネットワーク間の通信による




15
分散処理の問題:複雑さ

     •   可用性
     •   部分障害
     •   連鎖障害
     •   データの一貫性
     •   イベントの同期
     •   帯域の制限
     •   …..
     •   …..


16
分散処理の問題:複雑さ

     •   可用性
     •   部分障害
     •   連鎖障害
     •   データの一貫性
     •   イベントの同期
     •   帯域の制限
     •   …..
     •   ….. そこで登場したのがHadoop


17
Hadoopとは何か?


     • コモディティハードウェアにより構成
       される
     • スケールアウト型のアーキテクチャ
     • HadoopはGoogleの論文を参考に開発さ
       れている




18
Hadoopでの解決:ディスクのパフォーマン
     ス

     • 複数のディスクを並列に使用する
        • 単一ディスクの転送レートが210MB/s
           • 3TBのデータ読み込みには約4時間
        • 1000台並列であれば210GB/s
           • 3TBのデータ読み込みには15秒弱




20
Hadoopでの解決:複雑さと耐障害性

     •   MapReduceプログラミングモデルにより処
         理を単純化
     • 障害が不可避であるという前提で動作
     • 大規模なクラスタであれば、1日あた
         り1台の障害が起こりうる
         • MTBF(平均故障間隔)が5年、2000台と仮定
         • 365日*5年=1825日(ほぼ2000日)



22
Hadoopとは?


 • コモディティハードウェアにより構成
   される
 • スケールアウト型のアーキテクチャ
 • 耐障害性を備えている
 • オープンソースのソフトウェア




23
Hadoopのコアコンポーネント



       HDFS         MapReduce

     自己修復機能を      分散
       持つ      コンピューティン
     分散ストレージ   グ・フレームワー
                   ク




24
HDFS

 • Hadoop の分散ファイルシステム
 • 大量のデータを多数のノードに分散し
     て保存する
 • 耐障害性が高く、シーケンシャルアク
     セスに対するスループットが高い
 • 低レイテンシのデータアクセスや小さ
     いファイルへのアクセスは苦手

25
HDFS

     自己修復機能を持つ高帯域な

      1

      2

      3     HDFS


      4            2   1   1    2       1
                   4   2   3    3       3
      5            5   5   4    5       4

            HDFSは受け取ったファイルをブロックに分割し、
          そのブロックをクラスタ全体にわたって重複して格納します


26
HDFS

     1つのサーバが壊れても自動複製


生きているノード
 に自動的に複製
    し、
常に3つのレプリカ
            2   1   1   2   1
があるようにする
            4   2   3   3   3
            5   5   4   5   4
            1   3       4




27
MapReduce

                               フレームワーク

     1

     2

     3   MR


     4        2               1                     1   2   1
              4               2                     3   3   3
     5        5               5                     4   5   4



多数のノード間で大規模ジョブを並列処理し、処理結果を結合し
             ます
28                ©2011 Cloudera, Inc. All Rights
                           Reserved.
なぜMapReduceか?

 • データを取得するのではなく、データのある場
   所にプログラムを送信して計算する
 • データをHDFSに保存することで耐障害性の確保
 •   ノード障害発生時にはそのノードの処理分だけ
     再実行




29
Hadoopの周辺コンポーネント


        HadoopとRDBMSとの連携                   分散ログストリーミング処理
             APACHE Sqoop                     APACHE Flume


      クラウドでの分散処理ライブラリ                      ワークフローとスケジューリング
           APACHE Whirr                         APACHE Oozie


     分散協調サービス                          高級言語とライブラリ
     APACHE ZooKeeper          APACHE Hive, APACHE Pig, APACHE Mahout


     分散データベース                           大規模分散処理基盤
      APACHE HBase                      APACHE MapReduce


                            分散ファイルシステム
                              APACHE HDFS




30
Hadoopの周辺コンポーネント


         HadoopとRDBMSとの連携                分散ログストリーミング処理
              APACHE Sqoop                  APACHE Flume


 • Hadoopを使ってみたい
      クラウドでの分散処理ライブラリ   ワークフローとスケジューリング
     • コンポーネント毎にソースをダウンロードしてきてビルドする
           APACHE Whirr      APACHE Oozie

     • 各サーバーにデプロイする
       分散協調サービス                 高級言語とライブラリ
     • どのバージョンにどの修正が含まれているのか把握するのは困
       APACHE ZooKeeper APACHE Hive, APACHE Pig, APACHE Mahout
       難
     • 互換性の問題
       分散データベース                  大規模分散処理基盤
        APACHE HBase                   APACHE MapReduce


                             分散ファイルシステム
                               APACHE HDFS




31
Clouderaが提供するHadoopディストリビュー
ション

 • CDH(Cloudera’s Distribution including Apache
   Hadoop)
 • 主要コンセプトは4つ
     •   大規模データの蓄積
     •   並列処理
     •   データインテグレーション
     •   言語とインタフェース
 •   CDHでは、これらのコンセプトを実現するための
     様々なコンポーネントを用意



32
なぜCDHなのか?

       CDHはエンタープライズ向けの
     Hadoopディストリビューションです
 •   CDHには大量のパッチが当てられています
     •   性能改善・バグ修正パッチ
     •   互換性を維持できる範囲での機能追加

 •   CDHはパッケージで管理できます
     •   yum コマンドで簡単にインストール/アップデート可能
         •   コミュニティ版を使うとコンポーネントごとにダウンロード、
             コンパイル、デプロイを行う必要がある


33
CDH 開発の歴史


                                  2012/06

                         高可用性ネームノード(NFS)
                         複数のデータ処理フレームワーク(MR1とMR2)
Q3 2009       Q2 2011
                         etc…


                                  2012/0
2009   2010    2011       2012                2012/09
                                    6


                                            2012/09
 Q1 2010
                            高可用性ネームノード(クォーラムベースストレージ)
                            Hue の Oozie ワークフローGUI と日本語化
                            統計分析用PigライブラリDataFu
                            etc…


34
Hadoopの運用について




35
Hadoopの運用

     • 必要になる作業
        • クラスタの管理と監視
        • 設定
        • 設定パラメータ
        • メンテナンス
        • パフォーマンス監視
        • アクセス管理




36
Hadoopの運用

     • Hadoopは複雑なシステム
      • 非常に多くの要素がある
      • ネットワークやストレージなど、考慮することが多い

     • 設定項目も膨大
     • サポートで問い合わせをうける問題
      も、設定ミスによるものであるケース
      が多い


37
Hadoopの運用

     • Apache Hadoopは複雑なシステム
     • Hadoopの運用は難しく、大変
        • 非常に多くの要素がある
     • Clouderaが提供する運用管理ソフトが
        • ネットワークやストレージなど、考慮することが多い
       これらの問題/不安を解消します
     • 設定項目も膨大
       = Cloudera Manager
     • サポートで問い合わせをうける問題も、
      設定ミスによるものであるケースが多
      い


38
Cloudera Managerとは

     •   エンタープライズ規模のHadoopユーザーの必要
         に応じて設計されたアプリケーション
         • Hadoopをノードにインストール
         • クラスタにホストの追加/削除、サービスを設定
         • クラスタの動作を監視
         • クラスタの使用量のレポートを生成
         • クラスタにアクセスするユーザーを管理


                日本語に対応!



39
ダッシュボード




40
パフォーマンスと使用量のレポート




41
CDHをインストールする

     • Cloudera Managerを使用します
     • Webアプリケーションなので、操作は
       すべてブラウザから行います
     • GUIは日本語化対応済みです




42
デモ動画
     https://vimeo.com/49643526




43
Cloudera Managerの種類

     • Free Edition
        • 無償でダウンロード可能
        • インストールと基本的な設定を容易にする

     • Enterprise Edition
       • エンタープライズ/商用向けの機能を含んで
         いる
       • Free Editionから容易にアップデート可能




44
Free Editionの制限

     •   Free Editionでは50ノードまでサポート
         •   Enterprise Editionは制限なし
     •   Free Editionにはエンタープライズ用の機能
         が含まれない
         • サービス監視
         • LDAP/Kerberos統合
         • イベント管理とアラート
         • アクティビティモニタ
         • レポート機能
         • サポートシステムとの統合

45
ダウンロードして試してみてください

     • https://ccp.cloudera.com/display/support
       /downloads
     • 弊社Webサイトのトップページから、
       「RESOURCES」
       -> 「Download Cloudera Manager」
       と辿ってください



46
今日話したこと

     • Hadoopとは?
     • Clouderaが提供するHadoopディストリ
       ビューション
     • Hadoopの運用について
     • Cloudera Managerのご紹介




47
48

Cloudera大阪セミナー 20130219

  • 1.
    Clouderaのビッグデータ技術 ~ HadoopとCDH、Cloudera Manager~ Cloudera株式会社 小林大輔 2012/02/19
  • 2.
    アジェンダ • Hadoopとは? • Clouderaが提供するHadoopディストリ ビューション • Hadoopの運用について • 運用管理ツールのご紹介 2
  • 3.
    自己紹介 • 小林大輔 • カスタマーオペレーションズエンジニアと して テクニカルサポート業務を担当 • daisuke@cloudera.com (小中高を神戸の田舎の方で過ごしました) (いまは両親とも東京に移住済み) 3
  • 4.
  • 5.
    データ処理の課題 • ストレージ • データをどこにどう貯めておくか • 処理 • データをどこでどう計算するか 5
  • 6.
    ストレージの容量 HDD単体容量(GB) 3500 3000 3000 2500 2000 1500 1000 500 200 2.1 0 1997 2004 2012 6
  • 7.
    ストレージの価格 GBあたりのコスト $180 $160 $157 $140 $120 $100 $80 $60 $40 $20 $1.05 $0 $0.05 1997 2004 2012 7
  • 8.
    ディスクの性能 転送レート(MB/s) 250.0 210 200.0 150.0 100.0 50.0 56.5 16.6 0.0 1997 2004 2012 8
  • 9.
    ディスク読み込み時間 • ディスク全体の読み込み時間はむしろ増えてい る 状況といえる 年 容量 時間 1994年 2.1GB 126秒 2004年 200GB 59分 2012年 3000GB 3時間58分 9
  • 10.
    ディスク読み込み時間 • ディスク全体の読み込み時間はむしろ増えてい る 状況といえる 年 容量 時間 1994年 2.1GB 126秒 2004年 200GB 59分 2012年 3000GB 3時間58分 10
  • 11.
    つまり、、、 • ディスク容量は増え、価格も下がった • しかし、データを読み書きする速度(I/O) はそれほど改善されていない データアクセスがボトルネックに なる 11
  • 12.
    処理 • 一般的に計算処理はCPUに依存 • ムーアの法則 「マイクロプロセッサの性能は18ヶ月 で2倍になる」 • iPhone5のCPUは、1977年に発表された 富士通のスーパーコンピュータ、 FACOM 230-75の20倍 12
  • 13.
    処理 • 一般的に計算処理はCPUに依存 • ムーアの法則 「マイクロプロセッサの性能は18ヶ月 で2倍になる」 • iPhone5のCPUは、1977年に発表された 富士通のスーパーコンピュータ、 FACOM 230-75の20倍 13
  • 14.
    大規模処理をしようと思ったら、、、 • 現代の大規模処理はマシン間で処理を分散する • 分散処理システムが必要 「開拓時代には重いものを引くのに雄牛が 使われたものですが、一頭の雄牛が丸太を 引くことができなくても、もっと大きな雄牛を 育てようとはしませんでした」 Grace Hopper: 初期の分散コンピューティングの研究者 14
  • 15.
    分散処理の問題:データ処理のボトルネッ ク • 少量のデータでは問題ない • 計算サーバーが増えると悪化する • ネットワーク間の通信による 15
  • 16.
    分散処理の問題:複雑さ • 可用性 • 部分障害 • 連鎖障害 • データの一貫性 • イベントの同期 • 帯域の制限 • ….. • ….. 16
  • 17.
    分散処理の問題:複雑さ • 可用性 • 部分障害 • 連鎖障害 • データの一貫性 • イベントの同期 • 帯域の制限 • ….. • ….. そこで登場したのがHadoop 17
  • 18.
    Hadoopとは何か? • コモディティハードウェアにより構成 される • スケールアウト型のアーキテクチャ • HadoopはGoogleの論文を参考に開発さ れている 18
  • 19.
    Hadoopでの解決:ディスクのパフォーマン ス • 複数のディスクを並列に使用する • 単一ディスクの転送レートが210MB/s • 3TBのデータ読み込みには約4時間 • 1000台並列であれば210GB/s • 3TBのデータ読み込みには15秒弱 20
  • 20.
    Hadoopでの解決:複雑さと耐障害性 • MapReduceプログラミングモデルにより処 理を単純化 • 障害が不可避であるという前提で動作 • 大規模なクラスタであれば、1日あた り1台の障害が起こりうる • MTBF(平均故障間隔)が5年、2000台と仮定 • 365日*5年=1825日(ほぼ2000日) 22
  • 21.
    Hadoopとは? • コモディティハードウェアにより構成 される • スケールアウト型のアーキテクチャ • 耐障害性を備えている • オープンソースのソフトウェア 23
  • 22.
    Hadoopのコアコンポーネント HDFS MapReduce 自己修復機能を 分散 持つ コンピューティン 分散ストレージ グ・フレームワー ク 24
  • 23.
    HDFS • Hadoopの分散ファイルシステム • 大量のデータを多数のノードに分散し て保存する • 耐障害性が高く、シーケンシャルアク セスに対するスループットが高い • 低レイテンシのデータアクセスや小さ いファイルへのアクセスは苦手 25
  • 24.
    HDFS 自己修復機能を持つ高帯域な 1 2 3 HDFS 4 2 1 1 2 1 4 2 3 3 3 5 5 5 4 5 4 HDFSは受け取ったファイルをブロックに分割し、 そのブロックをクラスタ全体にわたって重複して格納します 26
  • 25.
    HDFS 1つのサーバが壊れても自動複製 生きているノード に自動的に複製 し、 常に3つのレプリカ 2 1 1 2 1 があるようにする 4 2 3 3 3 5 5 4 5 4 1 3 4 27
  • 26.
    MapReduce フレームワーク 1 2 3 MR 4 2 1 1 2 1 4 2 3 3 3 5 5 5 4 5 4 多数のノード間で大規模ジョブを並列処理し、処理結果を結合し ます 28 ©2011 Cloudera, Inc. All Rights Reserved.
  • 27.
    なぜMapReduceか? • データを取得するのではなく、データのある場 所にプログラムを送信して計算する • データをHDFSに保存することで耐障害性の確保 • ノード障害発生時にはそのノードの処理分だけ 再実行 29
  • 28.
    Hadoopの周辺コンポーネント HadoopとRDBMSとの連携 分散ログストリーミング処理 APACHE Sqoop APACHE Flume クラウドでの分散処理ライブラリ ワークフローとスケジューリング APACHE Whirr APACHE Oozie 分散協調サービス 高級言語とライブラリ APACHE ZooKeeper APACHE Hive, APACHE Pig, APACHE Mahout 分散データベース 大規模分散処理基盤 APACHE HBase APACHE MapReduce 分散ファイルシステム APACHE HDFS 30
  • 29.
    Hadoopの周辺コンポーネント HadoopとRDBMSとの連携 分散ログストリーミング処理 APACHE Sqoop APACHE Flume • Hadoopを使ってみたい クラウドでの分散処理ライブラリ ワークフローとスケジューリング • コンポーネント毎にソースをダウンロードしてきてビルドする APACHE Whirr APACHE Oozie • 各サーバーにデプロイする 分散協調サービス 高級言語とライブラリ • どのバージョンにどの修正が含まれているのか把握するのは困 APACHE ZooKeeper APACHE Hive, APACHE Pig, APACHE Mahout 難 • 互換性の問題 分散データベース 大規模分散処理基盤 APACHE HBase APACHE MapReduce 分散ファイルシステム APACHE HDFS 31
  • 30.
    Clouderaが提供するHadoopディストリビュー ション • CDH(Cloudera’sDistribution including Apache Hadoop) • 主要コンセプトは4つ • 大規模データの蓄積 • 並列処理 • データインテグレーション • 言語とインタフェース • CDHでは、これらのコンセプトを実現するための 様々なコンポーネントを用意 32
  • 31.
    なぜCDHなのか? CDHはエンタープライズ向けの Hadoopディストリビューションです • CDHには大量のパッチが当てられています • 性能改善・バグ修正パッチ • 互換性を維持できる範囲での機能追加 • CDHはパッケージで管理できます • yum コマンドで簡単にインストール/アップデート可能 • コミュニティ版を使うとコンポーネントごとにダウンロード、 コンパイル、デプロイを行う必要がある 33
  • 32.
    CDH 開発の歴史 2012/06  高可用性ネームノード(NFS)  複数のデータ処理フレームワーク(MR1とMR2) Q3 2009 Q2 2011  etc… 2012/0 2009 2010 2011 2012 2012/09 6 2012/09 Q1 2010  高可用性ネームノード(クォーラムベースストレージ)  Hue の Oozie ワークフローGUI と日本語化  統計分析用PigライブラリDataFu  etc… 34
  • 33.
  • 34.
    Hadoopの運用 • 必要になる作業 • クラスタの管理と監視 • 設定 • 設定パラメータ • メンテナンス • パフォーマンス監視 • アクセス管理 36
  • 35.
    Hadoopの運用 • Hadoopは複雑なシステム • 非常に多くの要素がある • ネットワークやストレージなど、考慮することが多い • 設定項目も膨大 • サポートで問い合わせをうける問題 も、設定ミスによるものであるケース が多い 37
  • 36.
    Hadoopの運用 • Apache Hadoopは複雑なシステム • Hadoopの運用は難しく、大変 • 非常に多くの要素がある • Clouderaが提供する運用管理ソフトが • ネットワークやストレージなど、考慮することが多い これらの問題/不安を解消します • 設定項目も膨大 = Cloudera Manager • サポートで問い合わせをうける問題も、 設定ミスによるものであるケースが多 い 38
  • 37.
    Cloudera Managerとは • エンタープライズ規模のHadoopユーザーの必要 に応じて設計されたアプリケーション • Hadoopをノードにインストール • クラスタにホストの追加/削除、サービスを設定 • クラスタの動作を監視 • クラスタの使用量のレポートを生成 • クラスタにアクセスするユーザーを管理 日本語に対応! 39
  • 38.
  • 39.
  • 40.
    CDHをインストールする • Cloudera Managerを使用します • Webアプリケーションなので、操作は すべてブラウザから行います • GUIは日本語化対応済みです 42
  • 41.
    デモ動画 https://vimeo.com/49643526 43
  • 42.
    Cloudera Managerの種類 • Free Edition • 無償でダウンロード可能 • インストールと基本的な設定を容易にする • Enterprise Edition • エンタープライズ/商用向けの機能を含んで いる • Free Editionから容易にアップデート可能 44
  • 43.
    Free Editionの制限 • Free Editionでは50ノードまでサポート • Enterprise Editionは制限なし • Free Editionにはエンタープライズ用の機能 が含まれない • サービス監視 • LDAP/Kerberos統合 • イベント管理とアラート • アクティビティモニタ • レポート機能 • サポートシステムとの統合 45
  • 44.
    ダウンロードして試してみてください • https://ccp.cloudera.com/display/support /downloads • 弊社Webサイトのトップページから、 「RESOURCES」 -> 「Download Cloudera Manager」 と辿ってください 46
  • 45.
    今日話したこと • Hadoopとは? • Clouderaが提供するHadoopディストリ ビューション • Hadoopの運用について • Cloudera Managerのご紹介 47
  • 46.