EMR勉強会発表資料                   アクセスログ解析システム構築事例                    インフラ設計編/アプリ設計編                                        201...
Agenda  インフラ設計編 (by 津久井)       •      EMRを利用したシステム構成例       •      Hadoop/EMRのインフラ設計のポイント  アプリ設計編 (by 石田)       •      H...
インフラ設計編Copyright ©2011 by Velc, Inc. Japan
自己紹介               津久井浩太郎 (@quarterkota) •ITコンサル(4年半) → ITベンチャー(2年) → 起業(昨年末) •もともとは基幹系を中心としたインフラ畑出身 •現在はPMや営業や事業企画等の何でも屋状...
EMRを利用したシステム構成例                    ログ計測                       集計管理(UI・EMR制御)                    ELB/EC2                   ...
EMRを利用したシステム構成例                    ログ計測                       集計管理(UI・EMR制御)                    ELB/EC2                   ...
EMRを利用したシステム構成例              1.利用時のみ起動するインスタンス群                       → 運用コストを安価に                                      Had...
EMRを利用したシステム構成例                    ログ計測                       集計管理(UI・EMR制御)                    ELB/EC2                   ...
EMRを利用したシステム構成例                                      集計管理(UI・EMR制御)                                      ELB/EC2/EBS/RDS  ...
EMR選定時に気をつけること                                       大量データ                                       バッチ集計                    ...
アプリ設計編Copyright ©2011 by Velc, Inc. Japan
自己紹介• 石田 智志(@o918)• 広告系システム会社(4年程) → VELC(9ヶ月目)• B to Bのシステムの開発 → AWS周りの検証and開発• 好きなAWSサービス → EC2Copyright ©2011 by Velc, ...
Hiveについて• MapReduceのラッパー• SQL(HiveQL)で操作ができる  http://www.atmarkit.co.jp/fdb/single/s_hive/hive_01.html  http://hive.apache...
アプリ実装事例 ~データ蓄積~• RDBのようにTableを作成しINSERTでデータ挿入可                                      hive> CREAET TABLE ...                ...
アプリ実装事例 ~データ蓄積~ • データ格納イメージHive TABLE 構成                          S3 構成                                        バケット       ...
アプリ実装事例 ~データ抽出~• RDBのように操作できるのでSELECTでデータ抽出                                      hive> SELECT * FROM ...• Hadoop(EMR)が常時起動...
アプリ実装事例 ~データ抽出~• Hadoop Hive環境が立ち上がったのでデータ抽出                                      hive> SELECT * FROM ...• Hive上にTableとデータ...
アプリ実装事例 ~データ抽出~• Hadoop Hive環境 + S3 DATA                                      hive> SELECT * FROM ...• SELECTの出力先をS3に指定hiv...
アプリ実装事例 ~その他~• EMRエラーハンドリング• EMR完了確認• EMR起動制限Copyright ©2011 by Velc, Inc. Japan
ご清聴ありがとうございました                                      enjoy life and creationCopyright ©2011 by Velc, Inc. Japan
Upcoming SlideShare
Loading in...5
×

20111215_第1回EMR勉強会発表資料

3,059

Published on

2011/12/15にお台場にて行われた第1回EMR勉強会で発表した資料です。

Published in: Technology
0 Comments
5 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
3,059
On Slideshare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
18
Comments
0
Likes
5
Embeds 0
No embeds

No notes for slide

