52
ソーシャルゲームの ビジネスインテリジェンス 4回関西ソーシャルゲーム勉強会 KLab株式会社 開発本部データ分析G 越智修司 13520日月曜日

第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

Embed Size (px)

DESCRIPTION

第4回関西ソーシャルゲーム勉強会で「ソーシャルゲームのビジネスインテリジェンス」と題して発表しました。25分程度。

Citation preview

Page 1: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

ソーシャルゲームのビジネスインテリジェンス

第4回関西ソーシャルゲーム勉強会KLab株式会社

開発本部データ分析G

越智修司

13年5月20日月曜日

Page 2: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

自己紹介•越智 修司(神戸市在住)

•開発本部 データ分析グループ所属• Felica/Edy,ガラケサイト,銀行アプリ,きせかえ• アプリ・サービスのプロトタイピング• 有名アーティスト・アイドルのファンクラブアプリ開発• 最近はデータ解析• python,Rなど

@ponpoko1968

13年5月20日月曜日

Page 3: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

作ったもの「クリップリーダー」

 電子書籍リーダー

• 自炊PDFに特化

• evernote連携

• 段組書籍

「勤怠くん」

勤怠メールを素早く送信

iPhone版(無料)

iPad版(85円)

13年5月20日月曜日

Page 4: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

データ分析グループ

横断的にデータの面倒を見る技術者集団

13年5月20日月曜日

Page 5: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

31サイト(分析対象分)数千万PV/日/タイトル

KLabのソーシャルゲーム

13年5月20日月曜日

Page 6: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

ラブライブ!スクールアイドルフェスティバル

大ヒット御礼!!

13年5月20日月曜日

Page 7: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

flyshot Golf

13年5月20日月曜日

Page 8: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

今日のテーマ

• データ分析グループの紹介

• データ分析グループの課題

• いま取り組んでいること

13年5月20日月曜日

Page 9: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

データ分析グループの提供するサービス

• Webサイト

• 各種データのグラフが閲覧できます

• 速報メール• 前日のkpi速報値がメールで送信されます。

• データのダウンローダー

13年5月20日月曜日

Page 10: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

組織の特徴• メンバーのバックグラウンド

• モバイルサイト・ソーシャルゲーム開発経験• 統計の知識

• 業務システムの経験は比較的少ない• 試行錯誤を重ねつつ分析システムを作ってきた• 発足時点で複数のコンテンツが稼働していた

• 限られた人数で横断的に活動する工夫13年5月20日月曜日

Page 11: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

技術的特徴 1• Python

• 運用に用いる

• 可読性・保守性

• 豊富なライブラリ

• 統計 (Numpy,pandas)

• S3(boto)

• Excel (pyexcelerator)

• R• 探索的な分析

13年5月20日月曜日

Page 12: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

技術的特徴 2• AWSを全面的に使用

• EC2

• RDS(MySQL)

• S3

• EMR

13年5月20日月曜日

Page 13: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

システム構成図分析システムコンテンツ側システム

S3Webserver

バッチサーバ

LogLog

MySQL

Logsnapshot

01001001000111001100111011111011111111

01001001000111001100111011111011111111

EMR

RDS

EC2

Log

snapshot

13年5月20日月曜日

Page 14: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

最近の変化• 業界の競争激化

• 差別化→多様化• スマホネイティブ →ゲームの複雑化

• =KPIの多様化・複雑化に直結

• 市場の成長と成熟• 広告・マーケティング手段が増えてきた• 効果測定

13年5月20日月曜日

Page 15: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

要望と課題• 可視化• 多次元性

• 対象データの絞り込み

• 客単価

• 各種ゲーム内パラメータ

• リアルタイム性

13年5月20日月曜日

Page 16: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

多次元性

• ゲーム途中での離脱度

• レベルxUU

• DAUxクエスト進度

• レベル帯x各種ゲーム内行動回数

13年5月20日月曜日

Page 17: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

