tokyowebminig カジュアルなhadoop

61
[TokyoWebminig] カジュアルなHadoop 2013/03/23 @teruu 1

Upload: teruo-kawasaki

Post on 28-May-2015

5.056 views

Category:

Technology


4 download

DESCRIPTION

第25回 TokyoWebmining 発表スライド

TRANSCRIPT

Page 1: TokyoWebminig カジュアルなHadoop

[TokyoWebminig]

カジュアルなHadoop2013/03/23 @teruu

1

Page 2: TokyoWebminig カジュアルなHadoop

「カジュアル」

• MongoDB

• Pentaho ETL

• QlikView

• ドットインストール

• クチコミ係長(テキストマイニングWebサービス)

ドットインストール Amazon Web Services入門 (全17回)http://dotinstall.com/lessons/basic_aws

クチコミ@係長 株式会社ホットリンクhttp://www.hottolink.co.jp/kakaricho

私の考えるカジュアルな製品・サービス

2

Page 3: TokyoWebminig カジュアルなHadoop

「カジュアルなCRM」by 分析力をコアとする企業

3

Page 4: TokyoWebminig カジュアルなHadoop

カジュアルなHadoop

• カジュアルという価値

• 初心者向け「鉄板プロセス」を提案できないか

Amazon EMR & Hive (WebHive)

4

Page 5: TokyoWebminig カジュアルなHadoop

Hadoopサブプロジェクト(一部)Core

分散ファイルシステムと汎用的な I/O(シリアライズ,Java RPC,永続的データ構造)を提供するコンポーネントとインタフェースの集合

Avro高効率かつ多言語間 RPC のためのデータシリアライゼーションシステムと,永続的データストレージ

MapReduce分散データ処理モデルおよびコモディティマシンで構成される大規模クラスタ上の実行環境

HDFSコモディティマシンで構成される大規模クラスタ上の分散ファイルシステム

Pigデータフロー言語および超大規模データセットの調査実行環境.HDFS およびMapRe-duce クラスタ上で実行される

Hbase列指向の分散データベース.HBase は階層のストレージとしてHDFS を使用 h し,MapReduce を使ったバッチ型の演算処理と,一部を読み出すクエリ(ランダムリード)をともにサポートしている

ZooKeeper高可用性分散協調サービス.分散アプリケーションを構築するのに使われる分散ロックのような基礎的な機能要素を提供する

Hive分散データウェアハウス.HDFS に保管されたデータを管理し,SQL に基づくクエリ言語(実行時に MapReduce のジョブに変換される)を提供する

「Hiveを用いたログ解析システムの構築」福田一郎著 p4より引用http://www.cyberagent.co.jp/technology/pdf/2010_3.pdf

5

Page 6: TokyoWebminig カジュアルなHadoop

参考

Hadoopファーストガイド

著者:佐々木達也

6

Page 7: TokyoWebminig カジュアルなHadoop

Amazon ElasticMapReduce(EMR)アマゾン版Hadoop

• メリット

– 環境構築が不要

– 運用が不要

– 自動的に修正、バージョンアップ

• デメリット

– コスト(従量制)

– チューニングがしづらい

7

Page 8: TokyoWebminig カジュアルなHadoop

Hive

• 特徴

– SQL(HiveQL)が利用できる

→ 利用ユーザ拡大

– 直接Mapper、Reducerも利用可能

8

Page 9: TokyoWebminig カジュアルなHadoop

Amazon WebServices (AWS)&

Elastic MapReduce (EMR)

登録手順

9

Page 10: TokyoWebminig カジュアルなHadoop

AWSのトップページにアクセス

10

Page 11: TokyoWebminig カジュアルなHadoop

キャンペーンの紹介

11

Page 12: TokyoWebminig カジュアルなHadoop

アカウント作成

12

Page 13: TokyoWebminig カジュアルなHadoop

アカウント情報入力

13

Page 14: TokyoWebminig カジュアルなHadoop

クレジットカード情報入力

14

Page 15: TokyoWebminig カジュアルなHadoop

電話番号入力

15

Page 16: TokyoWebminig カジュアルなHadoop

暗証番号

16

Page 17: TokyoWebminig カジュアルなHadoop

電話がかかってくる

17

Page 18: TokyoWebminig カジュアルなHadoop

認証中

18

Page 19: TokyoWebminig カジュアルなHadoop

サービス一覧

19

Page 20: TokyoWebminig カジュアルなHadoop

EMRの利用開始

20

Page 21: TokyoWebminig カジュアルなHadoop

21

利用可能なサービス

Page 22: TokyoWebminig カジュアルなHadoop

サービス一覧

22

Page 23: TokyoWebminig カジュアルなHadoop

バケット(ディレクトリ)作成

23

Page 24: TokyoWebminig カジュアルなHadoop

バケット作成

24

Page 25: TokyoWebminig カジュアルなHadoop

