Google I/O 2022에서 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_imported_segments 는 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 애널리틱스 잠재고객을 사용한 타겟팅과 동일하게 작동합니다.

알림 작성기와 함께 가져온 세그먼트를 사용하는 예

'가져온 세그먼트'를 타겟팅 가능한 속성 중 하나로 사용할 수 있으며 가져온 세그먼트를 선택할 수 있습니다. 여기에는 각 세그먼트에 속하는 앱 인스턴스 수의 추정값도 포함됩니다.

전체 타겟팅 기준과 일치하는 인스턴스 수의 추정값도 사용할 수 있습니다. 타겟팅 기준을 변경하면 업데이트됩니다.

사용 사례

가져온 세그먼트를 사용하여 대상 사용자 경험을 만드는 방법에는 여러 가지가 있습니다. 이 섹션에서는 이 기능을 사용할 수 있는 몇 가지 일반적인 시나리오를 간략하게 설명합니다.

사용자 그룹에 알림 보내기

장바구니로 인앱 구매를 허용하는 앱이 있다고 상상해보십시오. 맞춤형 또는 타사 분석 솔루션(Google Analytics에서 제공하지 않는 것)을 사용하여 앱의 사용자 행동과 관련된 다양한 측정항목을 수집할 수도 있습니다. 이러한 측정항목을 사용하여 장바구니에 항목을 추가했지만 결제를 완료하지 않은 사용자 그룹을 식별할 수 있습니다.

이제 Firebase 클라우드 메시징을 사용하여 이러한 사용자에게 장바구니에 항목이 있음을 알리는 알림을 보내려고 한다고 상상해 보세요. "incomplete-checkout"이라는 세그먼트를 만들고 Firebase 설치 ID로 식별되는 이러한 사용자를 포함하고 BigQuery에 업로드하여 Firebase와 공유할 수 있습니다.

Firebase가 이 데이터를 수집하면 알림 작성기에서 "불완전한 체크아웃"을 대상으로 하는 새 알림 캠페인을 만들어 사용자에게 체크아웃을 완료하도록 유도하는 메시지를 보낼 수 있습니다.

일부 사용자를 위한 앱 구성

일부 사용자가 앱을 탐색하는 데 문제가 있음을 나타내는 사내 분석 솔루션을 사용한다고 가정합니다. 이러한 사용자를 돕기 위해 짧은 자습서 비디오를 포함하도록 이러한 사용자에 대한 앱 동작을 구성하려고 합니다.

앱에 원격 구성을 통합하고 앱에서 "needs_help"와 같은 매개변수를 사용하여 튜토리얼 비디오를 조건부로 표시 할 수 있습니다.

분석 데이터를 사용하여 "troubled-users"라는 세그먼트를 만들고 Firebase 설치 ID로 식별되는 적절한 사용자를 포함합니다. 그런 다음 이 세그먼트와 해당 구성원을 BigQuery에 업로드하여 Firebase와 공유하세요.

Firebase가 이 데이터를 수집하면 원격 구성 콘솔에서 타겟팅 가능한 세그먼트로 사용할 수 있습니다. 그런 다음 "문제가 있는 사용자"를 대상으로 하는 조건을 만들고 이 조건에 대해 "needs_help" 매개변수를 true로 설정하고 기본적으로 false로 설정할 수 있습니다. 이 구성이 게시되면 앱은 "문제가 있는 사용자" 세그먼트의 사용자에게만 자습서 비디오를 표시합니다.

여러 기기에서 사용자 여정을 따르세요.

Firebase와 Google 애널리틱스를 사용하여 음식점 리뷰 앱을 만들었다고 상상해 보세요. 수집된 메트릭을 사용하여 사용자가 모바일 장치와 태블릿 모두에서 앱에 액세스하는 경우가 많습니다. 또한 사용자가 태블릿에서 리뷰를 작성하는 것을 선호하는 반면 모든 장치에서 리뷰를 읽을 수 있음을 알게 되었습니다.

일부 사용자는 휴대전화에서 리뷰를 작성하기 시작하고 더 작은 폼 팩터로 인해 포기할 수 있습니다. 리뷰를 완료하라는 알림을 태블릿에서 이러한 사용자에게 보내기로 결정했습니다.

이렇게 하려면 로그인한 사용자에 대해 Google Analytics를 사용하여 내부 생성 reviewerId를 UserId로 설정하고 이벤트를 트리거하여 취소된 리뷰를 식별할 수 있습니다. 그런 다음 앱의 Google 애널리틱스 데이터를 BigQuery로 내보낼 수 있습니다.

BigQuery에서 이 데이터를 분석하여 휴대전화에서 리뷰 작성을 완료하지 않은 사용자의 태블릿의 Firebase 설치 ID를 식별할 수 있습니다. 이 그룹의 이름을 "tablets-of-users-who-cancelled-on-phone"으로 지정하고 세그먼트를 BigQuery에 업로드하여 Firebase와 구성원 목록을 공유할 수 있습니다.

Firebase가 이 데이터를 수집하면 알림 작성기에서 타겟팅 가능한 세그먼트로 사용할 수 있습니다. 그런 다음 "휴대전화에서 취소된 태블릿 사용자"를 대상으로 하는 새 알림 캠페인을 만들어 이러한 사용자에게 태블릿에서 검토를 완료하도록 유도하는 메시지를 보낼 수 있습니다.