使用 BigQuery 檢查個人化數據

當將個人化設定指派給使用者時,遠端配置個人化會記錄personalization_assignment Analytics 事件,讓您可以使用BigQuery檢查和分析個人化事件和關聯事件。

以下部分介紹如何為 Analytics 事件啟用 BigQuery 匯出、如何儲存個人化事件,並提供一些基本查詢來幫助您入門。

為 Google Analytics for Firebase 啟用 BigQuery 匯出

如果您使用 Spark 套餐,則可以使用BigQuery 沙盒免費存取 BigQuery,但須遵守沙盒限制。有關更多信息,請參閱定價和 BigQuery 沙盒

首先,確保您將 Analytics 資料匯出至 BigQuery:

  1. 開啟「整合」標籤,您可以使用Firebase 控制台中的 > 「專案設定」來存取該標籤。
  2. 如果您已將 BigQuery 與其他 Firebase 服務結合使用,請點選管理。否則,請按一下“連結”
  3. 查看關於將 Firebase 連結到 BigQuery ,然後按一下下一步
  4. 設定整合部分中,啟用Google Analytics開關。
  5. 選擇一個區域並選擇匯出設定。

  6. 點擊連結到 BigQuery

根據您選擇匯出資料的方式,表格可能最多需要一天的時間才能可用。有關將項目資料匯出到 BigQuery 的更多信息,請參閱將項目資料匯出到 BigQuery

接下來,讓我們訪問並檢查 BigQuery 中的個人化事件。

使用 BigQuery 存取 Remote Config 個人化數據

要查詢實驗的分析數據:

  1. Google Cloud 控制台中開啟 BigQuery。您也可以使用頁面底部的「在 BigQuery 中查看原始事件」連結直接從Analytics Events開啟它。
  2. 選擇您的 Firebase 專案並將其展開,然後展開analytics_ ANALYTICS_PROPERTY_ID條目並按一下events_

    Access personalization events in the Cloud console

  3. 「查詢」下拉清單中,選擇「在新分頁」

    將出現一個自動產生的範例查詢。

  4. 若要查看個人化事件和關聯數據,請更新查詢以選擇personalization_assignment事件。以下範例查詢將傳回特定日期分片的完整個人化分配事件,將結果限制為 10 個:

    # Select all personalization_assignment events
    SELECT *
    FROM `PROJECT_NAME.analytics_ANALYTICS_PROPERTY_ID.events_DATE_SHARD`
    WHERE event_name = 'personalization_assignment'
    LIMIT 10
    

    提示:若要搜尋所有事件表而不是分片表,您可以將事件表日期替換為星號(例如PROJECT_NAME .analytics_ ANALYTICS_PROPERTY_ID .events_* )。在非測試場景或大數據集下不建議這樣做。

  5. 在查詢編輯器中,選擇執行查詢。結果顯示在下部窗格中。

在下一節中,我們將更詳細地討論個人化分配事件中所包含的內容。

哪些個人化資料會匯出到 BigQuery?

個人化資料包含在 BigQuery 的 Google Analytics 表中,並儲存在personalization_assignment事件中。

個人化事件中提供的基本欄位與[GA4] BigQuery Export 架構中所述的任何 Analytics 事件相同。您將主要關注user_pseudo_id i(可用於區分不同的使用者)、事件時間戳記和其他使用者屬性。

個性化特定的詳細資訊儲存在event_params欄位中,並如下表所述:

範圍資料類型描述
個性化_id細繩提供分配的個人化的通用唯一識別碼 (UUID)。
團體細繩指示使用者是被指派到個人化群組 (P13N) 還是基線 (BASELINE) 群組。
手臂索引整數表示指派給使用者的替代值,是 0 到 4 之間的整數。
手臂鍵細繩包含個人化使用的參數名稱。
臂值細繩包含個性化分配的替代值字串。
參與會話事件整數包括用戶參與的會話數。有關詳細信息,請參閱關於會話
firebase_event_origin細繩表明事件的起源。對於personalization_assignment事件,這始終是fp
firebase_screen_class細繩提供個人化分配發生時使用者處於活動狀態的畫面的類別名稱。有關詳細信息,請參閱自動收集的事件
firebase_screen_id整數顯示個人化分配發生時使用者所在畫面的 ID。有關詳細信息,請參閱自動收集的事件
首次開放時間細繩提供使用者第一次開啟應用程式的時間戳記(以 UTC 毫秒為單位)。有關詳細信息,請參閱自動收集的事件
ga_session_id整數提供 Google Analytics 會話 ID。有關詳細信息,請參閱關於會話。您可以使用它來將personalization_assignment事件與其他 Analytics 事件關聯起來。
ga_session_number整數提供 Google Analytics 會話號碼。有關詳細信息,請參閱關於會話

範例查詢

您可以使用如下所示的 SQL 語句從personalization_assignment事件中提取特定於個人化的參數:

    # Expand nested personalization parameters
    SELECT
     timestamp_micros(event_timestamp) AS event_time,
     user_pseudo_id,
     (
       SELECT event_params.value.string_value
       FROM UNNEST(event_params) event_params
       WHERE event_params.key = 'group'
     ) AS personalization_group,
     (
       SELECT event_params.value.string_value
       FROM UNNEST(event_params) event_params
       WHERE event_params.key = 'personalization_id'
     ) AS personalization_id,
     (
       SELECT event_params.value.string_value,
       FROM UNNEST(event_params) event_params
       WHERE event_params.key = 'arm_key'
     ) AS arm_key,
     (
       SELECT event_params.value.string_value
       FROM UNNEST(event_params) event_params
       WHERE event_params.key = 'arm_value'
     ) AS arm_value,
     (
       SELECT event_params.value.int_value
       FROM UNNEST(event_params) event_params
       WHERE event_params.key = 'ga_session_id'
     ) AS ga_session_id,
    FROM `PROJECT_NAME.analytics_ANALYTICS_ACCOUNT_ID.events_DATE_SHARD`
    WHERE event_name = 'personalization_assignment'
    LIMIT 10