8 分

Adobe Analytics データフィードを使用すると、生データに柔軟にアクセスすることができ、複雑な操作や他のソースとの統合が可能になります。分析ギャップを埋めることにより、AdobeAnalysis Workspace などのツールを補完します。データフィードには、それぞれのサーバー呼び出しが行として保存され、バッチで配信され、主要指標が含まれます。集計テーブルとグローバルフィルターは、分析を効率化し、一貫性を確保するのに役立ちます。このガイドでは、その可能性を紹介し、さらなる探求の段階を設定します。

はじめに

データフィードは、Adobe で収集した生の詳細なデータを活用する強力な方法です。これをデータベースに取り込むと、次のような面白いユースケースが無限に発生します。

データフィードは、Adobe Analytics のデータを分析する唯一の方法ではありませんが、Adobe Analysis Workspace、Data Warehouse、Report Builder によって発生する可能性のあるギャップを埋めるために使用することができます。データフィードは、Adobe Analytics ツールキットに含まれる多くのツールの 1 つだと考えてください。

データフィードと他の Adobe Analytics ツールの比較:
ユースケース
ワークスペース
Data Warehouse
データフィード
一般的なパフォーマンスに関するレポート
最高
可能
可能
SSOT データを web 分析と結合し、BI ツール(SSOT ファイナンスソースからの注文や Adobe からの訪問など)に取り込みます
難しい
可能
可能
永続性およびアトリビューションメソッドに対応するように eVar の定義を変更
可能
不可能
可能
Workspace 外部でのモデリングの活用
難しい
可能
可能

メモ:このプレイブックでは、データフィードをデータベースに取り込む方法については詳しく説明しません。クエリ用に、既にデータフィードに簡単にアクセスできると仮定します。

データフィードの理解
データフィードについて

すべての Adobe Analytics サーバー呼び出しは、データフィードに 1 行として保存されます。レポートスイートごとに個別のデータフィードを設定する必要があります。データは、毎時間の終了時に時間単位のバッチで、または毎日の終わりに日単位のバッチで配信されます。

各種実装で、生データフィードの形式は同じままです。利用可能なすべての列の包括的なリストは次のとおりです:https://experienceleague.adobe.com/ja/docs/analytics/export/analytics-data-feed/data-feed-contents/datafeeds-contents。プレイブックのこのセクションでは、いくつかの重要なコラムに焦点を当てます。

オカレンス(ヒット)、訪問数、訪問者の識別子

OOTB オカレンス、訪問数、ユニークビジターをレプリケートするには、post_visid_high、post_visid_low、visit_num、visit_page_num の 4 つの列の組み合わせが必要です。

訪問者数、訪問数、オカレンスを取得するスターター SQL コードを次に示します。

SELECT
COUNT(DISTINCT CONCAT(POST_VISID_HIGH, POST_VISID_LOW)) AS VISITORS,
COUNT(DISTINCT CONCAT(POST_VISID_HIGH, POST_VISID_LOW, VISIT_NUM)) AS VISITS,
COUNT(DISTINCT CONCAT(POST_VISID_HIGH, POST_VISID_LOW, VISIT_NUM, VISIT_PAGE_NUM)) AS OCCURRENCES
FROM DATA_FEEDS
WHERE HIT_SOURCE = '1' AND EXCLUDE_HIT = '0'

ヒント: Adobe Workspace では、「訪問深度」ディメンションは visit_num データフィード列と同等です。ワークスペースの「ヒット深度」ディメンションは、 visit_page_num データフィード列と同等です。

visit_page_num 列のメモ:

ヒント: ユーザーが実行した正確なアクションを確認したい場合は、ビジター ID を選択し、visit_num で並べ替え、次に visit_page_num で並べ替えることで、ヒットごとのアクションのカウントを取得することができます。これは、カスタマージャーニーをデバッグする際に役立ちます。デジタルプロパティをナビゲートする際に、独自のアクションでテストしてください。

eVar と prop

それぞれの eVar および prop には、有効であるかデータが入力されているかに関係なく、データフィードに専用の列があります。また、前処理された値と後処理された値の両方について、別々の列もあります。後処理列は、eVar 属性を持ち、有効期限ロジックが適用されます。

処理がいつ行われるかを理解するには、次のフローチャートを参照してください:https://experienceleague.adobe.com/ja/docs/analytics/technotes/processing-order

合計で、500 列の eVar (実装用に作成できる 250 個の eVar の 2 セット)と 150 列の prop (設定可能な 75 個の prop の 2 セット)があります。

ヒント: キャプチャした eVar に prop のプロパティがあればいいのにと思ったことはありませんか?非 post eVar 列は、prop のように動作します。eVar 属性や永続性ロジックが適用されていない場合は、非 post 列を使用して、その eVar が必要な Analytics ヒットをフィルタリングします(prop と同様)。

セグメントと計算指標

セグメント、カスタム計算指標および Adobe の標準指標は、カスタム定義する必要があります。OOTB 指標とセグメントについては、Adobe の技術ドキュメントを参照してください。

一般的な指標の一部をレプリケートするロジックについては、次を参照してください:https://experienceleague.adobe.com/ja/docs/analytics/export/analytics-data-feed/data-feed-contents/datafeeds-calculate

