查看 2022 年 Google I/O 大会上介绍的 Firebase 新动态。了解详情

导入细分

使用集合让一切井井有条 根据您的偏好保存内容并对其进行分类。

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 中作为一个可定位的细分提供。然后,您可以创建一个新的通知活动,以“手机上取消的用户的平板电脑”为目标,发送一条消息,提示这些用户在他们的平板电脑上完成他们的评论。