Google Cloudのサービスを用いて社内のデータの活用を推進した話

こんにちは! エス・エム・エスキャリア開発者の石塚です。
Google Cloud Platformについての投稿第3弾になります。
前回まではGCPの各プロダクトを用いて、データ連携基盤となるシステムを構築する話を書きました。
今回はそのデータ基盤を、Google Cloudの各サービスを用いて、社内のマーケティング担当者向けにデータの活用を推進した話を簡単にご紹介したいと思います。

全体図

弊社の持つデータは、
・Webのデータ
・Salesforce上のCRMデータ
・各部門ごとに持つCSVデータ
など、様々な場所に散在しています。それぞれのデータを単体として活用していく分にはそのままの場所で利用をすればよいのですが、データを1箇所に集約し、一元管理したり、データを紐づけてビジネスに活用したいという要件も当然出てきます。
そこで現在活用を進めている、Google Cloud Platformを中心に構築したデータ連携基盤が登場します。

図のように、各地に散らばった分析に必要なデータを、
GCPのBigQueryに蓄積、
その後SQLで加工したデータを作成、
最終的にGoogle Data Studio(日本での製品名はGoogleデータポータル)を用いて、ダッシュボード化して利用しています。

データ連携の処理については、以前紹介しましたCloud Composerをメインに構築し、タスクに依存関係を持たせてスケジュールを実行しています。イベント起動(外部システムによってストレージにファイルが置かれたタイミングで処理をする)が必要な場合は、トリガーによってPythonなどのスクリプトを動かすことができるサービス、Cloud Functionsを用いるような構成としています。

なぜGoogleデータポータルなのか

Googleデータポータルとは、Googleが提供するBIツールです。BigQueryやスプレッドシートなどのデータをデータソースとし、表やグラフ、フィルタなどを組み合わせたダッシュボードを簡単に作成し、共有できるサービスです。しかもGoogleデータポータルそのものは無料で利用可能です。

弊社では全社的にGSuiteを利用しています。GoogleデータポータルはGoogleドライブ上に共有されたファイルのように、URLで共有ができたり、閲覧編集権限をGoogleアカウント、グループ単位で細かく設定することが可能です。既にある環境に則り、スピーディーにBIの活用、共有が進められるという理由から、Googleデータポータルの活用を進めています。

さらに高度な機能を用いて分析をする担当者は別のツールを用いたりもしています。
また、従来通りSalesforceのレポート機能や、スプレッドシート、Excelでのデータの利用も選択肢にできるよう、BigQueryで集計したデータをGoogleドライブにファイル出力したり、SalesforceへUPDATEをかけて返すような仕組みも作りました。

入力情報をスプレッドシートに持たせる

Googleデータポータルはフィルタ機能は豊富ですが、入力の機能は欠けます。例えばGoogleデータポータルのダッシュボード上で実績を見ながら、計画値を変更したり、日々の業務の数値にかける係数を変更したりしたいという要件の場合、どうしても利用側がデータを入力し、それをGoogleデータポータル側に反映させる必要があります。
DBを更新するインターフェースを提供するなど、いろいろと考えられる手段はありますが、今回はGoogleスプレッドシートに入力させる手段を採用しました。

Googleデータポータルはスプレッドシートを直接データソースとして参照することもできますが、BigQueryのデータと結合するのにあたって、条件をSQLで書けることが望ましいです。そのため、
①BigQueryのテーブルに、外部表としてスプレッドシートを読み込ませ
②そのテーブルと、BigQueryの他の実テーブルをSQLで結合したデータソースを作る
といった方法を取っています。

例えば以下のようなスプレッドシートがあったとします。

外部表としてBigQueryに読み込ませるため、BigQueryのWebUI上でテーブルを作成します。
スプレッドシートのURLと、参照するシート範囲もここで定義しています。

作成すると、このようにSQLで取得することができるようになります。
このテーブルと、他のBigQueryの大容量テーブルを組み合わせて、分析用データソースを作っていきます。

専用の画面を作成すれば、バリデーションチェックなどの柔軟な制御もできますが、Googleデータポータル、スプレッドシートともにGsuiteによる権限管理、共有がしやすいことから、これらのサービスを組み合わせて利用を進めています。

まとめと今後の展望

以上、今回はGoogle Cloudの各サービスを用いて、社内のマーケティング担当者向けにデータの活用を推進した事例を、簡単に紹介いたしました。

分析に必要なデータを1箇所に集約し、活用ができる環境は整いつつありますが、分析、サービスへの貢献といった、本当の意味でのデータの活用にはまだまだ多くの課題がありそうです。新しい手段やサービスにも継続して挑戦しつつ、また機会がありましたら本ブログにて公開できたらなと思います!

Pocket
LINEで送る