概要

Google Search Console(サーチコンソール)はGoogleが提供するWeb上での検索結果を分析するツールです。サーチコンソールを利用することで自分のWebサイトのGoogle検索での表示回数・掲載順位を把握したり、その結果からSEO上の問題点を修正してWebサイトの注目度を高めることができます。
サーチコンソールのデータを分析するには標準のレポート機能を使用する方が多いと思いますが、データの量・質ともに高度な分析を行う際はサーチコンソールのデータを別途データの高速処理に長けたDWH(データウェアハウス)へ統合し、DWHと連携したBIツールで可視化するという流れが有効になります。一方このような高度なデータ分析はデータエンジニアリングの知識が必要となり、一般的にサーチコンソールを利用すると思われるマーケティング部門に携わる方には少しハードルが高いのではないでしょうか。

そこで今回はtrocco®️というデータ分析基盤構築サービスを使い、サーチコンソールのデータ抽出、DWH(今回はSnowflakeを使用)への統合、Lookerを利用した可視化までやってみようと思います。

なお今回、データの転送手段として使用するtrocco®は、サーチコンソールの他にも、様々な広告・CRM・DBなどのデータソースにも対応しています。

Google Search ConsoleのデータをSnowflakeへ転送

ゴール

サーチコンソールのデータを下のようにSnowflakeに統合し、

searchconsole_testプレビュー.png

Lookerで可視化します(作成後は自動で最新値に更新することも可能です)

consnow_ダッシュボード.png

こんな人におすすめ

  • サーチコンソールのデータをSnowflakeに自動的に蓄積させたい
  • Google検索での表示回数・掲載順位について自動的に分析できるようにしたい
  • サーチコンソールをデータ元として利用したい

1. trocco®でGoogle Search Console → Snowflakeの転送自動化

1-0. 事前準備

データの転送のためにはtrocco®のアカウント・Googleアカウントが必要です。

無料トライアルを実施しているので、事前に申し込みをしておきましょう。
https://trocco.io/lp/index.html
(申し込みの際にこちらの記事を見たという旨を記載して頂ければご案内がスムーズに行えます)

1-1. 転送元・転送先を決定

trocco®にアクセスして、ダッシュボードから「転送設定を作成」のボタンを押します。

転送元に「Google Search Console」を指定し、転送先に「Snowflake」を選択して転送設定作成ボタンを押します。

consnow転送新規.png

設定画面になるので、必要な情報を入力していきます。

1-2. Google Search Consoleとの連携設定

consnow作成.png

次に「転送元Google Search Consoleの設定」内の「接続情報を追加」ボタンを押します。

consnow追加.png

別のタブでサーチコンソールとの接続情報の新規作成画面が開きます。
接続情報を作成するためにJSON Keyが必要になります。

searchconsole接続情報.png

入力ができたら「保存」を押します。再度転送設定画面に戻り、接続情報の「接続情報を読み込む」ボタンを押すと、先ほど作成した接続情報が選択できるようになります。

sample追加.png

1-3. Google Search Consoleからのデータ抽出設定

続いてサーチコンソールからどのようなデータを所得するかの設定を行います。

今回は分析したいサイトについての検索クエリ、検索クエリが行われた日付、リンクに関する情報の3つを取得していきます。

  • サイトURL
    • データを転送したいサイトのURLを指定します。
  • サーチタイプ
  • データ取得期間
    • Google Search Consoleの仕様上、データが取得できる期間は今日から3日前のデータに限られます。
  • ディメンション
    • データの取得結果をグループ化するための項目です。
    • 「date」「country」「device」「page」「query」「searchAppearance」の指定が可能です。
consnow②.png

1-4. 転送先Snowflakeの設定

転送元と同様に設定していきます。Snowflakeの接続情報を作成していきます。
転送先となるSnowflakeの接続先ホスト、ユーザー名、及びパスワードが必要になります。

snowflake追加.png

