クラウド上のシステム高速化は意外と難しい。「サーバーの台数を増やせばよい」と安易に考えていると、必要以上にコストが高くつく。サーバー増強に頼らず性能問題を解決するポイントを、事例を基に紹介する。

 販促支援のSaaSを提供しているシナジーマーケティング。基盤の構築・運用を担当する同社の坂井 学氏(iNSIGHTBOX事業推進室)らのチームは2014年6月、オンプレミスで運用していた「iNSIGHTBOX」というサービスの基盤を、パブリッククラウドのAWS(Amazon Web Services)に移行した。

 iNSIGHTBOXは、ユーザー企業が自社顧客の購買履歴やネット上の行動履歴のデータを蓄積し、分析するための環境を提供するサービス。そのシステムは、主にWeb-APサーバーと、顧客マスター情報などを管理するRDBMS「PostgreSQL」、購買履歴や行動履歴を蓄積するNoSQLで構成する。

 購買履歴や行動履歴データの一つひとつの容量は小さいものの、書き込み量は膨大になる。移行を決めた時点でその数は億単位に達していた。今後も増えることが確実なため、オンプレミスでハードウエアを調達して運用し続けるのが困難と判断した。

 移行に当たり、坂井氏らは安定稼働を重視した。iNSIGHTBOXのユーザー企業には大手製薬会社やガス器具メーカーなどが名を連ねており、基盤の移行によって動作が不安定になるような事態は許されないからだ。そこでひとまず、オンプレミスの構成をほぼそのまま移行させようとした。

 しかしAWS上に検証環境を構築してテストしたところ、性能が十分に出ないことが判明した。「オンプレミスの性能の7割程度で処理量が頭打ちになってしまった」(坂井氏)。

 パブリッククラウドは、性能が不足した場合にサーバーなどのリソースを柔軟に追加できる。ただ、坂井氏らは安易なリソース追加に頼るわけにはいかなかった。リソース増強は相応にコストがかさむため、移行を決めた時点の想定予算を大幅に上回りかねないからだ。このため坂井氏は、リソース追加に頼らずに性能問題を解決しようと、試行錯誤することになった―。