Hadoop World 2011
       NYC
  フィードバック
~インフラとしての                ~


              Acroquest Technology
             阪本雄一郎、落合雄介
                       2011/11/28
    Hadoopソースコードリーディング第7回発表資料

               © Acroquest Technology Co., Ltd. All rights reserved.
目次
1.   自己紹介
2.   Hadoop Worldセッション内容の変化
3.   セッション紹介
4.   インフラとしてのHadoop




                   会場のSheraton New York Hotel & Towers

                        © Acroquest Technology Co., Ltd. All rights reserved.   2
1. 自己紹介
 阪本雄一郎         Acroquest Technology
   プロジェクトリーダーとして
    サービスオーダシステムを開発
   Flumeによる
    ログ収集プラットフォーム構築を実施
   HBase検証案件実施
 落合雄介         Acroquest Technology
   Hadoop 関連案件に従事
   – MapReduceによるログデータ整形・解析
   – HBase検証案件
   – ログ分析Hadoopインフラ構築

                         © Acroquest Technology Co., Ltd. All rights reserved.   3
2. Hadoop Worldセッション内容の変化


昨年(Hadoop World 2010)       今年(Hadoop World 2011)
                                                                Hadoop
                                                                 検証
                   Hadoop                                     5セッション
    Hadoop          検証
                  5セッション         Hadoop
  コンポーネント                      コンポーネント                             Hadoop
                   Hadoop
   利用事例             連携          利用事例                                連携
                  5セッション
    30セッション                      30セッション                         15セッション

                                                                          Hadoop
                                                                         コアセッシ
Hadoop(+周辺プロダクト)を単に使うだけでなく、                                                ョン
                                                                         5セッション
OSSや独自FWを組み合わせて利用する事例が増えて
きた
→Hadoop+αの組み合わせ事例をいくつか紹介します

                                 © Acroquest Technology Co., Ltd. All rights reserved.   4
3. セッション紹介
I. RとHadoopの融合
II. Hadoopを使った衛星画像解析
III. Hadoopをクラウド上に展開




                 © Acroquest Technology Co., Ltd. All rights reserved.   5
The Powerful Marriage of R and Hadoop
                                       注目のセッションで、
I. RとHadoopの融合                         200人の会場がいっぱいでした




                                   © Acroquest Technology Co., Ltd. All rights reserved.   6
【I. The Powerful Marriage of R and Hadoop】
I-1. 発表者概要

   Revolution Analytics
        Founded in 2007
        R言語の商用利用に特化
   David Champagne
        Principal Architect/Engineer for SPSS
           – SPSS:統計パッケージソフト開発、
             2009年IBMが12億ドルで買収




                                             © Acroquest Technology Co., Ltd. All rights reserved.   7
【I. The Powerful Marriage of R and Hadoop】
I-2. R言語とは

  統計解析向けプログラミング言語
      統計解析に適した命令体系を持つ
      開発実行環境も含む
         - R console : CUI
         - R Commander : GUI
      世界中のRユーザが
          「CRAN(Comprehensive R Archive Network)」
       でライブラリを提供
      オープンソース


                                             © Acroquest Technology Co., Ltd. All rights reserved.   8
【I. The Powerful Marriage of R and Hadoop】
I-3. R言語との連携の動機




      R言語は200万人以上のユーザを持つ
       オープンソース統計言語
      Rプログラマが簡単にHadoop上の
       データを扱い、MapReduceで
       処理できるようにしたい
      Rを、Hadoop上で、Hadoopの中身を
       意識せずとも動かせるようにしたい

                                             © Acroquest Technology Co., Ltd. All rights reserved.   9
【I. The Powerful Marriage of R and Hadoop】
I-4. アーキテクチャ




                                                                                                作っ
                                                                                                た
                                                                                                部分
                     rhdfs                   rhbase



                             rmr

                                                      © Acroquest Technology Co., Ltd. All rights reserved.   10
【I. The Powerful Marriage of R and Hadoop】
I-5. rmrの特徴




      Javaを書くよりシンプル
      Hive, Pigほどシンプルではなく、
       より汎用的
      プロトタイピングをしやすい




                                             © Acroquest Technology Co., Ltd. All rights reserved.   11