先ほど作成した接続情報を選択し、転送先とするウェアハウス、データベース名、スキーマ名を設定します。
転送モードに関してはreplaceを選択します。各転送モードの詳細はこちらの「転送モードについて」をご確認ください。

searchconsole_test.png

これで入力は完了です。「保存して自動データ設定・プレビューへ」をクリックし、確認作業に進みましょう。

1-5. データのプレビュー

少し待つと、転送元のデータがプレビューされます。ここではサーチコンソールから取り込んだデータが表示されています。

consnowプレビュー.png

転送したいデータが取れているので、設定を完了します。
トップ画面に戻り、転送設定の一覧から作成した設定を選び「スケジュール・通知設定」に進みます。

1-6. スケジュール・通知設定

「スケジュール・トリガー設定」タブを開きます。

consnowスケジュール.png

「スケジュールを追加」ボタンを押すと、以下のようなモーダルが出てきます。ここで実行スケジュールを設定することで、転送を定期的に実行し自動化することが出来ます。

consnowすけ追加.png

1-7. データ転送ジョブの実行

設定は以上です。最後に、手動で転送ジョブを実行し、Snowflakeにデータを送ります。
手動で実行する場合はジョブ詳細画面の「実行」ボタンを押します。

consnow実行.png

2. Snowflakeの設定

Snowflake側で特に操作は必要ありませんが、Snowflakeのコンソール画面からプレビューを確認してみるとたしかにデータが転送されています。

searchconsole_testプレビュー.png

3. Lookerで可視化

まずはSnowflakeとLookerを接続します。管理タブを開いて「データベース」の「接続」を開きます。

looker接続.png

接続しているデータベース一覧が表示されています。ここで「Add Connection」を選択すると、接続設定を行う画面が表示されるので、情報を入力していきます。

addconnection.png
consnow_connection.png

Snowflakeのデータベースに接続できたら、次はデータを可視化するために必要なLookMLプロジェクトを作成します。 開発タブを開いて「LookMLプロジェクトの管理」に移動します。

プロジェクトの管理.png

「New LookML Project」からLookMLプロジェクトを作成します。

newlookerml.png
consnow_newproject.png

「Create Project」を押したら、エディタでmodelとviewを定義します。 後々必要になるので、modelの中ではexploreを設定しておきましょう。 (書き方が分からない場合はLookerの公式ドキュメントを参照してください)

consnow_model.png
consnow_views.png

これで下準備が整いました。 トップページに戻って「New」からDashboardを作成します。

newdash.png

白紙のダッシュボードが作成されるので「Searchconsole_snowflake_ダッシュボード」と名前をつけます。
そして「Dashborardの編集」→「タイルの追加」を選択し、先ほどのmodel内で定義したExploreを選択します。

consnow_explore.png

ディメンションとメジャーを設定し、Tileに表示したいデータをプロットします。例えば、リンクにおける広告の表示回数について分析したいとき、ディメンションに「サイトURL」とメジャーに「インプレッション数」を選択します。

consnow_例.png

今回はクリック数、インプレッション数を分析したいのでダッシュボードにまとめていきます。

consnow_ダッシュボード.png

これで完成です。

まとめ

いかがでしたでしょうか。trocco®を利用することで絶えず更新されるサーチコンソールのデータを自動でSnowflakeのようなDWHへと統合することができる他、テラバイト・ペタバイト級の大規模なデータからごくわずかなデータでも複雑なコーディングをせずにtrocco®の画面上の設定のみでデータ統合が可能となります。

データの連携・整備・運用を効率的に進めていきたいとお考えの方や、プロダクトにご興味のある方はぜひ資料をご請求ください。

hirokazu.kobayashi

慶應義塾大学卒業後、2014年より株式会社リブセンスへ入社。データエンジニアとして同社分析基盤立ち上げをリードする。2017年より現職primeNumberに入社。自社プロダクト「systemN」におけるSpark/Redshift活用等のデータエンジニアリング業務を行うかたわら、データ統合業務における工数削減が課題だと感じ、データ統合を自動化するサービス「trocco®」を立ち上げる。