分析用DBの高速化

※両者は直交していない※

可視化多次元性

BIスイート

リアルタイム性

13年5月20日月曜日

Page 18: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

BI

• Business Intelligence

• ビジネスインテリジェンス

13年5月20日月曜日

Page 19: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

インテリジェンス

• インテリジェンスは既に述べたとおり、知能やそれの働き、あるいは知能が働く上で利用する情報群などを内包した概念であるが、物を考える能力があるからといって、或いは情報が集積されているからといって、それがインテリジェンスの概念に相当する訳ではなく、その双方が揃って正しく機能することがインテリジェンスであると解される。

• wikipediaより

13年5月20日月曜日

Page 20: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

BI

• 主な要素

• ETL(Extract/Transform/Load)

• レポーティング・ダッシュボード

• OLAP

13年5月20日月曜日

Page 21: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

ETL• データの抽出(Extract)

• 加工(Transform)

• 格納(Load)

• ひたすら地道に

• 多数コンテンツを持っている会社は大体苦労している模様

• 事前の準備大事

• 調整と交渉

• インフラ部隊との連携

• ログフォーマットの統一など

13年5月20日月曜日

Page 22: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

レポーティング・ダッシュボード

• 読んで字の通り

• 情報統制上、閲覧権限がきめ細かくできること

13年5月20日月曜日

Page 23: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

OLAP

• On-Line Analytical Processing

(オーラップと発音)

ユーザがリアルタイムに、複数の分析軸を組み合わせて多角的にデータを分析するための仕組み

13年5月20日月曜日

Page 24: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

OLAP• 多次元データ

• ソーシャルゲームで言うと、、、

• PV

• 売り上げ

• 客単価

• 課金率

• 時間軸(毎時、毎日、週間、月間、四半期..)

• アプリ

• キャリア・(ガラケ/スマホ)

• PF (モバゲー/GREE/mixi/apple...)

• ゲーム内パラメータ

• 行動履歴

13年5月20日月曜日

Page 25: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

OLAP-cube

出典: http://thinkit.co.jp/article/1173/1

13年5月20日月曜日

Page 26: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

用語• ディメンジョン

• 分類変数

• 分類軸

• レベル

• 分類項目

• 年月日

• レベル(プレイヤーの)

• アイテムの種類

• メジャー

• 測定値、観測値

• 売り上げ

• 行動回数

13年5月20日月曜日

Page 27: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

OLAPエンジン

• 多次元データモデルからリレーショナルデータモデルへの変換を行う

• RDBに入れたデータを多次元にみせてくれるもの

13年5月20日月曜日

Page 28: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

MDX• MultiDimensional EXpression

• 多次元データを切り出すためのクエリー言語

• 方言はあるものの、多次元データ処理のデファクトスタンダード

• OLAPエンジンは、スキーマ設定ファイルを元に、MDXをRDBMS向けSQLに変換する役割をもつ

13年5月20日月曜日

Page 29: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

BIプロダクトBIを謳ったプロダクトは大手ベンダー各社がリリースしています。

今回はOSSベースの製品である、

• pentaho

• saiku

について評価しました。

13年5月20日月曜日

Page 30: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

• オープンソースのBIスイート製品

• BIのプロセス全てをカバーしているソフトウェアパッケージ

• 部分的に使うことも可能

• 一部案件にてすでに活用中

• レポーティング

• OSSである

• community edition

• 商用版

pentaho

13年5月20日月曜日

Page 31: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

saiku• pentahoの機能のうち、OLAPのUI部分を改善した別のソフト

• jsベースのUIにより、OLAP操作が使いやすい

• OLAPエンジン部分はpentahoと共通

• pentahoのプラグインとしても使える

13年5月20日月曜日

Page 32: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

saiku画面

テキスト

http://www.screenr.com/mIe

13年5月20日月曜日

Page 33: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

評価1• スキーマ設定ファイルを作るのはすこし面倒

