Catch up on highlights from Firebase at Google I/O 2023. Learn more

導入細分

Firebase 通過遠程配置雲消息傳遞應用內消息傳遞等 Firebase 服務定位用戶組,提供定制用戶體驗的工具。使用關聯的BigQuery帳戶,您可以導入您可能在 Firebase 之外識別的細分,以創建有針對性的 Firebase 服務體驗。

設置導入的細分

您可以使用 Google Cloud BigQuery將您的細分數據導入 Firebase。 BigQuery 提供了多種加載數據的方式,您可以自由選擇最適合您的配置的方式。

導入的段數據流

啟用集成後:

  • Firebase 在 BigQuery 中創建您擁有的數據集,但 Firebase 具有讀取權限。
  • Firebase 會定期提取數據,使您更新的細分可在 Firebase 控制台中用於定位。
  • Firebase 僅對此數據具有讀取權限。 Firebase 在其內部存儲中保留此數據的副本。
  • 從 BigQuery 數據集中刪除的所有數據也會從 Firebase 數據存儲中刪除。

啟用 BigQuery 導入

  1. 轉到 Firebase 控制台中的BigQuery 集成頁面。
  2. 如果您之前未設置 BigQuery 集成,請按照屏幕上的說明啟用 BigQuery。Firebase 控制台中的集成屏幕
  3. 啟用導入的細分切換。 導入的段在非激活狀態下切換

當您啟用從 BigQuery 導入細分時:

  • Firebase 會自動創建一個名為firebase_imported_segments的新 BigQuery數據集。此數據集包含名為SegmentMembershipsSegmentMetadata的空
  • 數據集“firebase_imported_segments”也與域為@gcp-sa-firebasesegmentation.iam.gserviceaccount.com的 Firebase 服務帳戶共享。
  • Firebase 至少每 12 小時運行一次作業以從該數據集讀取數據,並且導入頻率可能超過 12 小時。

將數據導入 BigQuery

您可以使用任何受支持的機制將數據加載到 BigQuery 以填充SegmentMembershipsSegmentMetadata表。數據必須遵循以下描述的架構

細分會員

[
  {
    "name": "instance_id",
    "type": "STRING"
  },
  {
    "name": "segment_labels",
    "type": "STRING",
    "mode": "REPEATED"
  },
  {
    "name": "update_time",
    "type": "TIMESTAMP"
   }
]

instance_id :特定應用安裝的Firebase 安裝 ID

segment_labels :包含設備 ( "instance_id" ) 的段。這些段不必對人類友好,並且可以很短以減少 BigQuery 存儲使用量。對於此處使用的每個"segment_labels"SegmentMetadata表中必須有相應的條目。注意這是複數,而SegmentMetadata表有"segment_label"

update_time :Firebase 目前不使用,但可用於從 BigQuery 中刪除不再使用的舊分段成員資格。

段元數據

[
   {
      "name": "segment_label",
      "type": "STRING"
   },
   {
      "name": "display_name",
      "type": "STRING"
   }
]

segment_label :標識特定的段。對於SegmentMemberships表中列出的每個段,此表中必須有一個條目。請注意,這是單數,而 SegmentMemberships 表有"segment_labels"

display_name :段的人類可讀、UI 友好的名稱。這用於在 Firebase 控制台中標記您的分段。

為 BigQuery 設置結算信息

如果您要為安裝量很少的應用嘗試新功能,您可能只需要設置BigQuery 沙盒

但是,如果您將其用於具有許多用戶的生產應用程序,則必須設置BigQuery 使用計費以支付存儲費用以及用於將數據加載到 BigQuery 的機制。您無需為 Firebase 發起的任何讀取付費。

停用集成

要停用此集成,請轉到 Firebase 控制台中的BigQuery 集成頁面並停用自定義細分切換。

使用導入的細分

提取數據後,它將在 Firebase 控制台中可用,以使用遠程配置或應用內消息等服務進行定位。這就像使用媒體資源或 Google Analytics(分析)受眾進行定位一樣。

將導入的片段與通知編輯器一起使用的示例

您可以使用“導入的細分”作為可定位屬性之一,您導入的細分可供選擇。它們還包括對屬於每個細分市場的應用程序實例數量的估計。

還可以估算與整個定位條件匹配的實例數量。這會隨著您對定位條件進行任何更改而更新。

用例

您可以通過多種方式使用導入的細分來創建有針對性的用戶體驗。本節概述了您可能希望使用此功能的一些常見場景。

向一組用戶發送通知

想像一下,您有一個允許使用購物車進行應用內購買的應用。您還可以使用定制的或第三方分析解決方案(不是由 Google Analytics 提供支持的)來收集與您的應用中的用戶行為相關的各種指標。使用這些指標,您可以識別已將商品添加到購物車但未完成結帳的一組用戶。

現在假設您想使用 Firebase Cloud Messaging 向這些用戶發送通知,提醒他們購物車中有商品。您可以創建一個名為“incomplete-checkout”的細分,並包含這些用戶,由他們的 Firebase 安裝 ID 標識,然後將其上傳到 BigQuery 以與 Firebase 共享。

Firebase 提取此數據後,它會在通知編輯器中提供,您可以在其中創建一個新的通知活動,以“未完成結帳”為目標,以發送消息提示用戶完成結帳。

為部分用戶配置應用程序

假設您使用的內部分析解決方案表明某些用戶在瀏覽應用程序時遇到問題。為了幫助這些用戶,您希望為這些用戶配置應用行為以包含一個簡短的教程視頻。

您可以在您的應用程序中合併遠程配置,並在您的應用程序中使用名為“needs_help”之類的參數來有條件地顯示教程視頻。

使用您的分析數據,創建一個名為“troubled-users”的細分,並包含由 Firebase 安裝 ID 標識的適當用戶。然後將此細分及其成員上傳到 BigQuery 以與 Firebase 共享。

一旦 Firebase 提取了這些數據,它就會在遠程配置控制台中作為可定位的分段提供。然後,您可以創建一個針對“問題用戶”的條件,並將“needs_help”參數設置為該條件的 true 和默認情況下的 false。發布此配置後,該應用僅向“有問題的用戶”部分中的用戶顯示教程視頻。

跨設備跟踪用戶旅程

想像一下,您使用 Firebase 和 Google Analytics(分析)構建了一個餐廳評論應用。使用收集的指標,您會發現用戶經常從移動設備和平板電腦訪問該應用程序。您還發現您的用戶更喜歡在平板電腦上撰寫評論,而他們可以從任何設備上閱讀評論。

一些用戶開始在他們的手機上寫評論並放棄,可能是由於外形尺寸較小。您決定在平板電腦上向此類用戶發送通知,提示他們完成評論。

為此,您可以使用 Google Analytics 將內部生成的 reviewerId 設置為登錄用戶的 UserId,並觸發事件以識別已取消的評論。然後,您可以將應用的 Google Analytics(分析)數據導出到 BigQuery。

通過在 BigQuery 中分析這些數據,您可以為尚未在手機上完成評論的用戶確定平板電腦的 Firebase 安裝 ID。您可以將此組命名為“tablets-of-users-who-cancelled-on-phone”,並將該細分上傳到 BigQuery 以與 Firebase 共享成員列表。

一旦 Firebase 提取了這些數據,它就會在 Notifications Composer 中作為一個可定位的細分提供。然後,您可以創建一個新的通知活動,以“手機上取消的用戶的平板電腦”為目標,發送一條消息,提示這些用戶在他們的平板電腦上完成他們的評論。