atn no.1 mapreduceだけでない!? hadoopとその仲間たち

24
Advanced Tech Night No.01 MapReduceだけでない!? Hadoopとその仲間たち 2011/04/22 Acroquest Technology 株式会社 束野 仁政

Upload: advancedtechnight

Post on 02-Jul-2015

3.072 views

Category:

Technology


5 download

TRANSCRIPT

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

Advanced Tech Night No.01

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

2011/04/22

Acroquest Technology 株式会社

束野 仁政

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

自己紹介

束野 仁政(つかの さとゆき) @snuffkin

Acroquest Technology 株式会社ネットワークマネージメントソリューショングループエンジニアリングデザイナー

仕事内容1. Network Management Systemの開発が中心

2. 何でもネットワークにつながり、大量データ処理を求められる時代。そこで、眼を付けているのがHadoop

趣味スポーツ観戦(生観戦の臨場感が好き)

特徴声が高い。飲むと、ますます高くなる。

1

Advanced Tech Night

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

まずは、質問

Q. 「Hadoop」って単語を聞いたことある人?

2

Advanced Tech Night

Q. Hadoopをインストールしたことがある人?

Q. HDFS、MapReduce、HBase以外のHadoopプロダクトを知っている人?

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

伝えたいこと

いわゆる

Hadoop ≒ MapReduce

3

Advanced Tech Night

Hadoop群>

MapReduce

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

目次

1. 動機

2. Hadoop概要のおさらい

3. プロダクト構成

1. ディストリビューション

2. プロダクト一覧

4. 基本プロダクト

1. HDFS

2. MapReduce

3. HBase

4. Hive4

Advanced Tech Night

5. 応用プロダクト

1. Pig

2. Mahout

3. Sqoop

4. Flume

6. 組合せてできること

7. 最後に

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

1. 動機

1. Hadoopが紹介された当初は「Hadoop = MapReduce(+HDFS,HBase)」という感じだった。

2. 大御所Clouderaを始め、Hadoopは周辺プロダ

クトが数多く開発されており、これらプロダクトを使った成果が次々と出ている。

3. ここでは、「Hadoopには、どんなプロダクトがあるか」「組合せることで、どんなことができるのか」を紹介する。

5

Advanced Tech Night

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

2. Hadoop概要のおさらい

大量データの並列分散処理基盤

安価なハードウェアを多数並列処理させることでスケーラビリティを実現する。

6

Advanced Tech Night

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

3. プロダクト構成 (1)ディストリビューション

1. Hadoopは、複数のプロダクトで構成されている

