League of Legendsのゲーム内体験の最適化 (Databricksユースケース)

[Customer Story: Riot Games \- Databricks](https://databricks.com/customers/riot-games)の翻訳です。

**要約**:

- EMRより50%高速なデータ処理

月間1億ものアクティブユーザーを持つ有数のPCゲームメーカーとして、Riot Gamesはロイヤルカスタマーにコミットするとともに、世界一のプレイヤー中心の企業になることをミッションとしていました。5000億ものデータポイント、26ペタバイト以上のデータに対して、データチームはデータを活用して全体的なゲーム体験を改善するために、より効率的かつスケーラブルな方法を必要としていました。Databricksのレイクハウスプラットフォームを活用することで、Riot Gamesはプレーヤーに特化したコンテンツや、購買のレコメンデーションを提供し、攻撃的なゲーム内の振る舞いを止め、ネットワークのパフォーマンスを最適化することで、顧客のエンゲージメントを確実なものにし、解約を削減しています。

# データから洞察を得るためには、レガシーなインフラストラクチャでは不十分

比較的頑健なネットワークとエンジニアリングのインフラストラクチャがあったにも関わらず、Riot GameにおけるEMRへの依存は、データ及びエコスステムの急激な成長に対して効果的にスケールすることを妨げていました。分断されたインフラストラクチャと非効率的なワークフローは、多くの手作業を必要とし、コラボレーションを阻害し、ネットワークの問題を事前に特定することをほぼ不可能なものにしていました。使用しているツールとデータの分断によって、非効率的で信頼性の低いプロセスを使わざるを得ませんでした。最初に、エディターはデスクトップでSQLを作成し、それをHiveに転送しますが、これは最低一回は処理に失敗します。成功するまで繰り返すことで、クエリーによって非常に遅いEMRからデータを抽出します。そして、さらにデータを確認するためにデスクトップに手動でデータを移動します。

ネットワークの性能劣化、接続問題の原因を特定しようとすることは、苦痛以外の何ものでもありませんでした。Riot Gamesは20万以上の都市とISPに渡って流れるペタバイトオーダーのストリーミングデータを手動でモニタリングしていました。このため、ゲーム体験を悪化させ、ユーザーに不利益を与えるような問題を特定することはほぼ不可能でした。結果的に、これらのデータにおける障害は、データサイエンスチームが組織のデータを理解し、活用することを妨げていました。パフォーマンス改善やゲーム内でのレコメンデーション、効率の改善を行うための機械学習モデルを構築するために、Riot Gamesはデータ自身を近代化する必要がありました。

# 単一のプラットフォームでデータサイエンスとデータエンジニアリングを実現

Riot GamesはDatabricksのレイクハウスプラットフォームを活用し、分析、機械学習ユースケースにおいてデータの集中管理、民主化を成し遂げています。完全なマネージドクラウドインフラストラクチャは、データサイエンス、データエンジニアリング両方における性能、信頼性、スケーラビリティを満たしています。これにより、膨大なDevOpsの労力なしに、簡単にパイプラインやモデルのトレーニングをスケールアップすることができます。Databricksは、様々なユースケース、クエリー、デバッグ、ストリーミングデータ、バッチデータの活用、MLモデルの構築などを通じて、部門横断でのワークフローを単一のプラットフォームで実現します。

Delta Lakeによって、彼らのユースケースにおける機械学習ワークロード、分析ワークロードを支える高性能・高信頼のETLパイプラインを、データエンジニアリングチームによって構築できるようになります。Databricksのインタラクティブワークスペースにおいては、データチームは共有されたノートブック環境を活用して迅速かつリアルタイムなモデル改善に取り組むことができます。データサイエンティストは、単一のインタラクティブなインタフェースを通じて、容易にデータにアクセスし、クエリーの作成、データ探索、デバッグ、モデルのトレーニングを行うことが可能となります。時間、リソースを節約するために、DevOpsの労力をかけることなしに、ETLワークロードをジョブとしてスケジュールすることができます。

# パフォーマンスの劇的な改善はゲーム体験をも改善します

データ処理とデータサイエンスの生産性が改善されることで、Riot Gamesは優れたゲーム体験を確実にするためのいくつかのユースケースを実現しました。特に、Delta Lakeを活用することで、ETLに要する時間がEMRの時と比較して50%速くなりました。下流に流れていくデータフローを用いて、Riot Gamesのレコメンデーションエンジンは、120種類ものキャラクター、異なるスキンカラー、数千にも及ぶ組み合わせと数十億のゲームプレイのデータポイントとマッピングを行うことができました。ゲームプレーヤーは必要なコンテンツを容易に探し出すことができ、結果的にはRiot Gamesのコンバージョンを向上させました。

Databricksにより、Riot Gamesのデータチームは、ネットワーク遅延によるゲームプレイの遅延を予測するモデルを開発、デプロイすることができました。ストリーミングアーキテクチャにより、ネットワークオペレーションアラートに対するリアルタイムの異常検知が可能となりました。今や、Riot Gamesは、プレーヤーにネガティブな影響が出る前に問題を解決することができるようになっており、ゲーム内の体験をより優れたものにしています。根本原因の分析は正確になり、予測モデルには定常的にデータストリームが入力されるようになり、全体的なネットワークパフォーマンスは大きく改善されました。

Databricksは、TensorFlowなどの最新のディープラーニングフレームワークと統合されているので、Riot Gamesは容易にディープラーニングモデルを開発、トレーニングすることができました。今では、Riot Gamesはゲームプレイ中の攻撃的な言葉遣いを理解し、リアルタイムで検知することが可能となっています。結果として、ゲーム内での攻撃者を分離し、ゲーム全体の治安を改善しています。より適切な環境が顧客の満足度、定着率、生涯価値を改善し、全体的なゲーム体験をより良いものにしています。Riot Gamesは、League of Legendsのゲーム経験を改善する機会を活用し続けられるようにデータサイエンティストとデータエンジニアを支援すべく、Databricksのレイクハウスプラットフォームを利用し続けるでしょう。

# 関連記事

- [Technical Talk: Improving the Gaming Experience with Apache Spark™](https://databricks.com/session/video-games-at-scale-improving-the-gaming-experience-with-apache-spark)
- [Silicon Angle Interview: The Analytics Architecture Behind Riot Games](https://siliconangle.com/2017/07/20/game-data-science-analytics-architecture-behind-riot-games-sparksummit/)

### Databricks 無料トライアル

[Databricks 無料トライアル](https://databricks.com/jp/try-databricks)