Snowflake Connector for Google Analytics Aggregate Data インジェスチョンモデル¶
Snowflake connector for Google Analytics Aggregate Dataは、 コネクタ規約 に従うものとします。
このトピックでは、 Snowflake Connector for Google Analytics Aggregate Data が Google Analytics Data API からデータをインジェストする方法と、サンプリングがインジェストされたデータに与える影響について説明します。
インジェスチョン戦略¶
コネクタは2つのインジェストモードを使用します:
データの 初期ロード は、レポートの構成直後に行われます。選択した開始データから今日までにインジェストされたデータで、 初期ロード が正常に終了します。
データの 継続ロード は、 初期ロード が完了した後に開始されます。増分更新は、選択した定期的なスケジュールに従って実行されます。
各レポートのインジェスチョンは独立したプロセスです。インジェスチョンプロセスは並行して実行される場合があります。
レポートを構成する方法、または 同期スケジュール と 開始日 を選択する方法については、 Snowflake Connector for Google Analytics Aggregate Data インスタンスのデータインジェスチョンの設定 をご参照ください。
間隔の長さを選択する¶
Google Analytics Data API では、各リクエストの日付範囲(startDate と endDate)を指定する必要があります。コネクタは、1回のインジェスチョンロード中に複数のリクエストを実行し、必要に応じて間隔の長さを調整する場合があります。デフォルトの間隔は31日です。次のような場合、間隔が自動的に短縮されることがあります。
API はエラーで応答したが、コネクタはより短い間隔でリクエストを再試行することでこれを軽減できる可能性がある。
API はサンプルデータで応答した(レポート構成時に サンプリングを回避する オプションを選択した場合のみ)。
レポートに大量のデータが含まれている。この場合、後続の結果ページを取得するときの API エラーのリスクを減らすため、間隔が短縮されます。
ユーザーは間隔の長さを設定できません。
インジェスチョンを監視する¶
インジェスチョンメタデータは CONNECTOR_STATS
ビューで使用できます。詳細を表示: Snowflake Connector for Google Analytics Aggregate Data のモニター。
SELECT * FROM PUBLIC.CONNECTOR_STATS ORDER BY COMPLETED_AT DESC;
METADATA
列には、特に、 Google Analytics Data API へのリクエストで送信されたリクエスト本文などが含まれます。リクエスト本文には、 startDate と endDate に関する情報が含まれています。
STATUS
列は次のいずれかの値になります。COMPLETED
- インジェクションに成功しました。CANCELED
- - 間隔の長さが短縮され、調整された日付範囲でインジェスチョンが継続されます。FAILED
- インジェクションは失敗し、継続されませんでした。
注釈
FAILED
インジェスチョンは、必ずしもデータが失われたことを意味するわけではありません。コネクタは、次回のスケジュールされたレポート更新時に、不足しているすべてのデータをダウンロードしようとすることで、一部のエラーから回復する場合があります。後続のインジェスチョンの実行が成功した場合、コネクタは不足しているデータをすべてインジェストしました。
インジェストの失敗に関するメール通知を受け取るには、アラートを設定します。詳細を表示: Snowflake Connector for Google Analytics Aggregate Data の管理。
サンプリングについて¶
サンプリングとは、結果を推定するために、より大きなデータセットからデータのサブセットを選択して分析するプロセスのことです。つまり、サンプリングによってデータの品質が低下します。データの品質は、プロセスで使用されるサンプルの数に応じて異なります。詳細については、 Google Analyticsのサンプリング をご参照ください。
注釈
デフォルトでは、コネクタはサンプリングを回避しようとしません。この設定は、レポートの初期構成時にのみ変更できます。
サンプリングメタデータを取得する¶
CONNECTOR_STATS
ビューの METADATA
列には、サンプリングのメタデータも含まれています。このデータは宛先テーブルに保存されたデータと結合できます。
次のステートメントを使用して、サンプリングされたデータに関する情報を取得します。
SELECT d.date, d.raw, d.last_update_date, cs.metadata:samplingMetadata:samplesReadCount::INTEGER as samplesReadCount, cs.metadata:samplingMetadata:samplingSpaceSize::INTEGER as samplingSpaceSize, samplesReadCount/samplingSpaceSize as ratio
FROM <destination_table> as d
LEFT JOIN <connector_stats_view> as cs
ON d.ingestion_run_id = cs.run_id
WHERE cs.metadata:samplingMetadata:samplingOccurred::BOOLEAN = true;
プレースホルダーを実際の値に置き換えます。次の例は、 REPORT_1
という名前のレポートを示しています。
SELECT d.date, d.raw, d.last_update_date, cs.metadata:samplingMetadata:samplesReadCount::INTEGER as samplesReadCount, cs.metadata:samplingMetadata:samplingSpaceSize::INTEGER as samplingSpaceSize, samplesReadCount/samplingSpaceSize as ratio
FROM google_analytics_aggregate_data_dest_db.google_analytics_aggregate_data_dest_schema.report_1__raw as d
LEFT JOIN snowflake_connector_for_google_analytics_aggregate_data.public.connector_stats as cs
ON d.ingestion_run_id = cs.run_id
WHERE cs.metadata:samplingMetadata:samplingOccurred::BOOLEAN = true;
結果には、サンプリングに関連する次の情報が含まれます。
名前 |
説明 |
---|---|
|
このサンプルレポートで日付範囲に読み取られたイベントの総数。 |
|
このプロパティのデータに存在する、日付範囲のこのレポートで分析可能なイベントの総数。 |
|
分析可能なイベント数に対する分析されたイベント数。 |
Google Analyticsサンプリングメタデータドキュメント には、サンプリングメタデータの値の意味についての詳細が記載されています。
注釈
バージョン1.4.0へのアップグレード前に実行されたインジェストに関するメタデータには、サンプリングの発生に関する情報が含まれていません。 samplingOccurred フラグがfalseに等しい場合にのみ、データがサンプリングされないことは確認されています。