こんにちは!システム部のテラサワです!
CTO室というチームでシニアマネージャーをしています。
普段は他部門の方からの開発についての相談に乗ったり、障害の調査をしたり、Redmineのチケットを承認したり、、、あれ、、、開発してない、、
さて、今日は現在のGMOリサーチのシステムがどのような構成になっているのか、概要を説明したいと思います。
これはシステム概要として入社された方に説明している内容となります。
これを書いたら入社時の説明をしなくて良くなるんじゃないかという打算的意図もあったりなかったり・・
開発言語やフレームワーク
GMOリサーチのシステムはなるべく機能ごとに疎結合にしようという意図のもと、多くのアプリケーションから成り立っています。
開発言語はphpが7割、javaが3割程度になっています。
割合は少ないですが、一部のバッチ処理でperlやpythonが使われています。
フレームワークについては、phpはCakePHPの2系、3系。javaはspringで古いものはstrutsを使っていたりします。(新しいプロジェクトではjavaならspringbootですね)
MarketObserver
GMOリサーチのシステムMarketObserverは消費者の声を聞きたい企業とアンケートに回答頂ける消費者を繋げるハブの役割を担うプラットフォームとなっています。
システム概要
では早速本題のシステム概要についてです。
全体感を伝えるために詳細は省いていますが、おおよそ下記の図のような機能・構成となっています。
消費者の声を聞きたい企業=クライアントをデマンドサイド、アンケートに回答頂ける消費者=モニターをサプライサイドと定義しています。
全体像だけを見てもなかなか理解し難いと思いますので、デマンドサイド、サプライサイドに分けて説明していきます。
デマンドサイド
まずはデマンドサイドから。
調査を実施したいクライアント向けに、ウェブシステムであるMarketObserver(略してMO)を提供しています。
MOには調査の概要を登録し、セグメンテーションをしてどの位の人数の回答が集まりそうかを予測したり、アンケートを配信する機能があります。
例えば20代の東京、神奈川、千葉、埼玉に住んでいる女性について、各セグメント100人ずつの回答を集める、といった設定が可能です。
設定により、配信エンジンが対象の条件を満たすモニターへランダムでアンケートを配信し、回答データを集めることが出来ます。
また、MOにはアンケートを作成する機能、集めた回答データを集計する機能もあります。
概要図右上の案件連携APIとは、MOのWebシステムから登録するデータをAPIで作成する機能です。
これを利用して、既にクライアントが保有しているシステムからシームレスにGMOリサーチが保有するクラウドパネル(モニター群)へアンケートを配信する事が出来ます。
特に案件連携APIは海外の大手調査プラットフォームと連携しているため、GMOリサーチの強みであるアジアの消費者へのアンケートが毎日連携され自動で配信されています。
日本を含むアジア各国から、毎月2,000万件以上の回答データを集め、クライアントへ提供しています。
サプライサイド
GMOリサーチの強みはアンケートに協力して頂けるモニターの数です。
日本だけではなくアジアの主要国で様々なパートナーと連携し、アンケート配信可能なモニター群クラウドパネルを構築しています。
このクラウドパネルを構築する仕組みがサプライサイドのシステムとなります。
GMOリサーチと提携して頂いている企業と、情報を連携するAPIがあります。
連携には、ファイルで連携するパターンとアンケートの回答によって連携するパターンがあります。
また、提携先のシステムではアンケート一覧APIを利用しアンケート一覧ページを構築頂くか、GMOリサーチが提供するアンケート一覧ページへリンクして頂く事でアンケートコンテンツの導入が可能となっています。
もう一つ、提携先のシステムにシンプルなポイント付与APIの実装をして頂く事で、モニターがアンケート回答後にリアルタイムに提携先のポイントを付与することが可能です。
このサプライサイドの連携をクラウドパネルへのコネクトと呼んでいます。
現在、このコネクトの仕組みを使って日本を含むアジア全体で延べ4,000万を超えるモニターがMOに連携されています(媒体間の重複を含んだ数値です)。
物理構成
GMOリサーチのシステムはオンプレミスとクラウドのハイブリッド構成となっています。
基本的にはDBサーバーをオンプレミスに配置し、APサーバーはクラウド上に配置しています。
また概要図に記載していませんが、クラウド上にDWHを構築して大量データの集計処理や分析基盤として利用しています。
最後に
以上がGMOリサーチのシステム概要となります。
今後はデータを活用していくための基盤作り等を行っていく予定です。
GMOリサーチのシステムに少しでも興味を持たれた方が居たら嬉しいです!
それでは最後まで読んでいただき、ありがとうございました!
*
GMOリサーチでは、WEBエンジニア(サーバーサイド、インフラ、フロントエンド)を随時募集しております。
興味のある方は、ぜひこちらからご応募ください!
詳しい募集要項など採用情報はこちら