SEGA HARDlight、MongoDB Atlasへの移行により、オペレーションを簡素化し、数100万人ものモバイルゲーマー向けのエクスペリエンスを向上

「ソニック・ザ・ヘッジホッグ」が当社の2D画面上で初めてリングを追い求めたのは1991年夏のことでした。それ以来、ゲームのやり方は大きな成長を遂げました。91年の時点では、TVやコンソールにゲーム機を接続するというものでしたが、ゼロ年代にはオンラインのPCゲームが登場し、今やモバイルや仮想現実へと変化しています。しかし、驚くべきことに、この25年の間、これらのゲームの基盤となるインフラは、実際にはほとんど全く変化していませんでした。使われているのはすべてリレーショナルデータベースでした。しかし、ゲームにおける規模、柔軟性、創造性に関するニーズがかつてないほどに高まった結果、この状況は急速に変化しつつあります。SEGA HARDlightでは、このような変化を主導しており、DevOpsカルチャーを採用し、クラウド型のMongoDBサービスである MongoDB Atlasを使用することにより、可能な限り最良のゲームエクスペリエンスを提供しています。

モバイルゲームにアイコンを提供

SEGA HARDlightは、誰もが知っているゲーム企業であるSEGAのモバイル開発スタジオです。SEGA HARDlightはイギリスのロイヤルレミントンスパに本社を持ち、同スタジオは、大人気の青い色をしたキャラクターである「ソニック・ザ・ヘッジホッグ」の生みの親として良く知られています。また、ソニックを主人公としたゲームの他に、HARDlightでは、「Crazy Taxi : City Rush」や「Kingdom Conquest : Dark Empire」のような多くの有名ななゲームの構築と実行も担当しています。

Sonic Dashの画面

Sonic JumpやSonic Dashのようなモバイルゲームの初期のバージョンでは、インターネットへの接続は必要なかったため、サーバー機能がありませんでした。それらはシンプルなゲームであり、開発者は、当初、SEGA HARDlightの独自のデータセンター内でホスティングされる、JavaやMySQLをベースとした社内技術スタックを使用して、同ゲームの各リリースをサポートしていました。

これらのゲームを公開するための標準的な手順には、サーバーに対して限界まで負荷テストを行った後、受け入れ可能な破壊点を処理するためにリソースをプロビジョニングすることが含まれていました。これはアプリケーションの機能を制限するものであり、プロビジョニングされたリソースの限界に達した場合、サービス停止を引き起こす可能性がありました。ゲームにより多くのオンライン機能が追加され人気が高まるにつれ、この従来型のアプリの構造は時代遅れになってきました。

膨大な量の利用者:トラフィックの急増

モバイルゲームには興味深い負荷パターンがあります。ゲームのリリース直後には、非常に多くのユーザーがそのゲームに殺到します。最も人気の高いゲームの場合、リリースから数日または数時間で数100万人がゲームに殺到することもあります。ピーク期間は通常短く、ピーク後のユーザー数は、熱心なプレーヤーからなるロングテールへと落ち込みます。動的なゲームにおけるこのタイプのトラフィックに関するプロビジョニングを行うことは、大きな悩みの種です。2014年にリリースされた「Crazy Taxi: City Rush」で、トラフィックがどのように変化したかを次のグラフに示します。

人気のあるモバイルゲームの典型的な利用状況を示すグラフ

SEGA HARDlightのテクニカルディレクターであるYordan Gyurchev氏は、次のように話しています。「これだけ膨大な量になると、データベース内の小さな変更であっても、大きな影響をもたらします。完璧なゲームエクスペリエンスを提供するためには、開発者は、自社で使用しているデータベースにおけるパフォーマンスのトレードオフに精通している必要があります」。

Crazy Taxi : City Rushの画面

超音速のスケーリング

SEGA HARDlightでは、ゲームがより多くのオンライン機能を使い、さらに大規模なユーザーアクティビティの爆発的増大をもたらすであろうことを認識していました。また、ゲームデータのほとんどはアカウントベースであるため、それらのデータがリレーショナルデータベースの行と列にはぴったり適合しないことも認識していました。これらの制限に対処するために、HARDlightのチームは、代わりとなる選択肢を探しました。同チームではCassandraとCouchbaseを評価しましたが、それらは管理が複雑であり、これらのベンダーは、HARDlightが要求するSLAをサポートするために必要となる成熟したサポートを提供していませんでした。そこで、HARDlight のエンジニアは、DaaS(Database as a Service)であるMongoDB Atlasに目を付けました。

