見出し画像

AmazonQuickSightで、BigQueryにあるGoogleアナリティクス4データを分析してみた

アイミツ開発チームでエンジニアリングをしている deliku です!

直近、事業ロードマップ / プロダクトロードマップの達成に向けてアイミツ開発チームは編成が変わり、"社内ユーザー向き合いユニット" と "カスタマー向き合いユニット" に分かれ、それぞれのミッションを達成することにフォーカスしています。

私は "社内ユーザー向き合いユニット" に配属となり、データ分析をしている社内ユーザの作業コストの負を解消するべく、ダッシュボードの開発を行っています。今回紹介する内容は、その活動の一環で得た知識のアウトプットになります。


イントロダクション

昨年、QuickSightがGoogle BigQueryコネクタを提供しました。これによりBigQueryに蓄積しているデータをQuickSightで簡単に分析できるようになりました。今回は、LookerStudioで分析していたGoogleアナリティクス4データをQuickSightで分析したいと思います。

BigQueryコネクタを利用し、QuickSightでビジュライズする

データセット作成

Google BigQueryを選択します

データソース選択画面

GoogleBigQueryデータソース設定

利用するBigQueryのデータソース情報を入力します

GoogleBigQueryデータソース設定画面

Google認証する

BigQueryを操作するのに必要な権限をもつユーザで認証を行います

Google認証

カスタムSQL設定

今回は "カスタムSQLを使用" を選択します
SQLを記述し、保存するとデータセットが作成されています

WITH
  sessions AS(
  SELECT
    datetime,
    page_url
  FROM (
    SELECT
      datetime(timestamp_micros(event_timestamp), 'Asia/Tokyo') AS datetime,
      (
      SELECT
        AS STRUCT
        ANY_VALUE(
          CASE
            WHEN KEY = "page_location" THEN value.string_value
        END
          ) AS page_url,
      FROM
        UNNEST(event_params) ).*
    FROM
      `Googleアナリティクス4のデータを連携してテーブルを * で指定`
    WHERE
      event_name = 'session_start'
    )
  )
SELECT
  datetime,
  page_url
FROM
  sessions

分析

メニューから 分析 を選択し、先ほど作成したデータセットを選択し、画面操作に従ってビジュライズします。利用するプロパティやビジュライズパターンも数多く、ローデータさえ揃っていえばやりたい分析はほぼできるのではないかと感じます。

折れ線グラフ

SPICE : 高速なインメモリカラムナデータベース

BigQueryコネクタを利用した場合、SPICEがサポートされます

https://www.slideshare.net/AmazonWebServicesJapan/20200204-aws-black-belt-online-seminar-amazon-quicksight#12

SPICEを利用するメリット

・分析クエリの処理速度が速くなる。
・直接クエリが処理されるまで待つ必要がない。
・SPICE に保存されたデータは、追加コストを発生させることなく複数回再利用できる。クエリごとに課金されるデータソースを使用すると、最初にデータセットを作成するときと、後でデータセットを更新するときに、データのクエリに対して課金されます。

https://docs.aws.amazon.com/ja_jp/quicksight/latest/user/spice.html

増分差分

クラスメソッドさんの記事やリファレンスに記載の通り、SPICEにあるデータを期間内のデータで削除、インサートする仕組みになっているようです。

増分更新は、指定されたルックバック期間内で、データセットによって定義されたデータのみをクエリします。この更新は、その期間内に行われたデータセットへの挿入、削除、および変更のすべてをソースからデータセットに転送します。現在 SPICE 内にあるデータでその期間内にあてはまるものは削除され、更新されたデータに置き換えられます。

https://docs.aws.amazon.com/ja_jp/quicksight/latest/user/spice.html

スケジュール設定

データの更新をスケジューリングでき、増分差分とスケジュール設定を組み合わせることで、差分更新を実現することが可能になります。

更新状況

まとめ

SPICEを利用しているからかLookerStudioを使っていたときに比べ、データ描画が快適でストレスをまったく感じませんでした。(LookerStudioを利用していた場合、データ取得と描画でそれなりに待つ時間がありました)

今後の展望として、各プロダクトのデータも分析対象とし、各チームが扱っているデータ、指標を可視化することで、データ活用を組織に浸透させ、プロダクト価値に貢献していきたいと思います!

【PR】PRONI に興味がある方へ

よく読まれている記事

CTOからのメッセージ

メンバーインタビュー

カジュアル面談応募フォーム

エンジニア向け採用資料

【登録案内】PRONIに関する情報配信しています!

PRONIに関する最新情報、イベント情報、採用情報などを配信しています。
ご希望の方は以下のフォームよりご登録をお待ちしております!


この記事が気に入ったらサポートをしてみませんか?