Google は、黒人コミュニティのための人種的公平の促進に取り組んでいます。詳細をご覧ください。

セグメントのインポート

Firebaseは、 Remote ConfigCloud MessagingIn-App Messagingなどの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自動的に新しいのBigQuery作成したデータセットの名前firebase_imported_segments 。このデータセットには、 SegmentMembershipsおよびSegmentMetadataという名前の空のテーブルが含まれています。
  • データセット「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から削除するために使用できます。

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コンソールで、RemoteConfigやアプリ内メッセージングなどのサービスをターゲットに使用できるようになります。これは、プロパティやGoogleアナリティクスオーディエンスをターゲットにするのと同じように機能します。

通知コンポーザーでインポートされたセグメントを使用する例

「インポートされたセグメント」をターゲット可能な属性の1つとして使用でき、インポートしたセグメントを選択できるようになります。また、各セグメントに属するアプリインスタンスの推定数も含まれています。

ターゲティング基準全体に一致するインスタンス数の見積もりも利用できます。これは、ターゲティング基準に変更を加えると更新されます。

ユースケース

インポートされたセグメントを使用して、ターゲットを絞ったユーザーエクスペリエンスを作成する方法はいくつかあります。このセクションでは、この機能を使用する可能性のあるいくつかの一般的なシナリオの概要を説明します。

ユーザーのグループに通知を送信する

ショッピングカートでアプリ内購入を可能にするアプリがあるとします。また、カスタムビルドまたはサードパーティの分析ソリューション(Google Analyticsを利用していないソリューション)を使用して、アプリ内のユーザーの行動に関連するさまざまな指標を収集することもできます。これらの指標を使用して、カートに商品を追加したが、チェックアウトを完了していないユーザーのグループを特定できます。

ここで、Firebase Cloud Messagingを使用してこれらのユーザーに通知を送信し、カートにアイテムがあることを通知するとします。 「incomplete-checkout」というセグメントを作成し、FirebaseインストールIDで識別されるこれらのユーザーを含め、BigQueryにアップロードしてFirebaseと共有することができます。

Firebaseがこのデータを取り込むと、通知コンポーザーで利用できるようになります。このデータは、「不完全なチェックアウト」を対象とした新しい通知キャンペーンを作成して、ユーザーにチェックアウトを完了するように促すメッセージを送信できます。

ユーザーのサブセット用にアプリを構成する

一部のユーザーがアプリの操作に問題があることを示す社内分析ソリューションを使用するとします。これらのユーザーを支援するために、これらのユーザーのアプリの動作を構成して、短いチュートリアルビデオを含める必要があります。

アプリにRemoteConfigを組み込み、アプリで「needs_help」などの名前のパラメーターを使用して、チュートリアルビデオを条件付きで表示できます。

分析データを使用して、「troubled-users」という名前のセグメントを作成し、FirebaseインストールIDで識別される適切なユーザーを含めます。次に、このセグメントとそのメンバーをBigQueryにアップロードして、Firebaseと共有します。

Firebaseがこのデータを取り込むと、ターゲット可能なセグメントとしてRemoteConfigコンソールで利用できるようになります。次に、「troubled-users」を対象とする条件を作成し、「needs_help」パラメーターをこの条件に対してtrueに設定し、デフォルトでfalseに設定できます。この構成が公開されると、アプリは「troubled-users」セグメントのユーザーにのみチュートリアルビデオを表示します。

デバイス間のユーザージャーニーを追跡する

FirebaseとGoogleAnalyticsを使用してレストランレビューアプリを作成したとします。収集された指標を使用すると、ユーザーはモバイルデバイスとタブレットの両方からアプリにアクセスすることがよくあります。また、ユーザーはタブレットでレビューを書くことを好みますが、どのデバイスからでもレビューを読むことができます。

一部のユーザーは、おそらくフォームファクターが小さいために、携帯電話でレビューを書き始めて諦めます。タブレットでそのようなユーザーに通知を送信して、レビューを終了するように促すことにしました。

これを行うには、サインインしたユーザーに対してGoogle Analyticsを使用して、内部で生成されたreviewerIdをUserIdとして設定し、イベントをトリガーしてキャンセルされたレビューを識別します。その後、アプリのGoogleアナリティクスデータをBigQueryにエクスポートできます。

BigQueryでこのデータを分析することで、スマートフォンでレビューを書き終えていないユーザーのタブレットのFirebaseインストールIDを特定できます。このグループに「電話でキャンセルしたユーザーのタブレット」という名前を付け、セグメントをBigQueryにアップロードして、メンバーのリストをFirebaseと共有できます。

Firebaseがこのデータを取り込むと、通知コンポーザーでターゲット可能なセグメントとして利用できるようになります。次に、「電話でキャンセルしたユーザーのタブレット」をターゲットとする新しい通知キャンペーンを作成して、これらのユーザーにタブレットでのレビューを完了するように促すメッセージを送信できます。