Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
何故 DeNAはVerticaを選んだのか?
2015/02/18
DeNA システム本部 分析基盤部 部長
山田 憲晋
1
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
自己紹介
 山田 憲晋(やまだ けんしん)
 DeNA システム本部 分析基盤部 部長
 略歴
⁃ 1995年4月 NECに入社。...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
アジェンダ
 DeNA事業概要
 DeNAの分析体制とVertica導入前の分析環境
 何故 Verticaを導入したのか?
 ...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
アジェンダ
 DeNA事業概要
 DeNAの分析体制とVertica導入前の分析環境
 何故 Verticaを導入したのか?
 ...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
5
DeNA=ゲーム会社?
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
6
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
7
New Services
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
New Services
8
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
New Services
9
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
10
Japan
Game
Global
Internet
Marketing
E-Commerce
Others
Platform
O...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
アジェンダ
 DeNA事業概要
 DeNAの分析体制とVertica導入前の分析環境
 何故 Verticaを導入したのか?
 ...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
DeNAの分析体制
 分析横断部門として、アナリストチームと分析基盤エンジニアチームが存在し、
DeNAの各種サービスの分析を推進して...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
DeNAの分析基盤 (2013年8月 Vertica導入以前)
 全てのログをHadoop Cluster上に集約し分析可能な環境を構...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
アナリスト業務: ログデータの設計
 アナリストはサービス検討段階から開発チームに入り、分析に必要なログデータの設
計を自ら行い、サー...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
アナリスト業務: KPIの見える化
 サービス分析に必要な重要指標: KPI (Key Performance Indicator)を...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
アナリスト業務: アドホック分析
 アドホック分析 – サービスの課題に対して、Hadoop上のデータを集計して
定量的に分析する。
...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
アナリスト業務: まとめ
 DeNAのアナリストは、サービスを成功に導くために必要な分析業務を実
施するために、ログデータの設計、デー...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
分析業務の例(ゲームでのイベント振り返り)
 イベント終了後のタイミングでイベントや施策の成否を数字で振り返る
 関係者で集まり、次...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
分析業務の例(ゲームでのイベント振り返り)
 イベントはだいたい月に2~4本あるため、あるイベントのKPIを見守りな
がら来週のイベン...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
アジェンダ
 DeNA事業概要
 DeNAの分析体制とVertica導入前の分析環境
 何故 Verticaを導入したのか?
 ...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
DeNAの分析環境に関する課題(2013年8月 Vertica導入以前)
 ガラケーからスマートフォンへの大きな市場変化
⁃ スマート...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
アナリストの業務効率化に向けた分析環境の課題
 KPI定常集計
