Weitere ähnliche Inhalte Ähnlich wie Hadoop Conference Japan 2011 Fall: マーケティング向け大規模ログ解析事例紹介 (20) Hadoop Conference Japan 2011 Fall: マーケティング向け大規模ログ解析事例紹介2. Who am I?
NTTコミュニケーションズ 先端IPアーキテクチャセンタ
Net Marketing Analysis & DB Technology担当
原 謙治
先端IPアーキテクチャセンタは
CUSTOMER 技術/サービス開発を担当
RETENTION
[顧客との 運用・保守
信頼関係の維持]
技術開発
クラウドサービス
開発の事例を紹介
CREATION
[技術/サービス開発]
設計・構築 サービス開発
DELIVERY
[宣伝/営業/デリバリ]
営業 事業企画・推進
スタッフ
SUPPORT
[現場をサポート] 1
3. BizCITY: Cloud Service provided by
NTT Communications
ICTアウトソーシング 大規模データストア 大規模データ解析
Bizホスティング Bizメール SaaSアプリケーション Bizストレージ Bizマーケティング
仮想サーバ 大容量Webメール 大容量 マルチレイヤマーケティング
CRM/SFA 等
ホスティングサービス スケジューラ等 ファイルサーバ ソリューション
ネット
マーケティング
データセンタ間高速バックボーン
セキュアコネクティビティ
Fire Wall Internet
Global
NW VPNサービス Internet/IP電話網
ギャランティ
バースト
ベストエフォート
高速モバイル モバイルシンクライアント
アクセス セキュアリモートアクセス
PCリモートアクセス 携帯リモートアクセス ユビキタスIP電話
海外拠点 国内拠点
ユビキタスオフィス
2
4. Big Datas in BizCITY
Bizストレージ Bizマーケティング
大容量 マルチレイヤマーケティング
ファイルサーバ ソリューション
ネット
マーケティング
データの用途 ストア用大規模データ 解析用大規模データ
⾼セキュリティ・大容量の
ユーザ⾏動ログからマーケティング
サービスの特⻑ ストレージを提供することで
情報を抽出して企業活動を支援
運用コストを削減
大規模分散処理 Bizストレージに保存した 各種ログデータ、CGMデータの
対象領域 データの分散処理 大規模分散処理
Hadoopクラスタを利用して
連携も視野 各種大規模データの分散処理を実現
3
5. Hadoop in Biz Marketing
“Buzz Finder” supports marketing activity using “Web access Analysis” visualizes
customers’ feedbacks in social media. internet-users’ behaviors.
大規模CGMデータを解析してクチコミ情報を抽出 大規模Webアクセスログを解析して
マーケティング担当様
ユーザ⾏動情報を抽出
自社ブランドの 企業メッセージが正しく
評判を分析 ユーザに伝わっているか?
広告宣伝担当様
広告・宣伝後の 広告宣伝の効果はどう
書き込み
評判を分析 か?
検索利用
データクロール
Blog 広報・総務担当様
自社名当の ネット上で自社の悪評
評判を分析 が流れていないか?
商品開発担当様
自社/他社商品の 自社商品の改善ポイン
評判を比較 ト、
差別化ポイントは何
か?
PaaS型サービスへ向けた
データ規模増大への対応
運用コスト削減のための⾼速化
Hadoopを利用
Hadoopを利用
4
6. Hadoop in BuzzFinder
Map Map
PostgreSQL HDFS HDFS HDFS PostgreSQL
CGM ワード抽出 抽出Word
CGM DB
(Twitter,
Import データ
関連語抽出 関連語
Blogなど) CGM
日本語 解析
PostgreSQL ポジネガ語抽出 ポジネガ語 export 抽出DB
解析 データ
キーワード辞書 位置情報抽出 位置情報
リッチインデクシング技術*を 検索Index作成 検索Index
利用して日本語解析
Reduce
HDFS PostgreSQL
抽出ワード集計
処理の特徴
関連語集計
集計 export 集計DB 1レコードあたりのデータが大きい
ポジネガ分布集計 レコード数が少ない(数百万/日)
位置分布集計 Map処理が中⼼←大部分が日本語解析
*リッチインデクシング技術: NTT研究所が開発した日本語解析技術
5
9. Results of BuzzFinder(3/3)
「原発」に関するポジネガの変化
2011年8月末 2011年4月末
原発に関する評判は震災直後よりもわずかであるが悪化している。
ポジネガは一般的にはポジが多い(7割から8割)
ネガ発言が5割超の危険領域。
8
10. Hadoop in Biz Marketing
“Buzz Finder” supports marketing activity using “Web access Analysis” visualizes
customers’ feedbacks in social media. internet-users’ behaviors.
大規模CGMデータを解析してクチコミ情報を抽出 大規模Webアクセスログを解析して
マーケティング担当様
ユーザ⾏動情報を抽出
自社ブランドの 企業メッセージが正しく
評判を分析 ユーザに伝わっているか?
広告宣伝担当様
広告・宣伝後の 広告宣伝の効果はどう
書き込み
評判を分析 か?
検索利用
データクロール
広報・総務担当様
自社名当の ネット上で自社の悪評
評判を分析 が流れていないか?
商品開発担当様
自社/他社商品の 自社商品の改善ポイン
評判を比較 ト、
差別化ポイントは何
か?
PaaS型サービスへ向けた
データ規模増大への対応
運用コスト削減のための⾼速化
Hadoopを利用
Hadoopを利用
9
11. Hadoop in Web Access Analysis
Map&Reduce Map Reduce Map&Reduce
HDFS HDFS HDFS PostgreSQL
セッション 関連
アクセスログ セッション サイト 集計 関連
分類 データ サイト export
抽出 JOIN
集計
サイト情報
サイト間のアクセス相関集計データ 集計DB
Map Reduce
HDFS
サイト毎
クリックログ サイト分類 ランディング ランディング export
クエリ集計 クエリ集計
ランディングクエリの頻度集計データ
処理の特徴
1レコードあたりのデータが小さい
レコード数が多い(数千万/日)
Reduce処理が頻発←Shuffleコストが⾼い
10
12. Fast Map-Reduce for PaaS Services
アクセス解析やマーケティング解析を⾏う上で
Shuffleコストが大きくなるため大量のマシンが必要
Shuffleコストを下げてマシン数を削減するために
Map/Reduceの典型的な処理を⾼速化
通常のHadoop Cluster
⾼速なHadoop Cluster
マシン数 典型的なMap/Reduce処理として
を削減
マーケティングの集計処理
と
アクセス解析のOLAP処理
速度が同等 (多数のjoinがある処理)
の⾼速化を実施
11
13. Strategies for Shuffle Cost Reduction
“Map Multi-Reduce”* reduces shuffle costs of map-reduce operations.
Record Reduce
MapタスクにおいてReduceを事前実⾏し中間データを削減
Local Reduce
同一ノードのMap出⼒結果をReduceしてShuffle対象データを削減
“PJoin”** reduces the shuffle costs in join processing
Join with Semi-Join View
複数の分析処理で共通的なシャッフル処理を事前処理して分析処理時のコストを削減
*, ** “Map Multi-Reduce”および“PJoin”はNTT研究所が開発したMapReduce⾼速化技術
12
14. Map Multi-Reduce/Record Reduce
MapタスクにおいてReduceを事前実⾏し中間データを削減
通常のMapReduce
⼊⼒データ Map 関数 MapOutputBuffer sort&spill Spill files mergeParts 出⼒データ
Record reduce 利用 record reduce を事前実⾏
Record
⼊⼒データ Map 関数 MapOutputBuffer sort&spill Spill files mergeParts 出⼒データ
reduce
13
15. Map Multi-Reduce/Local Reduce
同一ノードのMap出⼒結果をReduceしてShuffle対象データを削減
マシン
User プロセス
Program fork
fork
Local Reduce タスク fork ファイル
assign assign
map Master
reduce
assign
Input Data local reduce
Split 0 worker
worker
Split 1 worker Output
worker
File 0
Split 2 worker
worker
Output
Split 3 worker worker
File 1
Split 4 worker worker remote read,
local sort
read write
Webアクセスログ解析のクリックログ集計処理で
Record ReduceとLocal Reduceにより2.2倍の速度向上を確認
14
16. PJoin/Join with Semi-Join View
テーブルの事前シャッフル実⾏,準結合中間データの事前⽣成
mapper で準結合処理後に,reducer で残処理を実⾏
DFS read
shuffle siteinfo a mapper
siteinfo b accesses reducer
siteinfo_
accesses 1 processing
siteinfo hash(x) + Joining with
siteinfo
…
準結合
accesses 1
サイト毎の siteinfo z
詳細情報
siteinfo primary key & siteinfo a
foreign key(accesses primary key)
siteinfo_
…
…
accesses 1
…
hash(y)
accesses
accesses 1 siteinfo_ processing
accesses n + Joining with
…
accesses hash(y) siteinfo
準結合
siteinfo_ accesses n
アクセスログ accesses n
Pre-computation siteinfo z
Query execution
accesses n
15
17. Results of PJoin
1TBのアクセスログ処理でPjoinの速度性能を検証
Hiveで処理した50台と本技術を適用した20台が
同等の性能であることを確認
Pjoin マシン台数バリエーション 選択率低
実⾏したHiveQL
6
insert overwrite table q1_result
select
5
count(distinct s_sessionseqid)
4 from clckstrm c
処理時間(分)
3 join page p
on
2
c.c_pageseqid = p.p_pageseqid
1 and p.p_url like '%blog.goo.ne.jp%'
0 join session_info s
20 25 30 35 40 45 50
on
マシン台数
s.s_clckstrmseqid = c.c_clckstrmseqid
6. pjoin -> distinct -> pjoin案 7. pjoin -> rsjoin案
HIVE50台最速 and s.s_referer like '%原辰徳%';
16
18. Our Hadoop Cluster
設備や効果測定の観点で下記のような環境を整備 80
70
処
• 各種検証が出来る設備を整備 10台目でWAN越え
60
理 50
– 40台250コア程度の分散処理環境を整備 時 40
間 30
– 広域WANを越えた環境 20
– ラック間はLACPを利用してスループットを確保
10
0
0 5 10 15 20 25 30
Hadoop Cluster(250コア程度) マシン台数
1(
ラック LOC1) 2(
ラック LOC1)
ラック 3
(LOC2)
・・・ ・・・
Namenode
LACPにより 広域WAN(50km)
4GBの帯域を確保
17
20. Contacts
• 発表者: 原 謙治 @haracane, kenji.hara@ntt.com
• BizCITY: http://www.ntt.com/bizcity/
– Bizストレージ: http://www.ntt.com/bizstorage/
– Bizマーケティング http://www.ntt.com/marketing/
19