あの人気ソーシャルアプリを支える環境とは? グループスを支えるインフラ 環境を語り尽くす

第6回 人気ソーシャルゲームが大量のアクセスを効率的にさばく秘密に迫る[後編]

この記事を読むのに必要な時間:およそ 2 分

パフォーマンスに対するシビアな要求に応えるため,グループスではストレージにFusion-ioのioDriveを活用し,高いユーザエクスペリエンスを実現しています。そこで,ioDriveを導入したメリットについて,同社のソーシャルゲーム事業本部システム基盤部長の伊東弘満氏と,同インフラグループの大和屋貴仁氏に伺ったインタビューの模様を前回に引き続きお届けします。

(左から)伊東弘満氏,大和屋貴仁氏

(左から)伊東弘満氏,大和屋貴仁氏

SQL Serverのスペシャリストが語るioDrive導入のメリット

提供しているソーシャルゲームをユーザが快適にプレイできるよう,グループスで積極的に活用されているストレージデバイスがFusion-ioの「ioDrive」です。現在のITシステムではストレージの遅さがシステム全体のボトルネックとなっており,データベースへのリクエストが頻発するソーシャルゲームの領域においてもストレージの高速化は至上命題となっています。そこでグループスでは,この課題を根本から解決するioDriveの導入に踏み切ったというわけです。

ioDriveの導入はシステムにどういった変化をもたらしたのでしょうか。Microsoft SQL Serverのエキスパートであり,2011年1月に日本初の「SQL Azure MVP」を受賞した大和屋氏は次のように話します。

「データベースチューニングのポイントは,どこまで行ってもストレージへの物理I/Oをいかに減らすかに尽きます。アクセスするデータをできる限りメモリ(キャッシュ)に載せる,あるいは物理I/Oが発生しないようにインデックスをチューニングする,といったことが重要になります。しかしioDriveを使うと,物理I/Oの発生による遅延がほぼ無視できるようになり,それまでのチューニング技術が陳腐化してしまった。その意味で,時代が変わったということを実感しました(大和屋氏)⁠

このようにストレージに対する物理I/Oの問題が解消されたことで,今度はCPUがボトルネックになりつつあると言います。そのため,CPUの負荷を軽減するためにデータベースのインデックスを追加するといった選択が日常的に行われるようになったとのこと。それでは,ioDriveの導入は日々のシステム運用にどういった変化をもたらしたのでしょうか。

「日常的な運用で言えば,物理I/Oが速いのでバックアップが短時間で済むようになったことですね。ioDriveを使わなければ半日から1日はかかる量のデータをバックアップしていますが,それが数十分で完了するのです。通常であれば,夜間バッチを組んで数時間動かし続ける,あるいはオフラインにしてバックアップしたり,ストレージのスナップショット機能を使ったりして逃げざるを得ない。しかし,ioDriveなら数十分で終わります。しかもサービスを停止する必要もありません。運用としてはこの点が一番大きいですね(大和屋氏)⁠

次世代インフラを見据え新たなストレージ環境を模索

ストレージに限らず,新たなハードウェアを導入する際に最も気になるのは信頼性でしょう。とくに登場したばかりの製品では,長期間利用した場合に信頼性が低下しないかどうかは非常に気になるところです。ioDriveの信頼性はどうなのでしょうか。

「信頼性については,現在のところまったく問題ありません。フラッシュメモリを使っている関係上,利用し続けているとアクセス速度が低下するという問題はありますが,それについても初期化することで導入時と同じパフォーマンスを取り戻せるので,大きな問題ではありません(伊東氏)⁠

SSDやioDriveで使われるフラッシュメモリは,連続した空き領域が減少すると書き込み速度が低下します。書き込むデータの配置を工夫することなどで書き込み速度の低下は抑えられますが,製品によっては長期の使用により著しい性能低下が生じます。その点,ioDriveは安定した性能に加え論理フォーマット機能もあり,アプリケーションの性能を容易に維持できます。

さらに伊東氏は,コスト面においてもioDrive導入のメリットは大きいと続けます。

「ioDriveを導入せず,データベースを分割して負荷分散によって同等のパフォーマンスを得ようとすると,現在の10倍ほどのデータベースサーバが必要になると思います。そうすると,当然ハードウェアのコストもかかりますし,運用負担も大きくなってしまいます。単体で見ると確かにioDriveは高価な製品ですが,その効果まで含めて考えるとけっして高いとは思いませんね(伊東氏)⁠

現在グループスでは,個々のサーバにioDriveを接続する,いわゆるDAS(Direct Attached Storage)の形で運用していますが,今後はストレージの集約も検討していきたいと伊東氏は説明します。

「サーバの集約と整理統合を進めるために共有ストレージの利用も検討しています。ただ,その場合はサーバとストレージをつなぐネットワークがボトルネックになるため,それをどう解消するかを考えなければなりません。選択肢としてはファイバチャネルがありますが,高速なストレージでは帯域幅を使い切ってしまいます。そこで考えているのがInfiniBandでサーバとストレージをつなぐ方法で,すでに検証を進めています(伊東氏)⁠

Fusion-ioは,ioDrive搭載サーバを共有ストレージとして利用可能にする「ION Data Accelerator」をリリースしています。これを利用して共有ストレージを構築し,サーバとInfiniBandで接続できれば,ioDriveと共有ストレージの双方のメリットを享受できるというわけで,大和屋氏も期待を膨らませます。

「ioDriveはサーバに内蔵して使うことを前提としていたため,共有ストレージでの利用を前提としたソリューションでは使えなかったのです。その制限がなくなるのは大きいですね(大和屋氏)⁠

ストレージの課題を解決したグループスは,さらなるインフラの効率化に向けてさまざまな技術検証を進めています。同社のサーバ環境がこれからどう進化していくのか,大いに注目したいところです。

グループスでは,強い好奇心を持ったエンジニアを募集しています。興味があれば,ぜひ以下のWebサイトにアクセスしてみてください!

URL:http://gloops.com/recruit/

コメント

コメントの記入