Recommended
PDF
AWS SDK for Go in #jawsmeguro
PDF
Jenkinsとhadoopを利用した継続的データ解析環境の構築
PDF
PDF
PDF
AWS Lambdaで作るクローラー/スクレイピング
PDF
PPTX
PDF
Chefを利用した運用省力化とDevOpsの取り組みについて
PDF
PDF
社内向けTech Talk資料~Fluentdの基本紹介~
PDF
PDF
Service worker が拓く mobile web の新しいかたち
PPT
PDF
PDF
PDF
PDF
3分でわかる(気になれる) AWS OpsWorks
PDF
PPTX
PPTX
WebAssemblyとBlazor 、WebAssembly System Interfaceでコンテナライズの設計を解説
PPTX
PDF
Ansible AWXで一歩進んだプロビジョニング
PPTX
PDF
PDF
Build insider testingwithvs
PDF
re:invent 2016 新サービスで変わる AWS運用
PDF
REST with Spring Boot #jqfk
KEY
PPTX
Head First Ad Technology and DMP
PPTX
More Related Content
PDF
AWS SDK for Go in #jawsmeguro
PDF
Jenkinsとhadoopを利用した継続的データ解析環境の構築
PDF
PDF
PDF
AWS Lambdaで作るクローラー/スクレイピング
PDF
PPTX
PDF
Chefを利用した運用省力化とDevOpsの取り組みについて
What's hot
PDF
PDF
社内向けTech Talk資料~Fluentdの基本紹介~
PDF
PDF
Service worker が拓く mobile web の新しいかたち
PPT
PDF
PDF
PDF
PDF
3分でわかる(気になれる) AWS OpsWorks
PDF
PPTX
PPTX
WebAssemblyとBlazor 、WebAssembly System Interfaceでコンテナライズの設計を解説
PPTX
PDF
Ansible AWXで一歩進んだプロビジョニング
PPTX
PDF
PDF
Build insider testingwithvs
PDF
re:invent 2016 新サービスで変わる AWS運用
PDF
REST with Spring Boot #jqfk
KEY
Viewers also liked
PPTX
Head First Ad Technology and DMP
PPTX
PDF
Rtbマネタイズセミナー@(20120324、abc2012)資料
PDF
PDF
20121019-jenkins-akiko_pusu.pdf
PDF
AWSを活用したリアルタイム広告の入札・配信・ログ解析 #hcj13w
PDF
FluentdやNorikraを使った データ集約基盤への取り組み紹介
PPTX
PDF
クラウド技術を活用したリアルタイム広告 Logicad の入札・配信・ログ解析 #awssummit
PDF
AWS Blackbelt 2015シリーズ Amazon CloudWatch & Amazon CloudWatch Logs
PPTX
PDF
PPTX
Elasticsearch+nodejs+dynamodbで作る全社システム基盤
PDF
PDF
PDF
【データアーティスト株式会社】5歳の娘でもわかるDMP
Similar to Jenkinsとhadoopを利用した継続的データ解析環境の構築
PDF
[AWS Summit 2012] クラウドデザインパターン#1 CDP概要編
PDF
「はじめてのAmazon Web Services」 JAWS-UG 長崎第1回勉強会
PPTX
NoSQL on AWSで作る最新ソーシャルゲームアーキテクチャ
PPTX
PDF
PDF
20120303 jaws summit-meister-01_ec2-ebs
PDF
PDF
Amazon Web Services 最新事例集
PDF
[AWSマイスターシリーズ] Amazon Elastic Compute Cloud (EC2)
PDF
Amazon Web Servicesのご紹介 - 東北クラウド実践カンファレンス2011
PDF
アマゾンクラウド実践講座 in 福岡/山口クラウドセミナー 20101208
PDF
突発イベントにおけるEC2の極力排除ならびにサービス徹底活用
PDF
PDF
仮想サーバーEC2 & EBS詳細 -ほぼ週刊AWSマイスターシリーズ "Reloaded"-
PDF
Awsではじめるgluster fs 20120726-public
PDF
PDF
[AWS Summit 2012] クラウドデザインパターン#7 CDP キャンペーンサイト編 (Wordpress)
PDF
PDF
華麗なるElastic Beanstalkでの環境構築
PDF
Recently uploaded
PDF
PCCC25(設立25年記念PCクラスタシンポジウム):東京大学情報基盤センター テーマ1/2/3「Society5.0の実現を目指す『計算・データ・学習...
PDF
第25回FA設備技術勉強会_自宅で勉強するROS・フィジカルAIアイテム.pdf
PDF
安価な ロジック・アナライザを アナライズ(?),Analyze report of some cheap logic analyzers
PDF
visionOS TC「新しいマイホームで過ごすApple Vision Proとの新生活」
PDF
基礎から学ぶ PostgreSQL の性能監視 (PostgreSQL Conference Japan 2025 発表資料)
PPTX
Jenkinsとhadoopを利用した継続的データ解析環境の構築 1. 2. Meta Information
• 2006.4 – 2012.3
– Keio University
• Artificial Intelligence, Semantic Web, Ontology Engineering
• 2011.2 – 2012.3
– CTO at Trippiece, Inc.
• Software Engineering
• 2012.4 –
– Engineer at adingo, Inc.
• Data Analysis, Operation Engineering
twitter: @suzu_v
http://blog.kentasuzuki.net
3. 4. 5. 6. 7. 解析をする上での
悩みがあります。
http://www.flickr.com/photos/darwinbell/5827849044/sizes/o/in/photostream/
8. 9. 10. 11. Audience Data
+
Data of Service
http://www.flickr.com/photos/chef_ele/3791289276/sizes/l/in/photostream/
12. 枠から
人へ 性別
年齢
居住
?
職業
興味
趣向
http://www.flickr.com/photos/catikaoe/232832224/sizes/o/in/photostream/
13. LOG
impression
click
conversion
ログにはいくつかの種類があります。
フォーマットが違います。
14. 毎秒 様々なスパンでログと向き合います。
毎分
毎時
months
毎日 weeks
毎週 days
毎月 hours
minutes
http://www.flickr.com/photos/gadl/284995199/sizes/o/in/photostream/
seconds
15. 16. ログの向こう側を見る
http://www.flickr.com/photos/eole/1394588888/sizes/o/in/photostream/
17. 18. 19. 20. 21. Adnetworks
media
Web Sites
SSP
DSP
行動ログ
Amazon Elastic
Load Balancing
行動ログコレクタ(Web) オーディエンスデータ
Web API
… …
EC2 EC2 EC2 EC2 EC2 EC2
Auto scaling Group Auto scaling Group
Amazon Simple Amazon Elastic
オーディエンスデータDB
Storage Service MapReduce
(MongoDB)
(S3) ログ解析バッチ
http://aws.amazon.com/jp/solutions/case-studies/adingo/
22. 23. 24. 25. 26. -- EX.) schema of access log
CREATE EXTERNAL TABLE access_log (
stamp bigint,
ipaddress string,
request_status string,
latency string,
user_agent string,
referer string,
response_out_byte int,
input_byte int,
connection string,
status string
)
PARTITIONED BY (dt string)
STORED AS SEQUENCEFILE
LOCATION 's3n://sample-bucket/access_log/';
ひと目でスキーマがわかります。
27. -- defining table for output daily referer count by pages.
CREATE EXTERNAL TABLE daily_referer_count (
referer string,
referer_count int
)
ROW FORMAT DELIMITED FIELDS TERMINATED BY 't'
STORED AS TEXTFILE
LOCATION 's3n://sample-
bucket/reports/${EVENTDATE}/daily_referer_count_rankin
g’;
例えばアクセスログからリファラを分析する際には
上のようなテーブルを作り、
28. 集計します。
この場合だと、結果はS3に格納されます。
-- aggregation daily count of each referer.
INSERT OVERWRITE TABLE daily_referer_count
SELECT referer, count(*) AS referer_count FROM
access_log WHERE dt="${EVENTDATE}"
GROUP BY referer
DISTRIBUTE BY referer SORT BY referer_count DESC,
referer ASC
LIMIT 100;
29. 30. 31. 32. 33. 34. 解析にもJenkinsを
• Jenkinsの特徴
– インストール、セットアップが簡単
– ジョブ設定、通知が容易
• 「何が起こった時に何をして何を通知するか」
– プラグイン拡張
• Jenkinsの主な役割
– 継続的なビルド及びテスト
– 外部ジョブの監視
Welcome to Jenkins CI! | Jenkins CI http://jenkins-ci.org/
35. 36. 37. push
Team mirroring
githubにコードがpushされると、
ローカルのmirrorリポジトリにfetchします。
初期化時
$ git clone --mirror git@github.com:hoge/repos.git
更新時
$ git remote update
38. push
Team mirroring
:release
ビ
ル
ド
パ
イ
プ
ラ
イ
ン
:master
Jenkinsにはビルドパイプラインが構築してあり、
これによってジョブフローを制御しています。
また、ブランチごとにデプロイ先を変えています。
39. push
Team mirroring
:release
ビ
ル
ド
パ
イ
プ
ラ
イ
ン
development
:master
EC2
開発環境にはmasterブランチのコードが
自動的にデプロイされます。
この際テストやマイグレーションなども
同時に行われます。
$ fab –f app_fabfile.py development deploy testing migrate
40. push production
…
Team mirroring EC2 EC2 EC2
:release Auto scaling Group
ビ preview
ル
ド
パ
イ
プ EC2
ラ AWS CloudFormation
イ
ン
development
:master
EC2
Servers belonged to certain data domain.
pre環境は都度CloudFormationで立ち上げます。
本番環境にはreleaseブランチのコードをデプロイします。
$ fab –f app_fabfile.py preview deploy migrate
$ fab –f app_fabfile.py production deploy migrate
41. push production
…
Team mirroring EC2 EC2 EC2
:release Auto scaling Group
ビ preview
ル
ド
パ
イ
プ EC2
ラ AWS CloudFormation
イ
ン
development
:master
EC2
Servers belonged to certain data domain.
.jarファイルやhiveプログラムの配置
S3
もし、MapReduceプログラムやHiveクエリであれば、
ビルド後の成果物をS3に自動的に配置します。
$ s3cmd put --recursive /path/to/workspace/* s3://example/hive/
42. push production
…
Team mirroring EC2 EC2 EC2
:release Auto scaling Group
ビ preview
ル
ド
パ
イ
プ EC2
ラ AWS CloudFormation
イ
ン
development
:master
EC2
Servers belonged to certain data domain.
.jarファイルやhiveプログラムの配置
そして実際にジョブを実行します。
S3
ジョブの実行は任意のタイミング
で行うことができます。
ジョブの実行 $ TODAY=`date +%Y/%m/%d`
$ elastic-mapreduce --create –name LogAggregation
--num-instances 10 --instance-type m1.small
--hive-script --arg s3://example/hive/query/1st_step.q
Amazon Elastic
MapReduce
--args -d,EVENTDATE=$TODAY --step-name FirstStep
--hive-script --arg s3://example/hive/query/2nd_step.q
--args -d,EVENTDATE=$TODAY --step-name SecondStep
43. 44. 45. 検討
! 計測 仮説
実装
失敗したらすぐに修正したいものです。
失敗したことを、すぐに知ることが大事です。
46. 47. 48. ./elastic-mapreduce
Amazon Elastic
MapReduce
Trigger
Parameterized
Build
param:job_id
ジョブ実行後、job_idをパラメータとして渡し、
新たなジョブを実行します。
49. ./elastic-mapreduce
Amazon Elastic
MapReduce
Trigger
Parameterized
Build
param:job_id
monitoring
state of the job
新しいジョブによってMapReduceジョブを監視します。
50. ./elastic-mapreduce
FAILED.
Amazon Elastic
MapReduce
Trigger
Parameterized
Build
param:job_id
monitoring
state of the job
仮にここで、ジョブが何らかの原因で失敗したとします。
51. ./elastic-mapreduce
FAILED.
Amazon Elastic
MapReduce
Trigger
Parameterized
Build
param:job_id
Getting Log
監視ジョブが失敗したことを検知し、
Elastic MapReduceからapi経由でログを取得します。
52. ./elastic-mapreduce
Amazon Elastic
MapReduce
Trigger
Parameterized
Build
param:job_id
Getting Log
mail, IRC, etc.
including the log. ジョブが失敗したことを様々な方法で通知します。
この際にログ自体も送ります。
53. 54. 55. 時間は限られています。
しかし、
調べたいことは山積み。
http://www.flickr.com/photos/bogenfreund/556656621/sizes/o/in/photostream/
56. 57. 58. 59. 考える時間を
作りましょう。
http://www.flickr.com/photos/darwinbell/5827849044/sizes/o/in/photostream/
60. 61. 検討
計測 仮説
実装
素早く回し、調べ、考え、またすぐに試しましょう。
継続的な解析ができる環境をつくりましょう。
62. 解析にも
継続的デリバリを
http://www.flickr.com/photos/columna/236353428/sizes/l/in/photostream/
63. 64. Jenkinsについて
• Welcome to Jenkins CI! | Jenkins CI
– http://jenkins-ci.org/
– 公式サイトです。
• Parameterized Build - Jenkins - Jenkins Wiki
– https://wiki.jenkins-ci.org/display/JENKINS/Parameterized+Build
– パラメータをジョブに渡して実行する方法について書かれています。
• Parameterized Trigger Plugin - Jenkins - Jenkins Wiki
– https://wiki.jenkins-ci.org/display/JENKINS/Parameterized+Trigger+Plugin
– パラメータをジョブからジョブに渡して実行するためのプラグインです。MapReduceジョブの監視のためにjob_idを
渡す際にはこれを利用して監視用ジョブを立ち上げています。
• Build Pipeline Plugin - Jenkins - Jenkins Wiki
– https://wiki.jenkins-ci.org/display/JENKINS/Build+Pipeline+Plugin
– ビルドパイプラインを構築するためのプラグインです。ジョブの一連の流れを設定するために利用しています。基本
的にデプロイやMapReduceに関するジョブについてはgit commitを起点としたパイプラインに配置するようにしてい
ます。
• IRC Plugin - Jenkins - Jenkins Wiki
– https://wiki.jenkins-ci.org/display/JENKINS/IRC+Plugin
– IRCによる通知のためのプラグインです。
• Email-ext plugin - Jenkins - Jenkins Wiki
– https://wiki.jenkins-ci.org/display/JENKINS/Email-ext+plugin
– Jenkinsによるメール通知の機能を拡張するプラグインです。
• O'Reilly Japan - Jenkins
– http://www.oreilly.co.jp/books/9784873115344/
– オライリー・ジャパンから出版されているJenkins本です。Parameterized Triggerの設定の際に参考にしました。
65. Elastic MapReduceについて
• Amazon Elastic MapReduce Ruby Client : Developer Tools :
Amazon Web Services
– http://aws.amazon.com/developertools/2264
– 全てのジョブのコントロールはコマンドラインツールを利用していま
す。Jenkinsからのディスパッチについてもこれを利用しています。
• Running Hive on Amazon Elastic MapReduce : Articles & Tutorials :
Amazon Web Services
– http://aws.amazon.com/articles/2857
– Elastic MapReduce上でのHiveの利用に関する資料がまとまっています。
• Contextual Advertising using Apache Hive and Amazon EMR :
Articles & Tutorials : Amazon Web Services
– http://aws.amazon.com/articles/2855
– Hiveによる分析の実例が示されています。一連の流れが書かれている
ので、実際に試して見る場合には参考になると思います。
66. Apache Hiveについて
• Programming Hive - O'Reilly Media
– http://shop.oreilly.com/product/063692002355
5.do
– Hiveに関する仕様がよくまとまっています。
もちろんWeb上やJIRAで参照できる内容がほ
とんどですが、手元においておくと安心です。
67. Fabricについて
• Github: fabric/fabric
– https://github.com/fabric/fabric
– デプロイにはfabricを利用しています。python
製のデプロイツールです。
• Fabric documentation
– http://docs.fabfile.org/
– 公式のドキュメントです。やはりここが一番
情報が多いです。ただ実践的にどのように使
うか、という点に関しては情報がまだまだ少
ないです。
68. cosmi Relationship Suiteについて
• adingo、ディスプレイ広告枠活用型のCRMサービ
ス「cosmi Relationship Suite」を開発
– http://pressrelease.adingo.jp/news/2012/07/adingocr
mcosmi--7f06.html
– cosmi Relationship Suiteのプレスリリースです。
• 【実はよく知らない】オーディエンスデータプ
ラットフォームってなに?
– https://www.facebook.com/note.php?note_id=222292
327824741
– DMP、または、オーディエンスデータプラット
フォームについてまとめた記事です。
69. その他
• 継続的デリバリのパターン
– http://www.infoq.com/jp/articles/Continous-
Delivery-Patterns
– 継続的デリバリについてよくまとまっていま
す。私達の行なっている継続的デリバリは簡
易的なものです。Jenkinsなどのツールを利用
することで、比較的容易に環境を構築するこ
とができます。