【I. The Powerful Marriage of R and Hadoop】
I-6. Hiveとrmrの記述の違い
                                             単純な集計ではHive の方が
                                             コード量は少ない
                                             ・Map Reduce の処理を
                                              明示的に記せること
                                             ・Map, Reduce で、R言語の
                                              関数を呼び出せることが特
                                             徴
                          男女のユニークユーザ数を
                          それぞれ求める処理




                                             © Acroquest Technology Co., Ltd. All rights reserved.   12
【I. The Powerful Marriage of R and Hadoop】
                                                k-means :
I-7. rmrにおける記述量                                   クラスタリングのアルゴリズムの一つ
                                                クラスタリング:
                                                 複数のデータを持つ要素を、
                                                 特徴別のグループに分類する
                                                 (購買意欲の高いユーザと
                                                  それ以外のユーザを分類する、など)




                                             rmr で大幅に
                                               コード量=実装の手間
                                             を削減!
                                             R言語に備わっている
                                             k-means のライブラリを使用可能なた
                                             め

                                                  © Acroquest Technology Co., Ltd. All rights reserved.   13
【I. The Powerful Marriage of R and Hadoop】
I-8. 大量データ統計処理の今後

   RとHadoopが組み合わさることで、
    Big Dataの柔軟な解析への期待が高まる
        k-means クラスタリングの例のように、
         統計的分析を簡易な記述で実現可能になる
        統計処理の理論に慣れていないエンジニアにも
         Big Data の分析が容易になる




                                             © Acroquest Technology Co., Ltd. All rights reserved.   14
How many planes
                in this image?




Indexing the Earth –
Large Scale Satellite Image Processing Using Hadoop

II. Hadoopを使った衛星画像解析



                                   © Acroquest Technology Co., Ltd. All rights reserved.   15
【II. Indexing the Earth – Large Scale Satellite Image Processing Using Hadoop】
II-1. 発表者概要

   Skybox Imaging
        衛星画像をもとに、映像解析・監視を
         行う




   Oliver Guinan
        Ground Systems部の副部長
        世界最大級のコンシューマ向け
         インターネットアプリケーションを開                           © Acroquest Technology Co., Ltd. All rights reserved.   16
【II. Indexing the Earth – Large Scale Satellite Image Processing Using Hadoop】
II-2. 概要

端的に言うと・・・




     Hadoopをそのまま使っても遅いので、
              を呼び出せるようにしまし
               た!




                                                     © Acroquest Technology Co., Ltd. All rights reserved.   17
【II. Indexing the Earth – Large Scale Satellite Image Processing Using Hadoop】
II-3. フレームワーク作成の動機

   大量データの映像解析をしたい
        衛星画像から送られてくるデータは1TB/日
        大量データを分散させて保持させたい
         →Hadoopが使える。
        画像解析ライブラリをそのまま使いたい
   しかし、Hadoop、Javaには弱点あり
        ジョブ起動が遅い
        科学計算ライブラリが不十分


              画像解析ライブラリが使える
              ネイティブコードを呼び出した
                    い!                               © Acroquest Technology Co., Ltd. All rights reserved.   18
【II. Indexing the Earth – Large Scale Satellite Image Processing Using Hadoop】
II-4. アーキテクチャ

   タスクの中でネイティブコード(C言語)を
    呼び出す仕組みを構築

                 コ
                 コ



                                                                         Busboy(バズボーイ):
                                                                         飲食店で、食器を下げた
                                                                         り皿洗いをしたりする人


                                                     © Acroquest Technology Co., Ltd. All rights reserved.   19
【II. Indexing the Earth – Large Scale Satellite Image Processing Using Hadoop】
II-5. 業務特化の1つの解

   Hadoopと自社フレームワークを組み合わせ
    て、
               高速処理+ネイティブライブラリ呼び出
       し
    を実現
   既存の処理をJavaで再実装することなく、
    C言語などの既存の資産を使う

           →Hadoop はあくまでインフラとして使う

                                                     © Acroquest Technology Co., Ltd. All rights reserved.   20
Hadoop as a Service in Cloud


III. Hadoopをクラウド上に展開



                               © Acroquest Technology Co., Ltd. All rights reserved.   21
