More Related Content
Similar to オンラインゲームソリューション@トレジャーデータ
Similar to オンラインゲームソリューション@トレジャーデータ (20)
More from Takahiro Inoue (20)
オンラインゲームソリューション@トレジャーデータ
- 1. 1
オンラインゲームソリューション
2014/06
Takahiro
Inoue
(Chief
Data
Scien:st)
taka@treasure-‐data.com
- 2. 2
自己紹介
• 井上 敬浩 (TwiCer:
@doryokujin
)
• チーフデータサイエンティスト
@
トレジャーデータ
• 慶應大学院数学科統計専攻
• トレジャーデータ公式ブログ
オーサー
• MongoDBマスター
hCp://treasure-‐data.hateblo.jp
- 4. 4
Treasure
Data
Service
とは
ビッグデータの収集・保存・分析をワンストップで提供する、
クラウド型のデータマネジメントサービス(DMS)
“データ解析の世界をシンプルにしたい”
収集
保存
分析
- 5. KPI
データ可視化・共有
分析ツール連携
他製品連携
RDBMS,
Google
Docs,
AWS
S3,
FTP
Server,
etc.
Mo:on
Board,
Metric
Insights,
etc.
Tableau,
Dr.Sum,
Power
BI,
Excel,
etc.
5
Treasure
Data
Service
Result
Output
クエリ結果自動書込
データ収集
データ分析
データ保管
収集・保存・分析をワンストップに、柔軟なインターフェイスで提供。
データ集計
SQL,
Pig
ストレージ
Flexible,
Scalable,
Columnar
Storage
バッチ型
分析
アドホック型
分析
分析エンジン
Hadoop,
Treasure
Query
Accelerator
データ抽出
REST
API
ODBC/JDBC
(SQL,
Pig)
Webログ
Appログ
センサー
CRM
ERP
RDBMS
TD
Toolbelt
並列バルク
インポーター
Treasure
Agent
ストリーミング
ログコレクター
POS
- 6. 6
分析レイヤー
4.
Data
Processing
5.
Data
Visualiza5on
3.
Data
Storage
2.
Data
Collec5on
1.
Data
Source
• ストリーミング収集ツール
• バルクインポートツール
• トレジャークラウドストレージ
• マネジメントコンソール
• バッチクエリ(Hive)
• アドホッククエリ(TQA)
• ダッシュボード
• Business
Intelligence
あらゆる分析レイヤーをトレ
ジャーデータサービスが一貫
して担うことができる。
- 8. 8
ソリューションテンプレート
Treasure
Data
Service
データ解析テンプレート
データ収集テンプレート
ソリューション
コンポーネント:
- Treasure
Data
Service
- 構造化ログのテンプレート
- データ収集エージェント設
定ファイルテンプレート
- 設定済みBIレポーティン
グ・ダッシュボード
初期セットアップ期間内で、業界毎に事前に定義した解析ダッシュボードも提供
- 9. 9
ログインログ
Treasure
Data
Service
データ統合
オンラインゲームソリューションとは
課金ログ
招待ログ
KPI:
PV
KPI:
ARPU
KPI:
リテンション
提供するログテンプレートを活用する事で,容易に多種多様なKPI群のモニタリング
が可能に。
- 10. 10
ログインログ
ネイティブアプリ
/
ブラウザアプリ両方に対応
課金ログ
招待ログ
• iOS,
Android
のSDK,または
Unity
向けのライブラリ
を通じてログを収集。
• ブラウザゲームはサーバーサイドに Fluentd
ベー
スの
TD-‐Agent
を仕込んでストリーミング収集。
- 11. 11
iOS,
Android
SDK
によるログ収集
イベント発生後,すぐに送信
イベント発生後,すぐに送信
バッファリング
バッファリング
スケーラブルなトレジャー
SDK受信サーバー
トレジャークラウド
端末アプリから直接トレジャークラウドに蓄積され,かつストリーミングによっ
てログを直ちに確認できる。
- 12. 12
オンラインゲーミング:基本ログテンプレート
アクション名
(テーブル名)
主体ユーザーID
タイムスタンプ
対象ユーザーID
値
数
大カテゴリ,カテゴリ,
ア
イテム名
login
uid
:me
-‐
-‐
-‐
-‐
pay
uid
:me
-‐
price
count
category,
sub_category,
name
invite
uid
:me
target_uid
-‐
-‐
-‐
use_point
/
get_point
uid
:me
-‐
-‐
-‐
-‐
level_status
uid
:me
-‐
value
-‐
-‐
tutorial
uid
:me
-‐
step
-‐
-‐
- 13. 13
オンラインゲーミング:基本ログテンプレート
アクション名
(テーブル名)
主体ユーザーID
タイムスタンプ
対象ユーザーID
値
数
大カテゴリ,カテゴリ,
ア
イテム名
login
uid
:me
-‐
-‐
-‐
-‐
pay
uid
:me
-‐
price
count
category,
sub_category,
name
invite
uid
:me
target_uid
-‐
-‐
-‐
use_point
/
get_point
uid
:me
-‐
-‐
-‐
-‐
level_status
uid
:me
-‐
value
-‐
-‐
tutorial
uid
:me
-‐
step
-‐
-‐
これらのログを出すよ
うに設定すれば必要な
50近いKPIを算出可能。
uid,
:me
を含めばそ
の他の項目は任意に
設定して良い。
上記にとらわれない,
任意のログを収集でき
る拡張性をもつ。
- 15. 15
ログテンプレートに従ったデータ収集(ブラウザアプリ)
#
Applica5on
Ruby
Code
TD.event.post(
’login',
{
:uid
=>
123,
:device
=>
’smart
phone’,
:5me
=>
138959673
})
TD.event.post(
’pay',
{
:uid
=>
123,
:name
=>
’ItemA’,
:sub_category
=>
’a’,
:category
=>
A,
:count
=>
2,
:price
=>
300,
:5me
=>
138959673
})
TD.event.post(
’invite',
{
:uid
=>
123,
:invited_uid
=>
456,
:campaign_name
=>
’event2’,
:5me
=>
138959673
})
※
各言語向けに収集ツール Treasure
Data
Library
を提供
Java,
Ruby,
PHP,
Perl,
Python,
Scala,
Node.js
,
JS
Tag
Library
Login
テーブル
Pay
テーブル
Inviteテーブル
ユーザー属性
情報テーブル
Treasure-‐Agent
を通じて発生したロ
グを常時トレジャークラウドにアッ
プロード
ユーザーアクション
(login,
pay,
invite,…)
アクションに付随する
属性情報
(uid,
:me,
price,…)
- 16. 16
ログテンプレートに従ったデータ収集(ネイティブアプリ)
#
Android
SDK
View
v
=
findViewById(R.id.bu[on);
v.setOnClickListener(new
OnClickListener()
{
@Override
public
void
onClick(View
v)
{
final
Map
event
=
new
HashMap<String,
Object>();
event.put(”uid",
”abcd");
event.put(”device",
“android”);
td.addEvent(”game",
”login",
event);
}
});
Login
テーブル
Pay
テーブル
Inviteテーブル
ユーザー属性
情報テーブル
SDK
を通じて発生したログを常時ト
レジャークラウドにアップロード
#
iOS
SDK
-‐
(IBAc5on)clickBu[on:(id)sender
{
[[TreasureData
sharedInstance]
addEvent:@{
@”uid":
@"foo
bar",
@”device":
‘iOS’
}
database:@”game"
table:@”login"];
}
- 17. 17
KPI
計算
Login
テーブル
Pay
テーブル
Inviteテーブル
ユーザー属性
情報テーブル
データ連携
KPI:
PV
KPI:
ARPU
KPI:
リテンション
異なるデータ間の連携と強力な並
列分散処理技術で,大量ログから
様々なKPIを算出。
- 19. 19
Category
KPI
Example
Ac:veness
ゲームをの活況度を判断するKPI群。
アクティブ ユーザー数,新規ユーザー数,etc…
Funnel
(
Conversion
)
Analysis
コンバージョンまでの経路の離脱率を図るKPI群。
コンバージョン,チュートリアルのステップ毎の離脱度,etc…
Sales
Revenue
課金周りのKPI群。
売り上げ,ARPU,
ARPPU,
etc…
Distribu:on
ユーザー数や課金額の分布を様々なセグメントで切った分布。
課金額の分布,レベルの分布,所有ポイント数の分布,etc…
Inflow
/
Oujlow
Equilibrium
流入と流出の平衡を見るためのKPI群。
仮想通貨の提供量/消費量,etc…
Reten:on
初回登録から再ログインまでの期間やリピート回数,
etc…
これらのカテゴリーに属するKPI群を導入時から参照できるKPIテンプレートを用意
KPI
カテゴリ