その後、コスト、メンテナンス、バックアップなど複数の次元を通じた拡張的な評価とテストを行った結果、MongoDBが、大量トラフィックを抱える常時接続環境への対処に要するスケーラビリティと柔軟性をネイティブに提供することが分かりました。しかし、HARDlightのチームは、運用面でのサポートも必要としていました。

MongoDB Atlasの高度な運用ツールは、2名のスタッフからなる小規模なDevOpsチームに対して、 数100万人のユーザーが参加した場合でもゲームを処理し実行できる能力を提供するものでした。このため、HARDlightのチームは、メンテナンス、アップグレード、バックアップに関しては心配する必要がなくなりました。実際に決め手の1つとなったのは、ボタンをクリックするだけでチェックポイントへとロールバックできる、ポイントタイム型のバックアップおよび復元機能でした。AWS上でMongoDB Atlasを稼働させることで、SEGA HARDlightは、「ボスレベル」のスケーリングを即座に採用できるようになりました。

Yordan氏は次のように話しています。「HARDlight では適切なツールを見つけることに情熱をかけています。調査の結果、水平方向のスケーラビリティを備えたドキュメントデータベースを使用することが、プレーヤーアカウントベースのゲームにとって最適であることが分かりました」。

「大量のトラフィックを処理できる高度なスケーラビリティを備えたソリューションを作成するためには、詳細な部分まで理解する必要があります。これを行うためには、通常、エンジニアは、スタックの多くの異なる部分に注目する必要があります。しかし、MongoDB AtlasとMongoDBによるサポートは、大幅な近道を当社に提供してくれます。もしこの作業を社内で行うとすれば、データベースの専門家と同じくらいの知識が必要となったでしょう。今や当社では、MongoDBが提供する豊富な専門知識とクラス最高のテクノロジーを利用できます。

Sonic Forces

HARDlightによるMongoDBを利用した最初のゲームは、Kingdom Conquest: Dark Empireでした。このゲームは、スタートからストレスのない起動を提供するものであり、MongoDBに関する初体験をエンジニアに提供しました。その後、2017年終わりの週末に、Sonic Forces: Speed Battleがモバイル上でリリースされました。これは要件の厳しい常時接続アプリケーションであり、インターネットへの継続的な接続と共有型のリーダーボードを実現するものでした。MongoDB Atlasを稼働させている3つのシャードクラスタをバックグラウンドで運用することにより、数100万名のゲーマーがレースに参加した場合でも、複雑な負荷を処理するためのスケーリングが容易に行えました。データベースは低レイテンシ環境でも安定しており、サービス中断は1件もありませんでした。この結果、リリース時のDevOpsチームのストレスを低く抑えることができたほか、多くの熱狂的なゲーマーを産み出すことに成功しました。

最新のSEGA HARDlight制作によるモバイルゲーム:Sonic Forces: Speed Battle

Yordan氏は次のように結論付けています。「MySQLの場合、データベースをバックエンドで正しく動作させるためには、複数のゲームをリリースする必要がありました。MongoDB Atlasでは、大規模なゲームのリリースを最初から成功させることができます。これは素晴らしいことです」。

ゲーム用のプラットフォームは長い年月をかけて進化および変化しているため、データベースレイヤもまた成長および適応する必要があります。現在、SEGA HARDlightでは、すべての新しいゲームを、それらがオンラインで利用可能になった時点でサポートするために、MongoDB Atlasの利用を拡張しています。運用、管理、スケーリングをサポートすることで、MongoDB Atlasは、 HARDlightが、世界で最もアイコン的なゲームの構築と実行に自信を持って集中できるようにします。

90年代のインフラは、なくなりつつあります。それらは、あらゆる点で現代的で、強力で、有名な漫画キャラクタのように素早いスタックにより置き換えられています。

SEGA Hardlightでは、同社のチームに参加する優秀なエンジニアを求めています。興味のある方は同社の社員募集 のページをご覧になるか、またはhardlightcareers@sega.co.ukまでメールをお送りください。

今すぐ無料でAtlasを使い始めましょう。ぐずぐずしている暇はありません。

© 2020 MongoDB, Inc.