次の節では一例として、Adobe の OOTB バウンス指標をレプリケートするためのサンプルコードを示します。今後の Experience League 投稿では、データフィードを使用してセグメントと指標を再作成する方法に関する例がさらに提供されます。

データフィードのクエリ
基本知識

最初のクエリでは、不要なヒットを除外しながら、特定の日の訪問数をカウントします。

SELECT
COUNT(DISTINCT CONCAT (POST_VISID_HIGH, POST_VISID_LOW, VISIT_NUM)) AS VISITS
FROM DATA_FEEDS
WHERE HIT_SOURCE = '1' AND EXCLUDE_HIT = '0'

次に、エントリページ全体での訪問数をカウントします。

WITH MIN_VISIT_PAGE_NUM_TABLE AS (
SELECT 
POST_VISID_HIGH, 
POST_VISID_LOW,
VISIT_NUM,
MIN(VISIT_PAGE_NUM) AS MIN_VISIT_PAGE_NUM
FROM DATA_FEEDS
WHERE HIT_SOURCE = '1' AND EXCLUDE_HIT = '0'
GROUP BY 1,2,3)

SELECT
PAGE_NAME,
COUNT(DISTINCT A.VISIT_ID) AS ENTRIES
FROM DATA_FEEDS A
LEFT JOIN MIN_VISIT_PAGE_NUM_TABLE B
ON A.POST_VISID_HIGH = B.POST_VISID_HIGH
AND A.POST_VISID_LOW = B.POST_VISID_LOW
AND A.VISIT_NUM = B.VISIT_NUM
AND A.VISIT_PAGE_NUM = B.MIN_VISIT_PAGE_NUM
WHERE HIT_SOURCE = '1' AND EXCLUDE_HIT = '0'
GROUP BY 1

ヒント: 上記の説明を EXIT にレプリケートするには、最小の代わりに最大 visit_page_num を見つけます。

最後に、OOTB バウンス指標をレプリケートします。

WITH MAX_VISIT_PAGE_NUM_TABLE AS (
SELECT 
POST_VISID_HIGH, 
POST_VISID_LOW,
VISIT_NUM,
MAX(VISIT_PAGE_NUM) AS MAX_VISIT_PAGE_NUM
FROM DATA_FEEDS
WHERE HIT_SOURCE = '1' AND EXCLUDE_HIT = '0'
GROUP BY 1,2,3),

MIN_VISIT_PAGE_NUM_TABLE AS (
SELECT 
POST_VISID_HIGH, 
POST_VISID_LOW,
VISIT_NUM,
MIN(VISIT_PAGE_NUM) AS MIN_VISIT_PAGE_NUM
FROM DATA_FEEDS
WHERE HIT_SOURCE = '1' AND EXCLUDE_HIT = '0'
GROUP BY 1,2,3)
SELECT
COUNT(DISTINCT A.VISIT_ID) AS BOUNCES
FROM MAX_VISIT_PAGE_NUM A
LEFT JOIN MIN_VISIT_PAGE_NUM_TABLE B
ON A.POST_VISID_HIGH = B.POST_VISID_HIGH
AND A.POST_VISID_LOW = B.POST_VISID_LOW
AND A.VISIT_NUM = B.VISIT_NUM
WHERE A.MAX_VISIT_PAGE_NUM = B.MIN_VISIT_PAGE_NUM
データフィード戦略
集計テーブルを作成

生のデータフィードの集計ビューを作成すると便利です。次のようなメリットがあります。

必要な集計テーブルのタイプは、各組織と関係者によって異なりますが、ここでは開始するための例をいくつか紹介します。

エンドユーザーが目的の結果を得るには、これらのテーブルをどのように結合する必要があるかに留意してください。例えば、それぞれの集計テーブルに post_visid_high、post_visid_low、visit_num、visit_page_num を含めて、任意の粒度レベルで結合できるようにするのが最も簡単な場合があります。

グローバルフィルター

一部の組織では、すべてのレポートにグローバルフィルターが適用されています(ボットの除外、不正なトラフィックの取り出しなど)。このフィルターをレプリケートする集計テーブルを作成し、生データフィードに対する任意のクエリに、これを結合することを検討してください。

テーブルを一元化すると、時間の経過と共にテーブルが変化するので、このフィルターロジックを維持する必要がなくなります。

ワークスペースを使用した不一致の監視

データフィードジャーニーの開始時に、日別の訪問数のカウントをすばやく実行し、毎日がワークスペースと並んでいることを確認します。データフィードが有効になっていても、内部のデータエンジニアリング側でファイルを処理するためのギャップがあるか、Adobe がファイルの送信をスキップした可能性があります。

それはともかく、ワークスペースがデータフィードや集計テーブルに合わせて継続的に調整する、定期的な検証を設定すると便利です。

まとめ

アドビのデータフィードのラングリングは、気が遠くなるようなプロジェクトのように感じるかもしれません。しかし、一度理解してしまえば、データをカスタマイズして特定のユースケースに対応できる可能性が無限にあります。

この記事は、これらのフィードを理解するための基礎となるもので、少し表面に触れただけです。この豊富なデータについてさらに深く掘り下げるのに役立つ、Experience League の今後の記事をお楽しみにしてください。

その他のリソース