【III. Hadoop as a Service in Cloud】
III-1. 仮想化の要請



                                                                    しかし、Hadoopは
                                                                    一般的に仮想化と
                                                                    相性が悪いと
                                                                    言われている:
                                                                     ディスクの分散、
                                                                     ラックアウェアネ
                                                                    ス、
                                                                     ・・・



  オペレーション、
                                      ニーズに応じた
  メンテナンスの               コスト低減
                                      素早い対応
  単純化



                                         © Acroquest Technology Co., Ltd. All rights reserved.   22
【III. Hadoop as a Service in Cloud】
III-2. Big Data への対応で必要なのはHadoopだけではな
い

                                                           ・Big Data のトレンドは、
                                                            Hadoop だけではない
                                                            ・Hadoop は他の技術と併用され
                                                           る:
                                                             Big SQL, NoSQL, etc,…
                                                             ・全てのインフラを統一したい




                                                              Big Data 対応のための
                                                              統合された基盤が
                                                              求められている



                                                             ・共通のハードウェア基盤
                                                               ・ハードウェア、ドライバの
                                                                テストフェーズをなくしたい
                                                              ・すでにあるチーム内で、制御、
                                                               診断、キャパシティマネジメン
                                                             トを
                                                               こなしたい



                                      © Acroquest Technology Co., Ltd. All rights reserved.   23
【III. Hadoop as a Service in Cloud】
III-3. 参考:Disney のData Management Platform
                                                                                   Advancing Disney’s Data
                                                                                   Infrastructure with Hadoop
                                                                                   Matt Estes, Disney
                                                                                   より

                                                                          Disney は、
                                                                          2008年から仮想化、
                                                                          2009年からHadoop
                                                                          に取り組んでいる。

                                                                          2010年には、
                                                                          Cloud Platform を
                                                                          構築し、全サービスのう
                                                                          ち60%のサーバイメー
                                                                          ジを
                                                                          仮想環境に移行した




                         Hadoop 環境は Disney Cloud Services とは別

                                                        © Acroquest Technology Co., Ltd. All rights reserved.   24
【III. Hadoop as a Service in Cloud】
III-4. 参考:Disney のData Management Platform




                                                         2011年の取り組みで、
                                                         Hadoop クラスタを
                                                         Data Management
                                                         Platform として統一


                                                          Hadoop を使った
                                                          サービスを大規模に
                                                          展開する企業も、
                                                          仮想化に注目してい
                                                          る



                                      © Acroquest Technology Co., Ltd. All rights reserved.   25
【III. Hadoop as a Service in Cloud】
III-5. ディスクの構成


                                                           ローカルディスクを
                                                           使うことで、
               扱いやすい                                       HDFSの特性を生かす




                        NW IO が
                        ネックに


                                      © Acroquest Technology Co., Ltd. All rights reserved.   26
【III. Hadoop as a Service in Cloud】
III-6. vSphere を通したラックアウェアネス


                                                            Rack awareness:
                                                            Hadoopは大量のネッ
                                                            トワーク通信を行うた
                                                            め、通信量を減らせる
                                                            ようマシンの物理的配
                                                            置を設定する。




  ラックアウェアネスの考慮が必要な点
  は、
  仮想化を行う際の、                              Rack script を自動生成
   「どの物理ノードに乗っているか気                      することで、問題を解決
  にしなくて良い」
  という利点に矛盾する

                                      © Acroquest Technology Co., Ltd. All rights reserved.   27
【III. Hadoop as a Service in Cloud】
III-7. Muti-tenant への対応


                                                              巨大クラスタを占有
                                                              するのと、クラスタ
                                                              を共有するのと、用
                                                              途によって使い分け
                                                              る

                                                               顧客の要請に応じた
                                                               使いわけ


                                                              Multi-tenant:
                                                              1つのクラスタの中で
                                                              複数のシステムを
                                                              構築・動作させる




                                      © Acroquest Technology Co., Ltd. All rights reserved.   28
【III. Hadoop as a Service in Cloud】
III-8. クラウド上のHadoop構築で、柔軟な対応が可能に

   Hadoopを仮想環境で動作させる仕組みが
    できた
   「Hadoopだけは特別」ではない。
    他のプラットフォームと同様に、
    「クラウドにHadoopを展開して利用する」
    というユースケースもあり得る




                                      © Acroquest Technology Co., Ltd. All rights reserved.   29