2. Hadoopは、複数のディストリビューションがある① Apache(http://hadoop.apache.org/)

→本家コミュニティ。② Cloudera社(http://www.cloudera.com/)

→エンタープライズ利用/簡単適用可能なパッケージを提供。

③ Yahoo!社(http://developer.yahoo.com/hadoop/)→Yahoo!自身で使用実績のある版。セキュリティなどを強化。

7

Hadoop≠MapReduce

Advanced Tech Night

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

3. プロダクト構成 (1)ディストリビューション

1. Cloudera社が提供するHadoopディストリビューションCDH=Cloudera's Distribution for Hadoop

8

Hue Hue SDK

Oozie Hive

Flume, Sqoop HBase

Pig/

Hive

Zookeeper

Advanced Tech Night

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

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 注目!

分散大量データ収集インフラ - ○

14 Hue Hadoopクラスタの状況を表示するUIツール - ○9

Advanced Tech Night

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

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 注目!

分散大量データ収集インフラ - ○

14 Hue Hadoopクラスタの状況を表示するUIツール - ○10

Advanced Tech Night

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

4. 基本プロダクト (1)HDFS

1. HDFSは、Hadoopが用いる分散ファイルシステム

2. Master/Slave方式で実現されている

① Master:Namenode 全体で1プロセス

② Slave:Datanode 各ノードに1プロセス

11

Master

Slave

設定ファイルに記述しておくだけで、自動的にData replicationが実行される。

Advanced Tech Night

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

4. 基本プロダクト (2)MapReduce

1. MapReduceは、大量のデータをキーなどの情報で分散し、多数のサーバで並列処理を行うフレームワーク

2. サーバを増設することで、処理性能を向上させることができる

12

Advanced Tech Night

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

4. 基本プロダクト (3)HBase

1. HDFS上に構築されたKey-Value Store

2. 自動でレプリカが作成されるため、あるノードでデータが壊れても、別のノードのデータで処理が可能。

3. TB~PBの大規模データの処理が可能。

13

Advanced Tech Night

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

4. 基本プロダクト (4)Hive

1. SQLライクにHDFS上のデータを操作するためのコンポーネント。

2. コマンドラインからの対話形式による操作で、以下のことが可能。① SQLと同様、CRUDが可能。② Hive用テーブルを操作するだけでなく、HDFSのファイ

ルや、HDFS管理外のローカルファイルにもデータの保存が可能。

※ HiveQLという言語でデータを操作する。

14

http://www.atmarkit.co.jp/fdb/single/s_hive/hive_01.html

Advanced Tech Night

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

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 注目!

分散大量データ収集インフラ - ○

14 Hue Hadoopクラスタの状況を表示するUIツール - ○15

Advanced Tech Night

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

5. 応用プロダクト (1)Pig

1. MapperやReducerを記述しなくとも大規模データを処理できるスクリプト言語。

2. Pigを実行すると、裏でMapReduceのジョブに変換されるので、MapReduceのジョブを実装せずに、簡単に分散処理を実行できる。

16

データフローなど、複雑な処理を行う場合はPig、簡単なデータ操作を行う場合はHiveを使用するとよい。

Advanced Tech Night

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

5. 応用プロダクト (1)Pig

1. サンプル(年間最高気温を求める)

① データファイルファイル名:temperature.csv フォーマット:年 月 日 気温

② スクリプト

17

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;

Advanced Tech Night

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

5. 応用プロダクト (2)Mahout

1. Hadoop上で動作する機械学習ライブラリ① 実装している機械学習アルゴリズムの例

• Taste CF(協調フィルタリング)• MapReduce に対応した、いくつかのクラスタリング実装

(K平均法、ファジィK平均法、Canopy、ディリクレ、平均シフトなど)

• 分散型単純ベイズ分類器と補完型単純ベイズ分類器の実装• 進化的プログラミングのための分散型適応度関数機能• 行列ライブラリーとベクトル・ライブラリー

② 具体的な用途• リコメンドエンジン• スパムメール・フィルタリング

2. 機械学習のタスク実行にMapReduceを用いることでスケーラビリティを確保している。

18

Advanced Tech Night

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

5. 応用プロダクト (3)Sqoop

1. RDB-HDFS間でデータのコピーを行うためのツール。

2. RDBからHDFSにデータをインポートし、Hiveを使って解析する、といった使い方が可能。

19

Advanced Tech Night

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

5. 応用プロダクト (4)Flume

1. 分散環境での大量データ収集のインフラ

① データマイニング等の分野において、agentからデータをHDFSに収集する必要がある。

② Flumeは、信頼性・スケーラビリティの高いデータ収集インフラを提供する。

20

Advanced Tech Night

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

6. 組合せてできること

大量データ収集と解析1. センサーネットワークから大量のデータを収集する。

2. 収集したデータの解析を行う。

→ Flume – HDFS – Pig を組合せることで、実現できる

適用例1. センサーネット

ワークからのデータ収集・解析

2. 大規模システムのログ収集・解析

21

Advanced Tech Night

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

8. 最後に

改めて、、、

22

Advanced Tech Night

Hadoop群>

MapReduce

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

8. 最後に

Enjoy Your Hadoop Life!

ご静聴ありがとうございました。

23

Advanced Tech Night