• 既にテーブルがある場合はOLAP用にスキーマ設計をし直して、インポートした方がよさそう

• 要件からいって、ディメンジョンやメジャーにしたい項目をすべてテーブルに盛り込む必要がある。

• →慎重なスキーマ設計が必要

13年5月20日月曜日

Page 34: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

感想2• OLAPエンジンがSQLを生成して、都度クエリーをDBに発行する仕組みなので、DBそのものが高速でないとUIレスポンスが悪化する

• (クエリーキャッシュ機能は持っている)

13年5月20日月曜日

Page 35: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

リアルタイム性

分析DBの高速化

13年5月20日月曜日

Page 36: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

RDB vs. hadoop• RDB(リレーショナルデータベース)

• TSV,CSV形式からインポートしやすい

• SQLが使える

• 保守性

• BIスイートなどレポーティングの仕組みと相性が良い

• Hadoop

• 構築・運用が面倒

• データ形式を選ぶ

• MDXのようなリアルタイムに集計する仕組みと相性が悪い

• データの再利用のため、どのみち集計結果はRDBは格納する必要がある→故障点が増える

13年5月20日月曜日

Page 37: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

システム構成図分析システムコンテンツ側システム

S3Webserver

バッチサーバ

LogLog

MySQL

Logsnapshot

01001001000111001100111011111011111111

01001001000111001100111011111011111111

EMR

RDS

EC2

Log

snapshot

13年5月20日月曜日

Page 38: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

大データ量小

クエリの複雑さ多様さ

Hadoop

RDB

?

13年5月20日月曜日

Page 39: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

高速DB

• データウェアハウス・データ分析に特化したデータベース

13年5月20日月曜日

Page 40: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

高速化技術

• 列指向(columnar)DB

• パラレルDB

13年5月20日月曜日

Page 41: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

列指向DB

• Columnar

• NoSQLの「列指向DB」とは別物

13年5月20日月曜日

Page 42: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

通常の(行指向)RDB

• 1行をひとまとめにする設計

13年5月20日月曜日

Page 43: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

列指向DB• 列方向に並べる

• 多数の行に対して少数の列に対する集計処理が得意

• トランザクションは苦手

• 分析用途ではほとんど使わない

13年5月20日月曜日

Page 44: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

• 商用製品

• Sybase IQ

• HP Vertica

• MySQLのストレージエンジンとして使えるもの

• Infobright

• InifiniDB

• 独自I/F

• MonetDB

• postgres互換

• redshift

13年5月20日月曜日

Page 45: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

いくつか評価してみました

• クエリの種類により性能が偏るものがある

• そもそもSQLの解釈を間違えて出力するものがあった

• データ量が増えると性能が下がるもの

• InnoDBの優秀さを再認識(一同苦笑)

13年5月20日月曜日

Page 46: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

redshift• 比較的安定的に高速• S3から直接インポート出来る

• 列指向+パラレルDB

• スケールアウト可能• 安価(最小構成なら約600ドル/月)

• +2Tのストレージ

13年5月20日月曜日

Page 47: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

パラレルDB

• 複数データベースを分散配置

• 中央ノードで集約

13年5月20日月曜日

Page 48: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

13年5月20日月曜日

Page 49: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

大データ量小

クエリの複雑さ多様さ

Hadoop

RDB

13年5月20日月曜日

Page 50: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

今後の課題• 可視化・多次元性

• BIシステムのカスタマイズ

• 高速化

• データのマイグレーション

• データ設計の改善

• 列指向DBのチューニングノウハウ

• ETLの高速化

• 疎結合→もう少し密結合に

• fluentd

13年5月20日月曜日

Page 51: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

お知らせ

ブログ始めましたhttp://analysis.blog.jp.klab.com/

13年5月20日月曜日

Page 52: 第4回関西ソーシャルゲーム勉強会 ソーシャルゲームのビジネスインテリジェンス

ご清聴ありがとうございました

13年5月20日月曜日