ATN No.1 MapReduceだけでない!? Hadoopとその仲間たち

  • 2,942 views
Uploaded on

 

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
2,942
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
32
Comments
0
Likes
3

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Advanced Tech Night No.01 MapReduceだけでない!? Hadoopとその仲間たち 2011/04/22 Acroquest Technology 株式会社 束野 仁政
  • 2. 自己紹介 束野 仁政(つかの さとゆき) @snuffkin Acroquest Technology 株式会社 ネットワークマネージメントソリューショング ループ エンジニアリングデザイナー 仕事内容 1. Network Management Systemの開発が中心 2. 何でもネットワークにつながり、大量データ処理を求め られる時代。そこで、眼を付けているのがHadoop 趣味 スポーツ観戦(生観戦の臨場感が好き) 特徴 声が高い。飲むと、ますます高くなる。 1 Advanced Tech Night
  • 3. まずは、質問Q. 「Hadoop」って単語を聞いたことある人?Q. Hadoopをインストールしたことがある人?Q. HDFS、MapReduce、HBase以外の Hadoopプロダクトを知っている人? 2 Advanced Tech Night
  • 4. 伝えたいこといわゆるHadoop ≒ MapReduce Hadoop群 > MapReduce 3 Advanced Tech Night
  • 5. 目次1. 動機 5. 応用プロダクト2. Hadoop概要のおさら 1. Pig い 2. Mahout3. プロダクト構成 3. Sqoop 1. ディストリビューショ 4. Flume ン 6. 組合せてできること 2. プロダクト一覧4. 基本プロダクト 7. 最後に 1. HDFS 2. MapReduce 3. HBase 4. Hive 4 Advanced Tech Night
  • 6. 1. 動機1. Hadoopが紹介された当初は 「Hadoop = MapReduce(+HDFS,HBase)」 という感じだった。2. 大御所Clouderaを始め、Hadoopは周辺プロダ クトが数多く開発されており、これらプロダク トを使った成果が次々と出ている。3. ここでは、 「Hadoopには、どんなプロダクトがあるか」 「組合せることで、どんなことができるのか」 を紹介する。 5 Advanced Tech Night
  • 7. 2. Hadoop概要のおさらい 大量データの並列分散処理基盤 安価なハードウェアを多数並列処理させる ことでスケーラビリティを実現する。 6 Advanced Tech Night
  • 8. 3. プロダクト構成 (1)ディストリビューション1. Hadoopは、複数のプロダクトで構成されている Hadoop≠MapReduce2. Hadoopは、複数のディストリビューションがある ① Apache(http://hadoop.apache.org/) →本家コミュニティ。 ② Cloudera社(http://www.cloudera.com/) →エンタープライズ利用/簡単適用可能なパッケージを提 供。 ③ Yahoo!社(http://developer.yahoo.com/hadoop/) →Yahoo!自身で使用実績のある版。セキュリティなどを強 化。 7 Advanced Tech Night
  • 9. 3. プロダクト構成 (1)ディストリビューション1. Cloudera社が提供するHadoopディストリビュー ション CDH=Clouderas Distribution for Hadoop Hue Hue SDK Oozie Hive Pig/ Hive Flume, Sqoop HBase Zookeeper 8 Advanced Tech Night
  • 10. 3. Hadoopプロダクト構成 (2)プロダクト一覧No. プロダクト 概要 Apache Cloudera 名1 Common Hadoopで共通利用するライブラリ、API ○ ○2 HDFS 分散ファイルシステム ○ ○3 MapReduce 分散処理エンジン ○ ○4 HBase HDFS上で動作するKey-Value Store ○ ○5 Zookeeper Hadoop処理のコーディネータ ○ ○6 Hive SQLライクにHDFS上のデータを取得・加工す ○ ○ る7 Pig 注目! データ処理を簡単に記述するための言語I/F ○ ○8 Mahout 機械学習ライブラリ ○ -9 Avro 高速シリアライズ処理/RPCインタフェース ○ -10 Chukwa 分散大量データ収集インフラ ○ -11 Oozie ワークフローエンジン/スケジューラ - ○12 Sqoop RDBMSとHDFSのインポート/エクスポート - ○13 Flume 注 分散大量データ収集インフラ - ○ 目! 914 Hue Hadoopクラスタの状況を表示するUIツール Advanced Tech Night - ○
  • 11. 4. 基本プロダクトNo. プロダクト 概要 Apache Cloudera 名1 Common Hadoopで共通利用するライブラリ、API ○ ○2 HDFS 分散ファイルシステム ○ ○3 MapReduce 分散処理エンジン ○ ○4 HBase HDFS上で動作するKey-Value Store ○ ○5 Zookeeper Hadoop処理のコーディネータ ○ ○6 Hive SQLライクにHDFS上のデータを取得・加工す ○ ○ る7 Pig 注目! データ処理を簡単に記述するための言語I/F ○ ○8 Mahout 機械学習ライブラリ ○ -9 Avro 高速シリアライズ処理/RPCインタフェース ○ -10 Chukwa 分散大量データ収集インフラ ○ -11 Oozie ワークフローエンジン/スケジューラ - ○12 Sqoop RDBMSとHDFSのインポート/エクスポート - ○13 Flume 注 分散大量データ収集インフラ - ○ 目! 1014 Hue Hadoopクラスタの状況を表示するUIツール Advanced Tech Night - ○
  • 12. 4. 基本プロダクト (1)HDFS1. HDFSは、Hadoopが用いる分散ファイルシ ステム2. Master/Slave方式で実現されている ① Master:Namenode 全体で1プロセス ② Slave:Datanode 各ノードに1プロセスMaster設定ファイルに記述しておくだけで、自動的にDatareplicationが実行される。 Slave 11 Advanced Tech Night
  • 13. 4. 基本プロダクト (2)MapReduce1. MapReduceは、大量のデータをキーなどの情報で分 散し、多数のサーバで並列処理を行うフレームワー ク2. サーバを増設することで、処理性能を向上させるこ とができる 12 Advanced Tech Night
  • 14. 4. 基本プロダクト (3)HBase1. HDFS上に構築されたKey-Value Store2. 自動でレプリカが作成されるため、ある ノードでデータが壊れても、別のノードの データで処理が可能。3. TB~PBの大規模データの処理が可能。 13 Advanced Tech Night
  • 15. 4. 基本プロダクト (4)Hive1. SQLライクにHDFS上のデータを操作するためのコン ポーネント。2. コマンドラインからの対話形式による操作で、以下 のことが可能。 ① SQLと同様、CRUDが可能。 ② Hive用テーブルを操作するだけでなく、HDFSのファイ ルや、HDFS管理外のローカルファイルにもデータの保 存が可能。 ※ HiveQLという言語でデータを操作する。 http://www.atmarkit.co.jp/fdb/single/s_hive/hive_01.html 14 Advanced Tech Night
  • 16. 5. 応用プロダクトNo. プロダクト 概要 Apache Cloudera 名1 Common Hadoopで共通利用するライブラリ、API ○ ○2 HDFS 分散ファイルシステム ○ ○3 MapReduce 分散処理エンジン ○ ○4 HBase HDFS上で動作するKey-Value Store ○ ○5 Zookeeper Hadoop処理のコーディネータ ○ ○6 Hive SQLライクにHDFS上のデータを取得・加工す ○ ○ る7 Pig 注目! データ処理を簡単に記述するための言語I/F ○ ○8 Mahout 機械学習ライブラリ ○ -9 Avro 高速シリアライズ処理/RPCインタフェース ○ -10 Chukwa 分散大量データ収集インフラ ○ -11 Oozie ワークフローエンジン/スケジューラ - ○12 Sqoop RDBMSとHDFSのインポート/エクスポート - ○13 Flume 注 分散大量データ収集インフラ - ○ 目! 1514 Hue Hadoopクラスタの状況を表示するUIツール Advanced Tech Night - ○
  • 17. 5. 応用プロダクト (1)Pig1. MapperやReducerを記述しなくとも大規模データを処理 できるスクリプト言語。2. Pigを実行すると、裏でMapReduceのジョブに変換される ので、MapReduceのジョブを実装せずに、簡単に分散処 理を実行できる。 データフローなど、 複雑な処理を行う 場合はPig、簡単な データ操作を行う 場合はHiveを使用 するとよい。 16 Advanced Tech Night
  • 18. 5. 応用プロダクト (1)Pig1. サンプル(年間最高気温を求める) ① データファイル ファイル名:temperature.csv フォーマット:年 月 日 気温 2000 1 1 5 2000 1 2 6 2000 8 1 30 … 2010 12 31 5 ② スクリプト records = LOAD ‘temperature.csv’ AS (year:int, month:int, day:int, temperature:int); grouped_records = GROUP records by year; max_tempepature = FOREACH grouped_records GENERATE group, MAX(records.tempetature); DUMP max_temp; 17 Advanced Tech Night
  • 19. 5. 応用プロダクト (2)Mahout1. Hadoop上で動作する機械学習ライブラリ ① 実装している機械学習アルゴリズムの例 • Taste CF(協調フィルタリング) • MapReduce に対応した、いくつかのクラスタリング実装 (K平均法、ファジィK平均法、Canopy、ディリクレ、平均シ フトなど) • 分散型単純ベイズ分類器と補完型単純ベイズ分類器の実装 • 進化的プログラミングのための分散型適応度関数機能 • 行列ライブラリーとベクトル・ライブラリー ② 具体的な用途 • リコメンドエンジン • スパムメール・フィルタリング2. 機械学習のタスク実行にMapReduceを用いるこ とでスケーラビリティを確保している。 18 Advanced Tech Night
  • 20. 5. 応用プロダクト (3)Sqoop1. RDB-HDFS間でデータのコピーを行うため のツール。2. RDBからHDFSにデータをインポートし、 Hiveを使って解析する、といった使い方が 可能。 19 Advanced Tech Night
  • 21. 5. 応用プロダクト (4)Flume1. 分散環境での大量データ収集のインフラ ① データマイニング等の分野において、agentか らデータをHDFSに収集する必要がある。 ② Flumeは、信頼性・スケーラビリティの高い データ収集インフラを提供する。 20 Advanced Tech Night
  • 22. 6. 組合せてできること 大量データ収集と解析 1. センサーネットワークから大量のデータを収集する。 2. 収集したデータの解析を行う。 → Flume – HDFS – Pig を組合せることで、実現でき る 適用例 1. センサーネット ワークからの データ収集・解 析 2. 大規模システム のログ収集・解 析 21 Advanced Tech Night
  • 23. 8. 最後に改めて、、、 Hadoop群 > MapReduce 22 Advanced Tech Night
  • 24. 8. 最後に Enjoy Your Hadoop Life!ご静聴ありがとうございまし た。 23 Advanced Tech Night