⁃ KPIの見える化ニーズが発生する度に新しい集計結果データを作成して...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
Hadoopに加えて高速集計システムの必要性
アドホック集計・定常集計共に集計時間の高速化により大幅にアナリス
トの業務効率を改善できる...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
高速集計システムとしての Vertica選定の理由
 専用ハードウェアが必要ではなくサーバを追加していくことで性能アップ(ス
ケールア...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
アジェンダ
 DeNA事業概要
 DeNAの分析体制とVertica導入前の分析環境
 何故 Verticaを導入したのか?
 ...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
Vertica検証から商用版導入までの道のり
 2013年8月~10月 5TB(TeraByte)の試用ライセンスにて検証
⁃ 分析基...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
Hadoop
(4PB)
Vertica (25TB)
現在の分析環境: 新規サービス
 サービスの生ログを VerticaとHado...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
現在の分析環境: 既存大規模サービス
 大規模サービスは、ログの種類も量も非常に大きく、直接全生ログをいれ
ることは現実的ではない。
...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
Vertica利用状況
 クラスタ容量: 25 Tera Byte
 スキーマ数: 126 (ゲームやサービス単位でスキーマを作成)...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
アジェンダ
 DeNA事業概要
 DeNAの分析体制とVertica導入前の分析環境
 何故 Verticaを導入したのか?
 ...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
Verticaを有効活用するための工夫
 Verticaは、高速なクエリ性能を提供してくれるが、それだけでは唯の箱
である。分析に必要...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
Hadoop
生ログ投入
 やりたいこと: 生ログを直接Verticaに投入して即時分析可能な環境を作る
 課題: Hadoopは非...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
データベーススナップショットローダー
 必要性: ユーザのステータス(レベル、攻撃力)、リソース保有状況(回復剤
の保有数)等のデータ...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
KPI Viewer (BI Tool)の内製化
 従来、アナリストがKPI Dashboardを作成する環境として市販のBI Too...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
内製BI Tool: Argus
 大事にしていること
⁃ 特別な事前準備無く簡単にKPIレポートを作成可能なこと
35
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
内製BI Tool: ArgusのKPI Dashboard作成例
STEP1: Queryを書く
36
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
内製BI Tool: ArgusのKPI Dashboard作成例
STEP2: Queryを実行し結果を確認
37
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
内製BI Tool: ArgusのKPI Dashboard作成例
STEP3: グラフ化
38
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
内製BI Tool: ArgusのKPI Dashboard作成例
STEP4: 定常レポート化
39
Crontab形式で、実行
タイ...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
Argus + Vertica によるKPI Dashboard作成
 Argus + Verticaにより、1分足らずでさくさくKP...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
中間テーブル作成ソリューション: ViewのTable変換
 課題: Verticaが高速なため適切に中間集計テーブルを作らずに複雑な...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
Vertica導入の効果
 KPIレポート整備の工数の大幅削減
⁃ ゲームタイトルのKPI Dashboard構築に必要な工数が約60...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
サービス毎にVertica関連コストを見える化
 Vertica関連コスト(Verticaライセンス、サーバ代金、
ラック使用量等)を...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
アジェンダ
 DeNA事業概要
 DeNAの分析体制とVertica導入前の分析環境
 何故 Verticaを導入したのか?
 ...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
今後に向けて
 Hadoop + Verticaの適正な共同利用環境の模索
⁃ 明確なルールを定義しないとユーザは高速なVertica...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
まとめ
 Vertica及びVerticaを有効活用するための工夫により狙い通りの効果が得られ
た
⁃ KPIレポート整備工数の大幅削...
Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved.
47
Identity of DeNA
Upcoming SlideShare
Loading in …5
×

何故DeNAがverticaを選んだか?

25,034 views

Published on

HP Technology At Work 2015 ビッグデータ分科会 HP Vertica ユーザーフォーラム 2015/02/19 での講演資料

Published in: Engineering
  • Be the first to comment

何故DeNAがverticaを選んだか?

  1. 1. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. 何故 DeNAはVerticaを選んだのか? 2015/02/18 DeNA システム本部 分析基盤部 部長 山田 憲晋 1
  2. 2. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. 自己紹介  山田 憲晋(やまだ けんしん)  DeNA システム本部 分析基盤部 部長  略歴 ⁃ 1995年4月 NECに入社。TCP Offload Engine等の研究開発に従事。 ⁃ 2007年7月DeNA入社。Mobageのサービス開発・インフラ運用、ソ ーシャルゲーム開発チームのマネージメントをえて、2010年 ソーシ ャルゲームの分析強化のため分析チームを立ち上げる。 ⁃ 現在は、DeNA全社の分析業務で利用される分析基盤の構築・運用を 行う 分析基盤部のマネージメントを行っている。 2
  3. 3. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. アジェンダ  DeNA事業概要  DeNAの分析体制とVertica導入前の分析環境  何故 Verticaを導入したのか?  Vertica導入と導入後の分析環境  Vertica活用の工夫とVertica導入効果  まとめ 3
  4. 4. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. アジェンダ  DeNA事業概要  DeNAの分析体制とVertica導入前の分析環境  何故 Verticaを導入したのか?  Vertica導入と導入後の分析環境  Vertica活用の工夫とVertica導入効果  まとめ 4
  5. 5. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. 5 DeNA=ゲーム会社?
  6. 6. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. 6
  7. 7. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. 7 New Services
  8. 8. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. New Services 8
  9. 9. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. New Services 9
  10. 10. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. 10 Japan Game Global Internet Marketing E-Commerce Others Platform Our Business
  11. 11. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. アジェンダ  DeNA事業概要  DeNAの分析体制とVertica導入前の分析環境  何故 Verticaを導入したのか?  Vertica導入と導入後の分析環境  Vertica活用の工夫とVertica導入効果  まとめ 11
  12. 12. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. DeNAの分析体制  分析横断部門として、アナリストチームと分析基盤エンジニアチームが存在し、 DeNAの各種サービスの分析を推進している。  各事業に対するアナリストのサポート範囲は、サービス内の開発運用体制や分析の重 要度によるが、重要サービスに対しては開発チーム内に席を置き、チームの一員とし て分析業務を実施する。 12 事業部 横断部門 分析基盤エンジニア アナリスト及び事業部メン バーが分析をするために必 要な環境を整備する Hadoop上でのレコメンドエンジン開発などもやっていますが、 本日のメイントピックではないので触れません。 アナリスト データを活用して 事業を成功に導く ゲーム事業
  13. 13. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. DeNAの分析基盤 (2013年8月 Vertica導入以前)  全てのログをHadoop Cluster上に集約し分析可能な環境を構築  分析基盤上でのアナリストの業務 1. ログデータの設計 2. KPI(Key Performance Indicator,重要指標)の見える化 3. サービス課題に対するアドホック分析 13 Hadoop Cluster (4 Peta Byte) BI Tool (web) MySQL Jenkins (job scheduler) Linux terminal Hue Event log Database Log Collector 専用KPI Dashboard (web) 専用Engine 巨大な分析クラスタ
  14. 14. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. アナリスト業務: ログデータの設計  アナリストはサービス検討段階から開発チームに入り、分析に必要なログデータの設 計を自ら行い、サービスリリース時に分析業務に必要なログを使える状態にする  利用可能なログデータ ⁃ サービス固有イベントログ (アナリストの設計対象) ⁃ データベースのスナップショット (daily, hourly) ⁃ アクセスログ等 WebやSDKが自動的に収集するログ 14 Hadoop Cluster BI Tool MySQL Jenkins (job scheduler) Linux terminal Hue Event log Database Log Collector KPI Dashboard 専用Engine
  15. 15. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. アナリスト業務: KPIの見える化  サービス分析に必要な重要指標: KPI (Key Performance Indicator)をグラフ やテーブルを使って見える化(KPI Dashboard)し、関連メンバーが常時閲覧 可能な環境を構築する。 STEP1: Hadoopに蓄積されたデータを集計(pig, hive) STEP2: 集計ジョブを定期実行のJob化してMySQLに書き込む STEP3: BI Tool(市販)上でKPI Report/Dashboardを作成する 15 Hadoop Cluster BI Tool (web) MySQL Jenkins (job scheduler) Linux terminal Hue Event log Database Log Collector 専用基本KPI Dashboard (web) 専用集計 エンジン ボス戦勝率、リ ソース保有状況、 レベル別進捗 ユーザ数・ 売上・継続 率
  16. 16. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. アナリスト業務: アドホック分析  アドホック分析 – サービスの課題に対して、Hadoop上のデータを集計して 定量的に分析する。 ⁃ 集計言語: HiveQL (Hue – Web Client)もしくはPig (linux Terminal)を 利用  アドホック分析の中から定常的にウォッチすべきと判断できる指標に関して は、JenkinsにJobを登録しBI Tool上でKPI Dashboard化する。 16 Hadoop Cluster BI Tool (web) MySQL Jenkins (job scheduler) Linux terminal Hue Event log Database Log Collector 専用KPI Dashboard (web) 専用Engine 重要なものは定常job化
  17. 17. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. アナリスト業務: まとめ  DeNAのアナリストは、サービスを成功に導くために必要な分析業務を実 施するために、ログデータの設計、データ集計、KPIの見える化、アドホ ック分析等の全ての業務を実行する。 17 Hadoop Cluster (4 Peta Byte) BI Tool (web) MySQL Jenkins (job scheduler) Linux terminal Hue Event log Database Log Collector 専用KPI Dashboard (web) 専用Engine
  18. 18. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. 分析業務の例(ゲームでのイベント振り返り)  イベント終了後のタイミングでイベントや施策の成否を数字で振り返る  関係者で集まり、次回イベントでやることとやらないことを決める  イベントの運用が安定したら開発チームに任せることも多い 18 パラメータ作成 ログ仕込み& レポート作成 イベント 開始 イベント 終了企画~開発 イベント期間 次回イベ検討 立ち上がり レポート KPIウォッチ& 課題分析 イベント 振り返り
  19. 19. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. 分析業務の例(ゲームでのイベント振り返り)  イベントはだいたい月に2~4本あるため、あるイベントのKPIを見守りな がら来週のイベントのレポートを仕込みつつ、終わったイベントの振り返 り資料を作るといったサイクル  当たり前のことをいかに早く徹底してやれるかが勝負 19 1週目 2週目 3週目 4週目
  20. 20. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. アジェンダ  DeNA事業概要  DeNAの分析体制とVertica導入前の分析環境  何故 Verticaを導入したのか?  Vertica導入と導入後の分析環境  Vertica活用の工夫とVertica導入効果  まとめ 20
  21. 21. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. DeNAの分析環境に関する課題(2013年8月 Vertica導入以前)  ガラケーからスマートフォンへの大きな市場変化 ⁃ スマートフォンでヒットを生み出すために大量にゲームをリリース ⁃ ゲーム以外にも新しい事業の柱を作っていくためにたくさんの新規サ ービスをリリース  アナリストへの新たな要求 ⁃ 一人のアナリストがより多くのサービスの分析業務を回せるように ⁃ 新しいゲームや新しいサービスに対して発生する新しい分析課題に対 してより迅速に応えることが求められる 21 過去の資産がうまく使えず試行錯誤が重要に 分析業務の効率を上げる必要あり
  22. 22. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. アナリストの業務効率化に向けた分析環境の課題  KPI定常集計 ⁃ KPIの見える化ニーズが発生する度に新しい集計結果データを作成して KPIレポートを構築する必要があった。KPI Viewerのストレージとし て使っているMySQLが非力なため 汎用的に使える集計用データを準備 することが難しかった。  アドホック集計 ⁃ アドホック集計で集計結果を得るまでの集計時間が数十分~数時間か かり、短いサイクルで仮説検証を繰り返すことが難しかった。 22 Hadoop Cluster KPI Viewer DB (mySQL) 分析担当者 定常 集計 例) events時のitem種別毎の hourly消費数推移 例) アクティブユーザの 離脱確率予測推移 Log アドホック 集計 KPI閲覧ユーザ 集計結果を 得るまでに長時 間がかかるので 仮説検証を繰り 返すことが困難 要件発生の度に新 たに集計ジョブを 作成し結果を保存
  23. 23. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. Hadoopに加えて高速集計システムの必要性 アドホック集計・定常集計共に集計時間の高速化により大幅にアナリス トの業務効率を改善できる可能性があった。  アドホック集計: 数秒から数分オーダでのアドホック分析を可能にす ることで、仮説検証を繰り返しながら分析結果を得ることが可能に  KPI定常集計: BI Tool上で KPI集計をすることでその場で結果を確認 しながらKPI Dashboardを構築することが可能に 23 Hadoop Cluster KPI Viewer (BI Tool) 高速集計 システム DB (mySQL) 分析担当者 Adhoc 集計 定常 集計 Log 低Latency リアルタイ ム集計 分析用 データ 過去分含めて 全生ログが集 約された場所 分析に必要な データのみを 格納
  24. 24. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. 高速集計システムとしての Vertica選定の理由  専用ハードウェアが必要ではなくサーバを追加していくことで性能アップ(ス ケールアウト)が可能  Hadoop等の既存システムとの連携を考慮し、クラウドではなくオンプレミス で使えるもの  Facebook, Zynga, Twitter等 競合他社での大規模導入実績  Projection(複数の物理スキーマ)により重要な集計に対して高速化のチューニ ングが可能なこと  SQL on Hadoop (Impala, Drill等)は2013年当時時期尚早と判断  低容量(1Tera Byte以下)であれば、無料(Community Edition)という選択肢 があった。 24
  25. 25. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. アジェンダ  DeNA事業概要  DeNAの分析体制とVertica導入前の分析環境  何故 Verticaを導入したのか?  Vertica導入と導入後の分析環境  Vertica活用の工夫とVertica導入効果  まとめ 25
  26. 26. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. Vertica検証から商用版導入までの道のり  2013年8月~10月 5TB(TeraByte)の試用ライセンスにて検証 ⁃ 分析基盤エンジニアは大きな効果を実感するが、アナリストの本格的な評 価検証が進まず。 • アナリスト: 試用環境であるため将来使えなくなる懸念から本格利用に二の足を踏む ⁃ 投資効果を判断することができず商用版導入は見送り。 ⁃ Vertica導入は確定し Community Edition 1TB x 4クラスタで運用するこ とに  2013年11月~2014年4月 1TB x 4クラスタ(Community Edition)運用 ⁃ 新規サービスでは Verticaを標準環境として利用することになり、多くの アナリストや開発エンジニアがVerticaの効果を肌で実感することに  2014年4月~ 商用版導入 ⁃ 当初、11TBあれば十分という計画だったが・・・ ⁃ 想定以上に利用が進み 10月18TB、1月25TBに容量を拡張 26
  27. 27. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. Hadoop (4PB) Vertica (25TB) 現在の分析環境: 新規サービス  サービスの生ログを VerticaとHadoopの両方に投入。Vertica側のデータ は一定期間でpurge (通常3ヶ月)  新規サービスはログデータが小さいことが多く、分析業務の全てが Verticaだけで完結している方が圧倒的に効率が良い 27 内製 BI Tool Jenkins (job scheduler) Linux terminal Hue Event log DB (MySQL) Log Collector snapshot
  28. 28. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. 現在の分析環境: 既存大規模サービス  大規模サービスは、ログの種類も量も非常に大きく、直接全生ログをいれ ることは現実的ではない。  生ログから分析しやすいように集計されたデータをVerticaに入れる。 28 Hadoop (4PB) 内製 BI Tool Jenkins (job scheduler) Linux terminal Hue Event log DB snapshot Log Collector Vertica (25TB) 一時集計データ 一時集計データ
  29. 29. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. Vertica利用状況  クラスタ容量: 25 Tera Byte  スキーマ数: 126 (ゲームやサービス単位でスキーマを作成)  テーブル数: 4750  ビュー数: 1310  ロール数: 55 # 権限グループ数  サーバ数: 14台 + 障害時の置き換え用1台 ⁃ Hadoop Data Nodeと同一スペックサーバを利用 • CPU 16コア、memory 128GByte、network 1Gbpsx2(bonding) • 4TB 7.2K rpm x12 (RAID 10) ⁃ Vertica推奨スペックサーバへの変更を検討中 29 多数のゲーム・サービスのデータがVerticaに投入される中で 増殖し続けるスキーマ、テーブル、ビューの運用効率化も課題
  30. 30. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. アジェンダ  DeNA事業概要  DeNAの分析体制とVertica導入前の分析環境  何故 Verticaを導入したのか?  Vertica導入と導入後の分析環境  Vertica活用の工夫とVertica導入効果  まとめ 30
  31. 31. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. Verticaを有効活用するための工夫  Verticaは、高速なクエリ性能を提供してくれるが、それだけでは唯の箱 である。分析に必要なログが格納され、必要なアウトプットを簡易に生成 するための環境を提供してこそ有効活用が進む  DeNAでは、アナリストが、ログ設計、KPI集計、KPIの視覚化の全ての業 務を行うため、全工程をスムーズに作業できるための環境づくりが重要  Verticaを有効活用するための工夫 1. 生ログ投入 2. データベーススナップショット 3. 中間テーブル作成ソリューション 4. KPI Viewer (BI Tool)の内製化 31
  32. 32. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. Hadoop 生ログ投入  やりたいこと: 生ログを直接Verticaに投入して即時分析可能な環境を作る  課題: Hadoopは非構造化データをJSONのまま格納しているが、Verticaでは 対象ログに対するスキーマ定義必要。  解決方法: 対象のログを指定してVertica Tableに流し込むコマンドを提供 ⁃ 設定ミスや変更が発生する前提で過去データの再取得やテスト実行によ るエラー表示等アナリストの試行錯誤を可能にする 32 内製 BI Tool Jenkins (job scheduler) Linux terminal Hue Event log Log Collector Vertica 過去データ再取得 対象設定するとログが リアルタイムで流し込まれる 試行錯誤を可能に 生ログは3ヶ月程度でパージ
  33. 33. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. データベーススナップショットローダー  必要性: ユーザのステータス(レベル、攻撃力)、リソース保有状況(回復剤 の保有数)等のデータは、個別にログを投入するよりもデータベーステー ブルを丸々コピーする方が効率的に全ユーザのデータを収集可能。  従来、対象のデータベーステーブルを指定すると、毎日のスナップショッ トデータが格納される仕組みをHadoopでは提供  設定を追加することでHadoopに格納されたデータベーステーブルを Verticaにも投入する仕組みを提供 33 Hadoop 内製 BI Tool Jenkins (job scheduler) Linux terminal Hue Event log Database Log Collector Vertica DB snapshotは原則最新データのみ DB snapshot Loader
  34. 34. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. KPI Viewer (BI Tool)の内製化  従来、アナリストがKPI Dashboardを作成する環境として市販のBI Toolを利用してい たが、いくつかの問題を抱えていた ⁃ 一枚のレポートを作成するのに複数STEPが必要で手間がかかる。 • KPI Dashboard作成ステップ ⁃ STEP1: KPI要件に応じて Hadoop上でpigの集計ジョブを作成&定期実行し MySQLに書き込む ⁃ STEP2: BI Tool上でデータソースとして登録する ⁃ STEP3: BI Tool上でKPIレポート作成 ⁃ レポート数の増加とともに性能が大きく劣化。まともに操作できない。 ⁃ モダンではない使いづらいUI  代替BI Toolを探すもDeNAの要件にマッチするものは見つからない ⁃ レポート作成者 100人程度、レポート閲覧者1000人超 ⁃ LDAP認証に対応し、サービス単位で編集・閲覧権限を設定できること ⁃ ServerはLinux。ClientはWindowsとMac OS-Xの両方のブラウザで動く ⁃ 月額100万円以内の格安で 34 Verticaの高速性を最大限に活かすためにも自作することを決断
  35. 35. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. 内製BI Tool: Argus  大事にしていること ⁃ 特別な事前準備無く簡単にKPIレポートを作成可能なこと 35
  36. 36. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. 内製BI Tool: ArgusのKPI Dashboard作成例 STEP1: Queryを書く 36
  37. 37. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. 内製BI Tool: ArgusのKPI Dashboard作成例 STEP2: Queryを実行し結果を確認 37
  38. 38. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. 内製BI Tool: ArgusのKPI Dashboard作成例 STEP3: グラフ化 38
  39. 39. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. 内製BI Tool: ArgusのKPI Dashboard作成例 STEP4: 定常レポート化 39 Crontab形式で、実行 タイミングを指定
  40. 40. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. Argus + Vertica によるKPI Dashboard作成  Argus + Verticaにより、1分足らずでさくさくKPI Reportを作ることが可能 に  アドホック分析でもその場で結果を視覚化しつついろいろな分解軸での分析 が可能に 40  サービス単位で編集・閲覧権 限をGoogle Groupの登録情 報で制御
  41. 41. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. 中間テーブル作成ソリューション: ViewのTable変換  課題: Verticaが高速なため適切に中間集計テーブルを作らずに複雑なSQLを書い てKPI Reportを作成してしまうことが多い。 アナリストは中間テーブルの作成を億劫と感じがち。  解決方法: ViewをTableに変換するコマンドラインツールを提供  効果 ⁃ View定義をするだけで中間テーブルの作成・定期更新が可能であり、中間テ ーブルの作成工数を大きく削減 ⁃ Viewを同名でTable変換するので集計Queryを変えずに高速アクセスを実現 41 Table View Table Table Table Table Table変換 差分更新(per daily) Argus集計Query1 vv2t –U user convert table_name vv2t –U user append table_name –c date_column Argus集計Query2 Argus集計Query1 Argus集計Query2
  42. 42. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. Vertica導入の効果  KPIレポート整備の工数の大幅削減 ⁃ ゲームタイトルのKPI Dashboard構築に必要な工数が約600hから 100h弱まで削減された (弊社アナリスト調べ)  アドホック分析での試行錯誤が可能になり、分析課題に対してクイックに 答えられるようになった。  分析環境利用ユーザの広がり ⁃ Argus + Verticaで実現する簡単KPIレポート作成環境により、アナ リストだけでなく、開発部門のエンジニアや一部企画メンバーがKPI レポート作成可能に  利用が広がりすぎて想定以上の容量に ⁃ 当初11TBで足りると判断していたが現在25TB ⁃ 2016年3月末には50TB使いたいという要望 ⁃ 生ログいれてそのまま分析したいニーズが強い ⁃ コストを意識した適切な利用が課題に 42 Veritca容量の推移(実績と要望) 11 18 2526 37 50 0 10 20 30 40 50 60 2010.3 2010.6 2010.9 2010.12 2011.3 2011.6 2011.9 2011.12 2012.3 Actual(TB) Plan(TB)
  43. 43. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. サービス毎にVertica関連コストを見える化  Vertica関連コスト(Verticaライセンス、サーバ代金、 ラック使用量等)をサービス単位で見える化し、事業 部/サービスのPLに反映する。 ⁃ 費用はデータ使用量に比例して按分算出  利用者がコスト意識をしっかり持ってVerticaを利用 してもらう ⁃ コスト感がないと Hadoopを使わずに全てVerticaで分析した くなる  期初に利用計画を立て事業部側がコストの妥当性を判 断 ⁃ 原則、計画に従って利用してもらう。 43 事業本部別月額負担コストの推移 サービス別月額コスト負担 サービス別月額データ利用量
  44. 44. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. アジェンダ  DeNA事業概要  DeNAの分析体制とVertica導入前の分析環境  何故 Verticaを導入したのか?  Vertica導入と導入後の分析環境  Vertica活用の工夫とVertica導入効果  まとめ 44
  45. 45. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. 今後に向けて  Hadoop + Verticaの適正な共同利用環境の模索 ⁃ 明確なルールを定義しないとユーザは高速なVerticaのみを使いたが る。 ⁃ Presto等の SQL on Hadoop や Vertica SQL on Hadoop等の 新技術 の比較検証を通して 妥当な構成を追求し続ける。  Verticaの各種機能の徹底活用 ⁃ PreJoin Projection (現状、一部の大規模テーブルに利用が留まってい る) ⁃ Live Aggregate Projection  運用体制の強化・安定化 ⁃ 今後もデータ容量、クエリ数、利用サービスの拡大が想定されるので、 常時安定したパフォーマンスを保つためにも、継続的な運用状態の監視 と改善活動が必要 45
  46. 46. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. まとめ  Vertica及びVerticaを有効活用するための工夫により狙い通りの効果が得られ た ⁃ KPIレポート整備工数の大幅削減 ⁃ 分析課題に対してクイックにアドホック分析を実施し応えることが可能 に  想定以上の利用の拡大 ⁃ 2014年4月時点では 11TBで十分足りると判断していたが、2015年2月 時点25TBに達する。2016年3月末は50TB必要との要望有り。 ⁃ サービス毎の使用量と費用負担を見える化してVertica利用者に費用対効 果を意識してもらうようにしている。  今後に向けて、SQL on Hadoop等の最新技術動向をウォッチしつつ、適性な Hadoop+Verticaの共同利用環境を模索しづける予定。 46
  47. 47. Copyright (C) 2015 DeNA Co.,Ltd. All Rights Reserved. 47 Identity of DeNA

×