Amazon Web Services ブログ
Upsolver、Amazon Athena、Amazon QuickSight を使用して Google Analytics データを分析する
この記事では、Amazon Athena を使用して Google Analytics データを分析するためのソリューションを紹介します。Google Analytics から Amazon S3 にヒットレベルのデータを移動し、結合と強化を実行し、Amazon Athena と Amazon QuickSight を使用してデータを視覚化することで構築されたリファレンスアーキテクチャが含まれています。Upsolver は、顧客が迅速にデータレイクの自動化やオーケストレーションを開始できるようにします。
Google Analytics は、ウェブプロパティとアプリケーションのパフォーマンスを理解したい組織に人気のあるソリューションです。Google Analytics のデータは、ユーザーが洞察をすばやく抽出できるように収集および集約されます。 これは、単純な分析に最適です。ただし、Google Analytics データを他のデータセットで充実させて、カスタマージャーニーの包括的なビューを作成する必要がある場合はそれほど理想的ではありません。
AWS で Google Analytics データを分析する理由
Google Analytics は、事実上の標準のウェブ分析ツールになっています。少ないデータ量では無料で使用可能であり、追跡、分析、レポートを提供します。 技術に詳しくないユーザーでも、以下のような質問に答えることでウェブサイトのパフォーマンスを理解できます。ユーザーはどこから来たのですか? どのページが、コンバージョン率が最も高いですか? ユーザーはどこで操作負担を経験し、ショッピングカートを放棄しますか?
これらの質問は Google Analytics の UI 内で回答されますが、以下のようないくつかの制限があります。
- データサンプリング: Google Analytics 標準版は、500,000セッションを超える期間でアドホッククエリを実行すると、サンプルデータを表示します。大規模なウェブサイトであれば、毎週または毎日、この数を簡単に超えることがあります。これにより、各クエリはデータの異なるサンプルによってフィードされる可能性があるため、さまざまなレポート間で信頼性の問題が発生する可能性があります。
- 既存の AWS スタックとの統合の難しさ: 多くのお客様は、AWS でデータおよび分析プラットフォームを構築しているか、構築中です。お客様は、Google Analytics データで AWS の分析や機械学習の機能を使用して、新しい革新的なユースケースを実現したいと考えています。
- 外部データソースとの結合: ビジネスのオンラインアクティビティの全体像を確認するには、ウェブトラフィックデータを他のソースと組み合わせる必要があります。Google Analytics は、未加工データをシステムの内外に移動する簡単な方法を提供していません。Google Analytics のカスタムディメンションを使用できますが、標準版では 20 に制限されており、使用が困難です。
- マルチディメンション分析: Google Analytics のカスタムレポートと API は、クエリあたり 7 つのディメンションに制限されています。これにより、分析の深さが制限され、より詳細なスライシングとダイシングのためにさまざまな回避策が必要になります。
- 代替手段の欠如: ユーザーが未加工データを Google BigQuery にエクスポートできるようにする Google Analytics 360 には、多額の年間使用料がかかります。これは組織にとっては受け入れがたいことです。また、このアップグレードを行っても、ネイティブな統合ができるのは BigQuery だけであり、依然として既存の AWS スタックは使用できません。
新しいウェブ分析ソリューション (Cookie ベースの追跡を含む) の構築または購入も費用がかかり、Google Analytics データに依存する既存のワークフローを中断させる可能性があります。
お客様は、アナリストやビジネスユーザーが使い慣れた AWS ツールを使用して既存のワークフローに Google Analytics データを取り込むことができるソリューションを探しています。
Google Analytics データの AWS への移行: 要件の定義
Google Analytics と同等またはそれ以上のレベルのレポートを備えた分析ソリューションを提供するために、以下の原則に基づいてソリューションを設計しました。
- 導入に対する技術的障壁が低い分析: Google Analytics はビジネスユーザー向けに構築されており、当社のソリューションは同様のエクスペリエンスを提供するように設計されています。これは、データを取り込むだけでなく、データの分析準備を整えるデータエンジニアリング作業を自動化することを意味します。 これには、データの保持、パーティション化、および圧縮が含まれます。この作業はすべて内部で行われ、データを照会するユーザーには見えないようにする必要があります。
- ヒットレベルのデータ: Google Analytics は、ユーザーとウェブページ間での最低レベルのインタラクションであるヒットに基づいてクリックストリームアクティビティを追跡します。こうしたヒットは、セッション (特定の期間内のヒット) やユーザー (セッションのグループ) にグループ化されます (詳細はこちら)。標準の Google Analytics API は、セッションおよびユーザーベースのクエリに限定されており、ヒットレベルのデータを抽出する簡単な方法は提供していません。ただし、当社のソリューションは、この詳細なデータへのアクセスを提供します。
- 非サンプリングデータ: Google Analytics からデータを抽出し、Amazon S3に保存することにより、50 万セッションの制限を回避できます。また、あらゆる規模のあらゆるクエリの非サンプリングデータにアクセスできます。
- データのプライバシー: 機密データが Google Analytics に保存されている場合、サードパーティの ETL ツールに依存すると、特に GDPR の時代にデータプライバシーに関するリスクが生じる可能性があります。そのため、当社のソリューションは転送中のデータを暗号化し、お客様の VPC 内での処理だけに依存しています。
ソリューションの概要
このソリューションは、ヒットレベルのデータを抽出し、Amazon S3 のデータレイクアーキテクチャに保存することで構築されています。その後、分析とレポートに Amazon Athena と Amazon QuickSight を使用します。AWS の最高のソリューションプロバイダーである Upsolver は、S3 での取り込み、ETL およびデータ管理を自動化するために使用されます。また、Upsolver は、使いやすいグラフィカルユーザーインターフェイスを使用してソリューション全体の調整も行います。 次の図は、ソリューションの高レベルアーキテクチャを示しています。
Upsolver の GA コネクタを使用して、Google Analytics から非サンプリングのヒットレベルデータを抽出します。このデータは、承認されたデータレイクのベストプラクティスに従って自動的に取り込まれ、最適化された形式で Amazon S3 に保存されます。以下のベストプラクティスがデータに適用されます。
- データを Apache Parquet カラムナファイル形式で保存して、読み取りパフォーマンスを向上させ、クエリごとにスキャンされるデータ量を減らします。
- API クエリ時間ではなく、イベント (ヒット) 時間でデータを分割します。
- 定期的に圧縮を実行して、小さなファイルを大きなファイルにマージして、パフォーマンスを改善し、圧縮を最適化します。
データが S3 に保存されると、Upsolver の GUI を使用して、Google Analytics データから構造化ファクトテーブルを作成します。ユーザーは、Amazon Athena および Amazon Redshift を使用してクエリを実行することができます。Upsolver は、使いやすいテンプレートを提供して、Google Analytics データからテーブルをすばやく作成できるようにします。 最後に、Amazon QuickSight を使用してインタラクティブなダッシュボードを作成し、データを視覚化します。
結果は、Google Analytics データの完全なビューです。このビューは、規模にかかわらず、前述の制限なしに、ユーザーが慣れ親しんできたレベルのセルフサービス分析を提供します。
ソリューションの構築: ステップバイステップガイド
このセクションでは、環境を設定し、Upsolver の Google Analytics プラグインを設定し、データを抽出して、調査を開始する手順を詳しく説明します。
手順 1: インストールおよびアクセス許可
- Upsolver にサインアップします (AWS Marketplace からも可能です)。
- Google Analytics からデータを読み取り、新しいカスタムディメンションを追加するために、Upsolver へのアクセスを許可します。カスタムディメンションを使用すると、Upsolver は、信頼性の低い並列トラッキングメカニズムを作成する代わりに、非サンプリングヒットレベルデータを Google Analytics から直接読み取ることができます。
- Google Analytics に追加されたカスタムディメンションに入力するには、Upsolver がウェブサイトで小さな JavaScript コードを実行できるようにします。GA360 を使用している場合、これは必要ありません。
手順 2: 未加工データの確認と消去
サポートされているデータソースの場合、Upsolver は自動的にスキーマを検出し、テーブル内のすべてのフィールドの主要な統計を収集します。そうすることで、ユーザーは自分のデータを垣間見ることができます。
次のスクリーンショットでは、左側にスキーマオンリード情報、右側にフィールドごとの統計、値の分布が表示されています。
手順 3: Amazon Athena への公開
Upsolver には、分析中の Google Analytics エンティティに従って AWS ベースのデータレイクにテーブルを作成するための 4 つのテンプレートが付属しています。
- ページビュー – ページ滞在時間や離脱率などのメトリクスを使用して、ウェブプロパティの特定のセクションでのユーザーフローや行動を分析するために使用されます。
- イベント – スクロールの深さやリンクのクリックなどのユーザー定義によるインタラクション。
- セッション – ウェブプロパティ (すべてのページビューとイベント) で特定の過程を監視します。
- ユーザー – ユーザーとウェブプロパティまたはアプリとの時間の経過を理解する。
すべてのテーブルはイベント時間でパーティション化され、クエリパフォーマンスの向上に役立ちます。
Upsolver のユーザーは、テンプレートをそのまま実行するか、ニーズに合わせて最初にテンプレートを変更するか、新しいテーブルを作成するかを選択できます。
次のスクリーンショットは、ページビューテンプレートによって生成されたスキーマを示しています。
次のスクリーンショットは、ページビューとイベントテーブル、および Upsolver テンプレートによって生成されたセッションとユーザーの Amazon Athena ビューを示しています。
以下は、特定の洞察を抽出するために実行したいクエリの例です。