4. インフラとしてのHadoop

 Hadoopはインフラとなりつつある
   MapReduceで計算して終わり!な時代は過ぎた
   HadoopをベースにOSS/フレームワークを組み
    合わせて、新たな仕組みを構築する動きが出てき
    た
 「目的」ではなく「手段」としてHadoopを使
  う
   「大量データだからHadoopをとりあえず使おう
    」だと、Hadoopのメリットは少ない
   大量データを分析し役立てたいからHadoopを使
    う、と考えると、Hadoopを最大限に生かすこと
    ができる         © Acroquest Technology Co., Ltd. All rights reserved.   30
ぜひ日本でも事例を増やしましょ
      う!




          © Acroquest Technology Co., Ltd. All rights reserved.   31

Hadoop scr第7回 hw2011フィードバック

  • 1.
    Hadoop World 2011 NYC フィードバック ~インフラとしての ~ Acroquest Technology 阪本雄一郎、落合雄介 2011/11/28 Hadoopソースコードリーディング第7回発表資料 © Acroquest Technology Co., Ltd. All rights reserved.
  • 2.
    目次 1. 自己紹介 2. Hadoop Worldセッション内容の変化 3. セッション紹介 4. インフラとしてのHadoop 会場のSheraton New York Hotel & Towers © Acroquest Technology Co., Ltd. All rights reserved. 2
  • 3.
    1. 自己紹介  阪本雄一郎 Acroquest Technology  プロジェクトリーダーとして サービスオーダシステムを開発  Flumeによる ログ収集プラットフォーム構築を実施  HBase検証案件実施  落合雄介 Acroquest Technology  Hadoop 関連案件に従事 – MapReduceによるログデータ整形・解析 – HBase検証案件 – ログ分析Hadoopインフラ構築 © Acroquest Technology Co., Ltd. All rights reserved. 3
  • 4.
    2. Hadoop Worldセッション内容の変化 昨年(HadoopWorld 2010) 今年(Hadoop World 2011) Hadoop 検証 Hadoop 5セッション Hadoop 検証 5セッション Hadoop コンポーネント コンポーネント Hadoop Hadoop 利用事例 連携 利用事例 連携 5セッション 30セッション 30セッション 15セッション Hadoop コアセッシ Hadoop(+周辺プロダクト)を単に使うだけでなく、 ョン 5セッション OSSや独自FWを組み合わせて利用する事例が増えて きた →Hadoop+αの組み合わせ事例をいくつか紹介します © Acroquest Technology Co., Ltd. All rights reserved. 4
  • 5.
    3. セッション紹介 I. RとHadoopの融合 II.Hadoopを使った衛星画像解析 III. Hadoopをクラウド上に展開 © Acroquest Technology Co., Ltd. All rights reserved. 5
  • 6.
    The Powerful Marriageof R and Hadoop 注目のセッションで、 I. RとHadoopの融合 200人の会場がいっぱいでした © Acroquest Technology Co., Ltd. All rights reserved. 6
  • 7.
    【I. The PowerfulMarriage of R and Hadoop】 I-1. 発表者概要  Revolution Analytics  Founded in 2007  R言語の商用利用に特化  David Champagne  Principal Architect/Engineer for SPSS – SPSS:統計パッケージソフト開発、 2009年IBMが12億ドルで買収 © Acroquest Technology Co., Ltd. All rights reserved. 7
  • 8.
    【I. The PowerfulMarriage of R and Hadoop】 I-2. R言語とは  統計解析向けプログラミング言語  統計解析に適した命令体系を持つ  開発実行環境も含む - R console : CUI - R Commander : GUI  世界中のRユーザが 「CRAN(Comprehensive R Archive Network)」 でライブラリを提供  オープンソース © Acroquest Technology Co., Ltd. All rights reserved. 8
  • 9.
    【I. The PowerfulMarriage of R and Hadoop】 I-3. R言語との連携の動機  R言語は200万人以上のユーザを持つ オープンソース統計言語  Rプログラマが簡単にHadoop上の データを扱い、MapReduceで 処理できるようにしたい  Rを、Hadoop上で、Hadoopの中身を 意識せずとも動かせるようにしたい © Acroquest Technology Co., Ltd. All rights reserved. 9
  • 10.
    【I. The PowerfulMarriage of R and Hadoop】 I-4. アーキテクチャ 作っ た 部分 rhdfs rhbase rmr © Acroquest Technology Co., Ltd. All rights reserved. 10
  • 11.
    【I. The PowerfulMarriage of R and Hadoop】 I-5. rmrの特徴  Javaを書くよりシンプル  Hive, Pigほどシンプルではなく、 より汎用的  プロトタイピングをしやすい © Acroquest Technology Co., Ltd. All rights reserved. 11
  • 12.
    【I. The PowerfulMarriage of R and Hadoop】 I-6. Hiveとrmrの記述の違い 単純な集計ではHive の方が コード量は少ない ・Map Reduce の処理を 明示的に記せること ・Map, Reduce で、R言語の 関数を呼び出せることが特 徴 男女のユニークユーザ数を それぞれ求める処理 © Acroquest Technology Co., Ltd. All rights reserved. 12
  • 13.
    【I. The PowerfulMarriage of R and Hadoop】 k-means : I-7. rmrにおける記述量 クラスタリングのアルゴリズムの一つ クラスタリング: 複数のデータを持つ要素を、 特徴別のグループに分類する (購買意欲の高いユーザと それ以外のユーザを分類する、など) rmr で大幅に コード量=実装の手間 を削減! R言語に備わっている k-means のライブラリを使用可能なた め © Acroquest Technology Co., Ltd. All rights reserved. 13
  • 14.
    【I. The PowerfulMarriage of R and Hadoop】 I-8. 大量データ統計処理の今後  RとHadoopが組み合わさることで、 Big Dataの柔軟な解析への期待が高まる  k-means クラスタリングの例のように、 統計的分析を簡易な記述で実現可能になる  統計処理の理論に慣れていないエンジニアにも Big Data の分析が容易になる © Acroquest Technology Co., Ltd. All rights reserved. 14
  • 15.
    How many planes in this image? Indexing the Earth – Large Scale Satellite Image Processing Using Hadoop II. Hadoopを使った衛星画像解析 © Acroquest Technology Co., Ltd. All rights reserved. 15
  • 16.
    【II. Indexing theEarth – Large Scale Satellite Image Processing Using Hadoop】 II-1. 発表者概要  Skybox Imaging  衛星画像をもとに、映像解析・監視を 行う  Oliver Guinan  Ground Systems部の副部長  世界最大級のコンシューマ向け インターネットアプリケーションを開 © Acroquest Technology Co., Ltd. All rights reserved. 16
  • 17.
    【II. Indexing theEarth – Large Scale Satellite Image Processing Using Hadoop】 II-2. 概要 端的に言うと・・・ Hadoopをそのまま使っても遅いので、 を呼び出せるようにしまし た! © Acroquest Technology Co., Ltd. All rights reserved. 17
  • 18.
    【II. Indexing theEarth – Large Scale Satellite Image Processing Using Hadoop】 II-3. フレームワーク作成の動機  大量データの映像解析をしたい  衛星画像から送られてくるデータは1TB/日  大量データを分散させて保持させたい →Hadoopが使える。  画像解析ライブラリをそのまま使いたい  しかし、Hadoop、Javaには弱点あり  ジョブ起動が遅い  科学計算ライブラリが不十分 画像解析ライブラリが使える ネイティブコードを呼び出した い! © Acroquest Technology Co., Ltd. All rights reserved. 18
  • 19.
    【II. Indexing theEarth – Large Scale Satellite Image Processing Using Hadoop】 II-4. アーキテクチャ  タスクの中でネイティブコード(C言語)を 呼び出す仕組みを構築 コ コ Busboy(バズボーイ): 飲食店で、食器を下げた り皿洗いをしたりする人 © Acroquest Technology Co., Ltd. All rights reserved. 19
  • 20.
    【II. Indexing theEarth – Large Scale Satellite Image Processing Using Hadoop】 II-5. 業務特化の1つの解  Hadoopと自社フレームワークを組み合わせ て、 高速処理+ネイティブライブラリ呼び出 し を実現  既存の処理をJavaで再実装することなく、 C言語などの既存の資産を使う →Hadoop はあくまでインフラとして使う © Acroquest Technology Co., Ltd. All rights reserved. 20
  • 21.
    Hadoop as aService in Cloud III. Hadoopをクラウド上に展開 © Acroquest Technology Co., Ltd. All rights reserved. 21
  • 22.
    【III. Hadoop asa Service in Cloud】 III-1. 仮想化の要請 しかし、Hadoopは 一般的に仮想化と 相性が悪いと 言われている: ディスクの分散、 ラックアウェアネ ス、 ・・・ オペレーション、 ニーズに応じた メンテナンスの コスト低減 素早い対応 単純化 © Acroquest Technology Co., Ltd. All rights reserved. 22
  • 23.
    【III. Hadoop asa Service in Cloud】 III-2. Big Data への対応で必要なのはHadoopだけではな い ・Big Data のトレンドは、 Hadoop だけではない ・Hadoop は他の技術と併用され る: Big SQL, NoSQL, etc,… ・全てのインフラを統一したい Big Data 対応のための 統合された基盤が 求められている ・共通のハードウェア基盤 ・ハードウェア、ドライバの テストフェーズをなくしたい ・すでにあるチーム内で、制御、 診断、キャパシティマネジメン トを こなしたい © Acroquest Technology Co., Ltd. All rights reserved. 23
  • 24.
    【III. Hadoop asa Service in Cloud】 III-3. 参考:Disney のData Management Platform Advancing Disney’s Data Infrastructure with Hadoop Matt Estes, Disney より Disney は、 2008年から仮想化、 2009年からHadoop に取り組んでいる。 2010年には、 Cloud Platform を 構築し、全サービスのう ち60%のサーバイメー ジを 仮想環境に移行した Hadoop 環境は Disney Cloud Services とは別 © Acroquest Technology Co., Ltd. All rights reserved. 24
  • 25.
    【III. Hadoop asa Service in Cloud】 III-4. 参考:Disney のData Management Platform 2011年の取り組みで、 Hadoop クラスタを Data Management Platform として統一 Hadoop を使った サービスを大規模に 展開する企業も、 仮想化に注目してい る © Acroquest Technology Co., Ltd. All rights reserved. 25
  • 26.
    【III. Hadoop asa Service in Cloud】 III-5. ディスクの構成 ローカルディスクを 使うことで、 扱いやすい HDFSの特性を生かす NW IO が ネックに © Acroquest Technology Co., Ltd. All rights reserved. 26
  • 27.
    【III. Hadoop asa Service in Cloud】 III-6. vSphere を通したラックアウェアネス Rack awareness: Hadoopは大量のネッ トワーク通信を行うた め、通信量を減らせる ようマシンの物理的配 置を設定する。 ラックアウェアネスの考慮が必要な点 は、 仮想化を行う際の、 Rack script を自動生成 「どの物理ノードに乗っているか気 することで、問題を解決 にしなくて良い」 という利点に矛盾する © Acroquest Technology Co., Ltd. All rights reserved. 27
  • 28.
    【III. Hadoop asa Service in Cloud】 III-7. Muti-tenant への対応 巨大クラスタを占有 するのと、クラスタ を共有するのと、用 途によって使い分け る 顧客の要請に応じた 使いわけ Multi-tenant: 1つのクラスタの中で 複数のシステムを 構築・動作させる © Acroquest Technology Co., Ltd. All rights reserved. 28
  • 29.
    【III. Hadoop asa Service in Cloud】 III-8. クラウド上のHadoop構築で、柔軟な対応が可能に  Hadoopを仮想環境で動作させる仕組みが できた  「Hadoopだけは特別」ではない。 他のプラットフォームと同様に、 「クラウドにHadoopを展開して利用する」 というユースケースもあり得る © Acroquest Technology Co., Ltd. All rights reserved. 29
  • 30.
    4. インフラとしてのHadoop  Hadoopはインフラとなりつつある  MapReduceで計算して終わり!な時代は過ぎた  HadoopをベースにOSS/フレームワークを組み 合わせて、新たな仕組みを構築する動きが出てき た  「目的」ではなく「手段」としてHadoopを使 う  「大量データだからHadoopをとりあえず使おう 」だと、Hadoopのメリットは少ない  大量データを分析し役立てたいからHadoopを使 う、と考えると、Hadoopを最大限に生かすこと ができる © Acroquest Technology Co., Ltd. All rights reserved. 30
  • 31.
    ぜひ日本でも事例を増やしましょ う! © Acroquest Technology Co., Ltd. All rights reserved. 31