Data Management Platform構築におけるRedshift徹底活用 in #TokyoWebmining 29th
-
Upload
takahiro-ikeuchi -
Category
Technology
-
view
5.787 -
download
6
description
Transcript of Data Management Platform構築におけるRedshift徹底活用 in #TokyoWebmining 29th
Data Management Platform構築における Redshift 活用事例
inTokyo Webmining 29th
@iktakahiro2013-09-21
1
Agenda• 自己紹介(1分30秒)• DMP概略 (5分30秒)- Data Management Platform とは- ALBERTの考えるDMP構成要素- DMP構成例
• Redshift活用事例 (15分)- Amazon Redshift とは- Redshift 活用事例- Redshiftノウハウを赤裸々に
• スーパーデモタイム(時間調整)• まとめ (3分)
2
Agenda• 自己紹介(1分30秒)• DMP概略 (5分30秒)- Data Management Platform とは- ALBERTの考えるDMP構成要素- DMP構成例
• Redshift活用事例 (15分)- Amazon Redshift とは- Redshift 活用事例- Redshiftノウハウを赤裸々に
• スーパーデモタイム(時間調整) • まとめ (3分)
イマココ
3
自己紹介
•株式会社ALBERT•分析力をコアとする マーケティングソリューションカンパニー
•池内 孝啓 / システム開発部 部長•@iktakahiro
4
開発・分析環境
5
Java R Python VMS SPSS fluentd Javascript awk bash Mahout
Play_framework AngularJS JenkinsEC2 Redshift CloudFront MySQL MariaDB
PostgreSQL Redis Mercurial
#TokyoWebmining 13th-Mahout・大規模解析・ビジネス展開 祭り-
の2011年07月以来でした...
大変ご無沙汰しておりました
6
Agenda• 自己紹介(1分30秒)• DMP概略 (5分30秒)- Data Management Platform とは- ALBERTの考えるDMP構成要素- DMP構成例
• Redshift活用事例 (15分)- Amazon Redshift とは- Redshift 活用事例- Redshiftノウハウを赤裸々に
• スーパーデモタイム(時間調整)• まとめ (3分)
イマココ
7
DMP概略
8
Data Management Platform とは
•組織がデータを活用するための基盤•完全に整理体系化されているわけではないが、 - 広告DMP - プライベートDMP - 蓄積データ自体を商材とするDMPなどがある。
今回はプライベート・DMPにフォーカス9
プライベート・DMPビッグデータ データ分析
データサイエンティスト アドテクDWH データ統合 DSP
マーケティング トリプルメディアデータ活用
etc...
10
プライベート・DMPの要素
•データウェアハウス (DWH)•データマイニングエンジン•キャンペーンマネジメント•DSP(※広告主側広告効果支援システム)•ビジネスインテリジェンス(BI)
11
ALBERT x プライベート・DMP•2013年05月ニュースリリース「ALBERT、データマネジメントプラットフォーム構築サービスを提供~ペタバイト規模対応、超並列、カラムナ型(*1)のクラウドデータベース、Amazon RedshiftをDWHに活用~ http://www.albert2005.co.jp/release/archives/201305/28_110038.html
12
13
メールマーケティングにおけるDMP構成例
DWH
顧客マスタ
Web閲覧ログ
メール開封ログ
メール配信システム
最適なメール14
Web・メールマーケティングにおけるDMP構成例
DWH
顧客マスタ
Web購買ログ
メール経由購買ログ
メール配信システム
レコメンデーションエンジン
Webレコメンデーション
15
Agenda• 自己紹介(1分30秒)• DMP概略 (5分30秒)- Data Management Platform とは- ALBERTの考えるDMP構成要素- DMP構成例
• Redshift活用事例 (17分)- Amazon Redshift とは- Redshift 活用事例- Redshiftノウハウを赤裸々に
• スーパーデモタイム(時間調整)• まとめ (1分)
イマココ
16
Redshift活用事例
17
Amazon Redshift とは
•クラウドコンピューティングサービスであるAmazon Web Service(AWS)が提供するクラウド型データウェアハウス(DWH)
•2TB, 15GBメモリの最小構成で $900~•容量・性能のスケールアウトが可能
AmazonRedshift
18
Amazon Redshift とは
• 大規模ログ分析における Amazon Web Servicesの活用(第27回TokyoWebmining 講演資料) by Shintaro Takemura
http://www.slideshare.net/stakemura/20130622-tokyo-webminingpublic
AmazonRedshift
19
プライベート・DMPの要素
•データウェアハウス (DWH)•データマイニングエンジン•キャンペーンマネジメント•DSP(※広告主側広告効果支援システム)•ビジネスインテリジェンス(BI)
AmazonRedshift
20
AWS x DMP
Redshiftログデータマスタデータ
マルチチャネル展開
S3
Glacier
Web / メールDM / DSP
BI
効果測定データ
21
補足:
• ストレージサービス• 容量の実質無制限拡張• 堅牢性の担保
Amazon S3
Amazon S3
Amazon Glacier
AmazonGlacier
• データの閉架書庫的な• S3と連携できる
22
なぜRedshiftが有効か?
23
•多くは自社サービスのデータではなく、他社の- ECサイト行動ログ- POSデータ- マスタデータなど
ALBERTの取り扱うログの傾向
24
DB1 DB2 DB3 DB4
PCサイト顧客マスタ
カタログ顧客マスタ 商品マスタ 購買ログ
DB5
メール開封ログ
AmazonRedshift
統合DWH
25
•拡張できるシステムか?拡張時のコストは?•容量に限界はあるか?•バックアップは?• "用途はないが捨てるのは惜しいデータ"をどう扱うか...
ログデータの保持をどうするか問題
26
•データが増えたときのことは後で考える?•パーティショニングはどうする?•バックアップやアーカイブ化は?•パラメータ設定, チューニング etc...
データベース(DWH)の運用をどうするか問題2013
27
•初期投資のインパクト•計画が縮小、中止になった場合のリスク•導入しても、活用できるかどうか不安
DWHの初期投資をどうするか問題
28
•以上の問題が、自社ではなくクライアントの予算・意思決定と密接に関わっている。
29
•2TB, 15GBメモリの最小構成で $900~•容量・性能のスケールアウトが可能•やめたくなったらすぐ停止•カラム型データベース -> 集計処理や圧縮性能にすぐれる
そう、Redshiftならね
30
Redshift + S3 + Glacier
Amazon S3
UPLOAD
AmazonGlacier
AmazonRedshift
分析処理へCOPY
アーカイブS3:Lifecycle1day : Move to Glacier
(Redundancy Storage)
31
Redshiftノウハウを赤裸々に...
32
• SQLのナレッジがそのまま活かせる• Hiveの代替として考えてよいと思う...• PostgreSQL 8 +α 相当という感じ• 一部関数が非対応だったり、完全互換ではない点に注意が必要
基本編
33
• DISTKEY(値をもとにデータが分散配置される)、SORTKEYは重要
• パフォーマンスに特化した超非正規化は個人的にはおすすめしない => 運用コストがかかるので..
• S3との連携が前提。データのインポートとアウトプットはS3経由で行う。
設計編
34
• 圧縮関連についての話題には下記スライドをご覧ください。
設計編
Redshift Compression Encodings(圧縮アルゴリズム)についてもっと調べてみたhttp://www.slideshare.net/iktakahiro/redshift-compression-encodings
35
SQL
CREATE TABLE log ( adviertise_id CHAR(6) DISTKEY, -- 広告主ID log_data TIMESTAMP SORTKEY, -- 日時 request_uri VARCHAR(512), -- URI user_agent VARCHAR(512), -- ユーザーエージェント user_id VARCHAR(255), -- ユーザーID session_id VARCHAR(255), セッションID log_type CHAR(1), -- ログ種別 product_id VARCHAR(255) --商品ID );
COPY log FROM 'S3://hogeadreco/2013/07/16/' CREDENTIALS 'aws_access_key_id=hogehoge;aws_secret_access_key=hogehoge' DELIMITER '\t' TIMEFORMAT 'YYYY-MM-DD HH:MM:SS' GZIP;
36
• アプリケーション側からはPostgreSQLのつもりでいれば大体は使える。- Python + SQLAlchemy + pycycopg2
• COPYコマンドなど独自の構文もあるので必要に応じてクエリべた書きも。
• DBの開発ツールも接続OK- Navicatがおすすめ(有償だけど)
開発編
37
• ログデータ用のテーブルは実ログ相当のデータがないと適切な圧縮設計が行えないこともある=> 運用が始まったあとで調整する、くらいの 心構えが必要
• 全体的にナレッジはまだまだ足りない感。Connection周りではまったりもする
• ミニマム構成でもそこそこの性能が出る
運用編
38
• 意外に小出しで機能追加されている。マニュアルのhistory(※1)を追うのがおすすめ
• 全体的にナレッジは出尽くしていない感。Connection周りではまったりもする
• ブログ(※2)に少しづつ書いてます※1 http://docs.aws.amazon.com/redshift/latest/dg/doc-history.html
※2 http://librabuch.jp/tag/redshift/
ドキュメント
39
Agenda• 自己紹介(1分30秒)• DMP概略 (5分30秒)- Data Management Platform とは- ALBERTの考えるDMP構成要素- DMP構成例
• Redshift活用事例 (17分)- Amazon Redshift とは- Redshift 活用事例- もっと Redshift
• スーパーデモタイム(時間調整)• まとめ (1分)
イマココ
40
Agenda• 自己紹介(1分30秒)• DMP概略 (5分30秒)- Data Management Platform とは- ALBERTの考えるDMP構成要素- DMP構成例
• Redshift活用事例 (17分)- Amazon Redshift とは- Redshift 活用事例- もっと Redshift
• スーパーデモタイム(時間調整)• まとめ (1分) イマココ
41
まとめ
42
• プライベート・DMPは5つの要素で構成される• その中でも、ビッグデータ時代にはDWHの重要性が更に高まっている
• Amazon Redshiftを使うと低コストでDWHの構築と運用が行える
• 設計は引き続き重要。ナレッジはまだまだなのでみんなでシェアしよう
43
ご清聴ありがとうございました
44