本内容は、デブサミ2014の講演のメモです。
http://event.shoeisha.jp/devsumi/20140213/session/410/
過去の話
2011
Webサーバのログをrsyncでストレージに蓄える
バッチ処理をしたものをMySQLに格納
2012
生データを触りたいという要望から、解析用のSQLServeを導入
困ってきた
データが欲しい人が増えた
サービスが増えた
人が増えた
データ提供が難しくなり、遅延が発生し始めてきた
現在の話
コンセプト
Accessability
誰でも自由にScalability
どれだけ貯めこんでも
ゲーム
Treasure Dataデータベース
ゲームへのアクセスログHadoopクラスタの構築が不要
コレクトからストアまで
fluentdスキーマレスで自由度の高いログフォーマット
time int, v mapデータ・ウェアハウスの運用コストの低減
BIツールとの用容易なインテグレーション
構成
Webサーバからログを、2台のLog Aggregateor Serverに集約した上で、Treasure Dataへ移行
約20ゲームタイトル
ウェブサーバ2000台以上
log aggregatorサーバ40台以上
送信データ量 1TBログデータをゲーム改善のアクションにつなげる
アクセス状態分析
Webサイトでは一般的な手法をソーシャルゲームに導入ジョブ管理をしっかりする
誰でも触れるので、負荷などを監視できるように
アクセス遷移分析
- ページ遷移
- 離脱
- クリック
Chrome Extensionを利用して実際の画面にオーバーレイ
アクセス遷移分析
クリック分析
お知らせやランキングの効果などで活用
ジョブ管理ツール
非効率なジョブが投入されるケースが存在する
- ジョブを可視化
- ジョブの送信元の特定
- スロークエリの可視化と特定
Treasure Dataを利用しているが、その利用方法を社内でシステム化
GREE Platform
Hadoopベース
ゲームからAPIへのログ
ユーザ情報利用状況
5000ジョブ/ 日
数ヶ月分で、圧縮した状態で60TB
ユーザは120人、ほとんどが非エンジニア
アクセス方法
Hive Presto Macaronで構成されたシステムに対して
アクセス
SQuirreLSQL を推奨
JDBC / ODBC(接続は可能)グラフ化
Macaron(自社製品)その他
Shell, Python, R, PHP
Thriftのおかげ
近い未来の話
Speedy & Intelligently
Presto
OSSな分散SQLエンジン
Post Hive (produced by Facebook)
Hiveよりも速い
速度
Impara > Presto > Hive
Imparaはメモリ効率が悪そうということで、Prestoを採用
Prestoはオープンソース。内部の改変は必要となるので、Prestoが利用しやすい。
Spark
Hadoopより速い
非同期のMapReduce
機械学習に最適