20111215_第1回EMR勉強会発表資料

  1. 1. EMR勉強会発表資料 アクセスログ解析システム構築事例 インフラ設計編/アプリ設計編 2011/12/15 ヴェルク株式会社 津久井 浩太郎 石田 智志Copyright ©2011 by Velc, Inc. Japan
  2. 2. Agenda  インフラ設計編 (by 津久井) • EMRを利用したシステム構成例 • Hadoop/EMRのインフラ設計のポイント  アプリ設計編 (by 石田) • Hiveについて • アプリケーション実装事例Copyright ©2011 by Velc, Inc. Japan
  3. 3. インフラ設計編Copyright ©2011 by Velc, Inc. Japan
  4. 4. 自己紹介 津久井浩太郎 (@quarterkota) •ITコンサル(4年半) → ITベンチャー(2年) → 起業(昨年末) •もともとは基幹系を中心としたインフラ畑出身 •現在はPMや営業や事業企画等の何でも屋状態 •好きなAWSのサービスはRDS •最近はまってるサービスはVPC •スキーとダイビングが好きCopyright ©2011 by Velc, Inc. Japan
  5. 5. EMRを利用したシステム構成例 ログ計測 集計管理(UI・EMR制御) ELB/EC2 ELB/EC2/EBS/RDS EBS/AutoScale アクセスログデータの生成 起動/制御 Hadoop Job EMR ログ 集計条件に従った集計処理 取り込み ログ 集計結果 取り込み 取り込み データストア(アクセスログ、集計結果CSVの保存) S3Copyright ©2011 by Velc, Inc. Japan
  6. 6. EMRを利用したシステム構成例 ログ計測 集計管理(UI・EMR制御) ELB/EC2 ELB/EC2/EBS/RDS EBS/AutoScale アクセスログデータの生成 起動/制御 Hadoop Job EMR ログ 集計条件に従った集計処理 取り込み ログ 集計結果 取り込み 取り込み データストア(アクセスログ、集計結果CSVの保存) S3Copyright ©2011 by Velc, Inc. Japan
  7. 7. EMRを利用したシステム構成例 1.利用時のみ起動するインスタンス群 → 運用コストを安価に Hadoop Job EMR 集計条件に従った集計処理Copyright ©2011 by Velc, Inc. Japan
  8. 8. EMRを利用したシステム構成例 ログ計測 集計管理(UI・EMR制御) ELB/EC2 ELB/EC2/EBS/RDS EBS/AutoScale アクセスログデータの生成 起動/制御 Hadoop Job EMR ログ 集計条件に従った集計処理 取り込み ログ 集計結果 取り込み 取り込み データストア(アクセスログ、集計結果CSVの保存) S3Copyright ©2011 by Velc, Inc. Japan
  9. 9. EMRを利用したシステム構成例 集計管理(UI・EMR制御) ELB/EC2/EBS/RDS 起動/制御 2.EMRインスタンス群の起動状況の監視/管理 →EMRの安定運用Copyright ©2011 by Velc, Inc. Japan
  10. 10. EMR選定時に気をつけること 大量データ バッチ集計 スモールスタートCopyright ©2011 by Velc, Inc. Japan
  11. 11. アプリ設計編Copyright ©2011 by Velc, Inc. Japan
  12. 12. 自己紹介• 石田 智志(@o918)• 広告系システム会社(4年程) → VELC(9ヶ月目)• B to Bのシステムの開発 → AWS周りの検証and開発• 好きなAWSサービス → EC2Copyright ©2011 by Velc, Inc. Japan
  13. 13. Hiveについて• MapReduceのラッパー• SQL(HiveQL)で操作ができる http://www.atmarkit.co.jp/fdb/single/s_hive/hive_01.html http://hive.apache.org/Copyright ©2011 by Velc, Inc. Japan
  14. 14. アプリ実装事例 ~データ蓄積~• RDBのようにTableを作成しINSERTでデータ挿入可 hive> CREAET TABLE ... > INSERT INTO ...• Hadoop(EMR)が常時起動していない• S3上にデータをアップロードCopyright ©2011 by Velc, Inc. Japan
  15. 15. アプリ実装事例 ~データ蓄積~ • データ格納イメージHive TABLE 構成 S3 構成 バケット ACCESS_LOG ACCESS_LOG※テーブル ACCESS_YM=201111※パーテーション • ACCESS_DATETIME ACCESS_YM=201112※パーテーション • REMOTE_IP ログ1 • USER_AGENT ログ2 • URL2011-12-14 19:00:00,xxx.xxx.xxx.xxx,iPhone,http://velc.biz/,http://velc.jp/ • REFERER2011-12-14 19:00:10,xxx.xxx.xxx.xxx,IE,http://velc.com/,http://velc.jp/ • ACCESS_YM2011-12-14 19:10:00,xxx.xxx.xxx.xxx,firefox,http://velc.co.jp/, (パーテーション)2011-12-14 19:12:30,xxx.xxx.xxx.xxx,chorme,http://velc.ne.jp/,... Copyright ©2011 by Velc, Inc. Japan
  16. 16. アプリ実装事例 ~データ抽出~• RDBのように操作できるのでSELECTでデータ抽出 hive> SELECT * FROM ...• Hadoop(EMR)が常時起動していない• API経由でEMRを起動(Ruby Client) $ elastic-mapreduce --create --name *** --num-instances * --instance-type m1.small --hive-interactiveCopyright ©2011 by Velc, Inc. Japan
  17. 17. アプリ実装事例 ~データ抽出~• Hadoop Hive環境が立ち上がったのでデータ抽出 hive> SELECT * FROM ...• Hive上にTableとデータが存在しない• CREATE文でTableの作成とS3上のデータをロード hive> CREATE EXTERNAL ACCESS_LOG (ACCESS_DATETIME STRING,...) PARTITIONED BY (ACCESS_YM STRING) ... LOCATION s3://バケット/ACCESS_LOG/; > ALTER TABLE ACCESS_LOG RECOVER PARTITIONS;Copyright ©2011 by Velc, Inc. Japan
  18. 18. アプリ実装事例 ~データ抽出~• Hadoop Hive環境 + S3 DATA hive> SELECT * FROM ...• SELECTの出力先をS3に指定hive> INSERT OVERWRITE DIRECTORY „s3://バケット/*** SELECT ACCESS_DATETIME FROM ACCESS_LOG WHERE ...;• EMR起動時にHiveQLを指定$ elastic-mapreduce --create --name *** --num-instances *--instance-type m1.small --hive-interactive--args ¥"s3://us-west-1.elasticmapreduce/libs/hive/hive-script¥”,¥"--base-path¥",¥"s3://us-west-1.elasticmapreduce/libs/hive/¥”,¥“--run-hive-script¥”,¥“--args¥”,¥“-f¥”,¥“s3://バケット/HiveQLFile¥”Copyright ©2011 by Velc, Inc. Japan
  19. 19. アプリ実装事例 ~その他~• EMRエラーハンドリング• EMR完了確認• EMR起動制限Copyright ©2011 by Velc, Inc. Japan
  20. 20. ご清聴ありがとうございました enjoy life and creationCopyright ©2011 by Velc, Inc. Japan
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×