匯入區隔

Firebase 提供了許多工具,協助您透過遠端設定、雲端通訊和應用程式內訊息等 Firebase 服務,指定使用者群組,自訂使用者體驗。使用已連結的 BigQuery 帳戶,就能匯入在 Firebase 外部找到的區隔,透過 Firebase 服務打造指定目標體驗。

設定匯入的區隔

您可以使用 Google Cloud BigQuery,將區隔資料匯入 Firebase。BigQuery 提供多種載入資料的方式,您可以自由選擇最適合設定的方式。

匯入區隔資料流程

啟用整合功能後:

  • Firebase 會在 BigQuery 中建立資料集,該資料集由您擁有,但 Firebase 具有讀取權限。
  • Firebase 會定期擷取資料,讓您在 Firebase 控制台中使用更新後的區隔進行指定。
  • Firebase 只有這項資料的讀取權限。Firebase 會將這類資料的副本保存在內部儲存空間。
  • 凡是從 BigQuery 資料集刪除的資料,也會從 Firebase 資料儲存庫中刪除。

啟用 BigQuery 匯入功能

  1. 前往 Firebase 控制台的「BigQuery integration」(BigQuery 整合) 頁面。
  2. 如果先前未設定 BigQuery 整合,請按照畫面上的指示啟用 BigQuery。<span class=Firebase 控制台">
  3. 啟用「匯入的區隔」切換鈕。 匯入的區隔切換鈕處於停用狀態

啟用從 BigQuery 匯入區隔的功能後:

  • Firebase 會自動建立名為 firebase_imported_segments 的新 BigQuery 資料集。這個資料集包含名為 SegmentMemberships 和 SegmentMetadata 的空白資料表。
  • 資料集「firebase_imported_segments」也會與網域為 @gcp-sa-firebasesegmentation.iam.gserviceaccount.com 的 Firebase 服務帳戶共用。
  • Firebase 至少每 12 小時會執行一次工作,從這個資料集讀取資料,匯入頻率可能高於 12 小時。

將資料匯入 BigQuery

您可以使用任何支援的機制,將資料載入 BigQuery,填入 SegmentMemberships 和 SegmentMetadata 資料表。資料必須遵循下列結構定義:

SegmentMemberships

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

instance_id:特定應用程式安裝的 Firebase 安裝 ID。您需要為要納入區隔的每個應用程式安裝擷取安裝 ID,並使用這些值填入這個欄位。

segment_labels:裝置 ("instance_id") 所在的區隔。這些名稱不一定要容易理解,而且可以簡短,以減少 BigQuery 儲存空間用量。此處使用的每個 "segment_labels" 都必須在 SegmentMetadata 資料表中有對應的項目。請注意,這是複數,而 SegmentMetadata 資料表則有 "segment_label"。

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

SegmentMetadata

[
   {
      "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 擷取這項資料後,您就能在通知編寫器中,建立指定「incomplete-checkout」的新通知廣告活動,傳送訊息提醒使用者完成結帳。

為部分使用者設定應用程式

假設您使用內部數據分析解決方案,發現部分使用者在操作應用程式時遇到困難。為了協助這些使用者,您希望為他們設定應用程式行為,加入簡短的教學影片。

您可以在應用程式中加入 Remote Config,並使用名為「needs_help」之類的參數,有條件地顯示教學影片。

使用分析資料建立名為「troubled-users」的區隔,並加入適當的使用者 (以 Firebase 安裝 ID 識別)。接著將這個區隔及其成員上傳至 BigQuery,與 Firebase 共用。

Firebase 擷取這項資料後,Remote Config 就能將其做為可指定的區隔。接著,您可以建立指定「troubled-users」的條件,並將此條件的「needs_help」參數設為 true,預設值則設為 false。發布這項設定後,應用程式只會向「troubled-users」區隔中的使用者顯示教學影片。

追蹤跨裝置的使用者歷程

假設您使用 Firebase 和 Google Analytics 建構了餐廳評論應用程式。根據收集到的指標,您發現使用者經常透過行動裝置和平板電腦存取應用程式。您也發現使用者偏好在平板電腦上撰寫評論,但可能會在任何裝置上閱讀評論。

有些使用者開始在手機上撰寫評論,但可能因為手機尺寸較小而放棄。您決定在這些使用者的平板電腦上傳送通知,提示他們完成評論。

為此,您可以使用 Google Analytics,將內部產生的 reviewerId 設為已登入使用者的 UserId,並觸發事件來識別取消的評論。接著,您可以將應用程式的 Google Analytics 資料匯出至 BigQuery。

在 BigQuery 中分析這項資料,即可找出未在手機上完成評論的使用者平板電腦 Firebase 安裝 ID。您可以將這個群組命名為「tablets-of-users-who-cancelled-on-phone」,並將區隔上傳至 BigQuery,與 Firebase 共用成員名單。

Firebase 擷取這項資料後,資料就會在通知編輯器中顯示為可指定的區隔。接著,您可以建立新的通知廣告活動,指定「tablets-of-users-who-cancelled-on-phone」,傳送訊息提醒這些使用者在平板電腦上完成評論。