株式会社インティメート・マージャーは DMP(データ・マネジメント・プラットフォーム)の開発・提供を行う会社です。日本最大級を誇る約 3.6 億のオーディエンスデータと高い分析技術を用い、ナショナルクライアントや大規模ポータルサイトの DMP 構築やデータ活用の支援、データ解析、データ利用チャネルへの連携事業を行っております。
当初のシステムはオンプレミス上で構築されていましたが、ビジネスが拡大していくにつれ、データの急増、増加するシステムの開発案件への対応の為、少人数でもスピードを落とさずスケールさせることが出来るインフラ基盤の構築と、日々蓄積されていく運用上の負荷をいかに軽減できるが重要な課題となりました。
こうした課題を解決するため、AWS を検討することとなりましたが、調達が迅速に行えることはもちろん、運用負荷を軽減するマネージドサービスの豊富さも採用の大きな決め手となりました。また、AWS 自身の機能の充実度だけでなく、外部の連携サービスや事例の多さもポイントとなりました。
オンプレミスから AWS への移行の際は、API で連携している箇所が多かったため、フロントの Web サーバーから順に都度 DNS を切り替えることで移行を行い、1 ヶ月程度で終えることができました。検索機能には、Elasticsearch を導入、また NoSQL データベースとして aerospike を導入し、これらの検証・導入は 3.5 ヶ月ほどで完了し、実稼働を開始しました。
お客様にサービスとして提供している部分(UI)については、Amazon EC2、Amazon RDS、Amazon ElastiCache、Amazon S3 などを用い標準的な構成で構築しています。構成的には他のプラットフォームでも稼働可能ですが、Amazon RDS、Amazon ElastiCache などのマネージドサービスを利用することで運用コストを抑えることができ、非常に助かっています。
バックエンドでは Amazon EC2 に AutoScaling を採用することでスケーラビリティーを確保しつつ、Amazon S3、Amazon SQS を用いスケーラブルなジョブワーカーシステムを構築しています。特に Amazon S3 は各種連携のハブとして用いており、弊社にとって非常に重要なサービスとなっています。サーバーの構築は Ansible と Packer にて AMI を作成し、AutoScaling にて展開しています。また、OS は Linux、ミドルウェアには Nginx、Python、MySQL、Redis、Elasticsearch、Aerospike(KVS) などを採用しています。
基本方針として、①マネージドサービスを利用 ②サーバを構築する際はオートスケールを利用 といったことを徹底したこともあり、規模をスケールさせる速さが飛躍的に向上しました。現在も、マネージドサービスを中心にした各機能の拡充を行っていったおかげで、サーバー台数が当初の 10 倍超になった今も安定して運用できております。
また、仕様を決めてスモールスタートさせるところにフォーカス出来たこともあり、新規開発・導入の速さも向上することが出来ました。
さらに耐障害性の面においても、マネージドサービスの利用、AutoScaling を利用したサーバー構築を徹底したことにより、大半の障害において自動復旧が可能となり、耐障害性の向上だけでなく、障害からの迅速な復旧を容易に行うことが出来るようになったことは事業継続性の向上にも役立っていると感じます。
当社は数名のベンチャー企業ではありますが、少ない人員であってもディザスタリカバリに容易に対応できることはクラウドならではの魅力であると思います。
こうした AWS のマネージドサービスを活用したことによる負荷軽減は、当社に開発のスピード向上というメリットをもたらしました。これにより、連携企業(サービス)数も飛躍的に伸びており、AWS を導入したことは成功だったと考えています。
マネージドサービスを積極的に利用することで AWS に適した構成に自然と向かっていくのではないでしょうか。今後クラウドの導入を検討されている方は、オンプレミスの構成などはあまり意識せずにゼロベースで考えることをおすすめいたします。
- 神野 優輔 様(株式会社インティメート・マージャー 開発本部)