バケット作成

25

Page 26: TokyoWebminig カジュアルなHadoop

バケットの中にフォルダ作成

26

Page 27: TokyoWebminig カジュアルなHadoop

EC2のインスタンスを起動

27

Page 28: TokyoWebminig カジュアルなHadoop

イメージ選択→Amazon Linux AMI

28

Page 29: TokyoWebminig カジュアルなHadoop

インスタンスタイプ選択→マイクロ

29

Page 30: TokyoWebminig カジュアルなHadoop

インスタンスタイプ一覧

30

Page 31: TokyoWebminig カジュアルなHadoop

インスタンス 追加オプション

31

Page 32: TokyoWebminig カジュアルなHadoop

32

Page 33: TokyoWebminig カジュアルなHadoop

タグ付

33

Page 34: TokyoWebminig カジュアルなHadoop

キーペア作成

34

Page 35: TokyoWebminig カジュアルなHadoop

ファイアウォール設定

35

Page 36: TokyoWebminig カジュアルなHadoop

インスタンス起動

36

Page 37: TokyoWebminig カジュアルなHadoop

インスタンス起動中

37

Page 38: TokyoWebminig カジュアルなHadoop

インスタンス一覧

38

Page 39: TokyoWebminig カジュアルなHadoop

TeraTermで接続(ssh)

39

Page 40: TokyoWebminig カジュアルなHadoop

40

Page 41: TokyoWebminig カジュアルなHadoop

ID入力+キー指定

41

Page 42: TokyoWebminig カジュアルなHadoop

sshで接続

42

Page 43: TokyoWebminig カジュアルなHadoop

パッケージをアップデート

43

Page 44: TokyoWebminig カジュアルなHadoop

EMR JobFlow作成

44

Page 45: TokyoWebminig カジュアルなHadoop

Job名入力、バージョン指定

45

Page 46: TokyoWebminig カジュアルなHadoop

入出力場所の指定

46

Page 47: TokyoWebminig カジュアルなHadoop

インスタンスタイプ指定

47

Page 48: TokyoWebminig カジュアルなHadoop

その他のオプション指定

48

Page 49: TokyoWebminig カジュアルなHadoop

Job作成

49

Page 50: TokyoWebminig カジュアルなHadoop

ブートストラップアクション指定

50

Page 51: TokyoWebminig カジュアルなHadoop

JobFlow作成完了

51

Page 52: TokyoWebminig カジュアルなHadoop

しばらく待つ → 利用可能に

52

Page 53: TokyoWebminig カジュアルなHadoop

Hiveについて

53

Page 54: TokyoWebminig カジュアルなHadoop

Hiveとは

• 2008年にFaceBookで開発され、Hadoopプロジェクトに寄贈される。

• Yahoo!で開発しているPigのライバルプロジェクト?

• 一言で表すとHadoop上で動作するデータウエアハウス。

• HiveQLというSQLのような言語でHDFSなどの分散ファイルシステム上のデータを操作できる。

• HiveQLの実行でMap/Reduce処理が完了する。

• 私見だが複雑なデータのMapReduceから特定のデータを抽出したい場合には便利かも。

Hadoopをより便利に使う!HiveでのMapReduceまとめ ‐ Yuta.Kikuchiの日記http://d.hatena.ne.jp/yutakikuchi/20111219/1324251034 より引用

54

Page 55: TokyoWebminig カジュアルなHadoop

Hadoop & Hive の特徴

Hadoop & HiveDB

アプライアンス

RDB OLTP系

スループット

レイテンシー

高 低

55

Page 56: TokyoWebminig カジュアルなHadoop

Hiveの設定

HiveQL構文(DDL)HiveQL構文(SQL)など、下記のブログ記事が参考になります

Hadoopをより便利に使う!HiveでのMapReduceまとめ - Yuta.Kikuchiの日記http://d.hatena.ne.jp/yutakikuchi/20111219/1324251034

56

Page 57: TokyoWebminig カジュアルなHadoop

Hiveのデータ型

Hadoop/Hive SQLライクなクエリを使ってビッグデータ解析(前編) | Opentone Labs.http://labs.opentone.co.jp/?p=1860 より引用 57

Page 58: TokyoWebminig カジュアルなHadoop

WebHiveについて

58

Page 59: TokyoWebminig カジュアルなHadoop

WebHive (githubで公開)

59リクルート社が開発・公開

Page 60: TokyoWebminig カジュアルなHadoop

WebHiveの画面

60

Page 61: TokyoWebminig カジュアルなHadoop

発表のまとめ

• 初心者向け「鉄板プロセス?」として、EMR&Hive&WebHiveの組合わせをご紹介

• 「カジュアル」と言いながら、進めてみるとなかなか一筋縄ではいかないことが明らかに

• 一方で、課題解決のためのポイントがおぼろげながら見えてきた

61