Slide 1

Slide 1 text

アプリデータの分析を楽に効果的に! FirebaseAnalytics とお友達になると良い3つの理由 Data Platform Meetup #2 Eureka, Inc Kurimura Takahisa

Slide 2

Slide 2 text

自己紹介 Takahisa Kurimura - Eureka Inc. - BI (Business intelligence) チーム所属 - Mobile apps/ Matching / SharingEconomy - Football (主にJリーグ) / Motorbike / other sports... t-kurimura t_kurimura

Slide 3

Slide 3 text

No content

Slide 4

Slide 4 text

エンゲージ プロダクト紹介 グローバル展開のオンラインデーティングアプリと新規事業の結婚コンシェルジュサービス

Slide 5

Slide 5 text

での を利用した アプリデータの収集 本日のテーマ の紹介 エウレカでの活用事例

Slide 6

Slide 6 text

お仕事遍歴 データアナリスト・整備人 アプリエンジニア Androidアプリ開発 SMSログイン機能の導入 設計変更 ABテストなどの実装グロースハック Scrum Master アジャイル開発の推進 プロダクトチームの進捗管理 PdMのサポート Pairs事業部(日本版) PairsGlobal(台湾/韓国版) Androidアプリ開発 お相手を探す画面フルスクラッチ サーバーサイド開発 不正ユーザー登録阻止機能企画実装 アクティベーションキャンペーン実装 データ抽出・分析 有料会員の UXの現状課題分析 各種効果測定設計・実施 BI Team In-App Chat機能の分析 ユーザー向けコンテンツのための分析 効果測定フロー整備 DataPlatform業 CloudComposerによるAirflowの新規フロー実 装・リファクタリング DigDagのETL管理 Tableauデータソース管理 BQ内データセット・テーブル整理 受託開発会社 Androidアプリ開発 iOSでリリースされた トークアプリの実装

Slide 7

Slide 7 text

使っていますか?

Slide 8

Slide 8 text

実体は Googleアナリティクス Google のアプリ デベロッパー向け統合プラットフォームである Firebase と連 動する最新のアプリレポート。 FirebaseというiOS/Andoridアプリ開発ツールの一部 Google アナリティクスか Firebase コンソールかを問わず、アプリレポートを使 用するには、アプリに Firebase SDK を導入しておく必要があります。 Firebase SDK では、独自にコードを追加しなくても、基本的なアプリ使用状況 データが自動的に収集されます。 とはなにか 簡単に言えばGoogleAnalyticsのアプリ版

Slide 9

Slide 9 text

(個人的には)アプリ開発のデファクトスタンダード とはなにか アプリの統合開発環境プラットフォーム Googleが提供するアプリの開発を支援するツール群。導入が容易で、それぞ れの機能が相互に連携が可能で、機能も多岐に渡る。 SNSログイン機能 モバイルアプリ内での 機械学習ツール ABテスト支援ツール Push通知送信機能 ABテスト支援ツール

Slide 10

Slide 10 text

の良さ 導入・運用の簡単さ 自動で収集される データ データの活用 が容易

Slide 11

Slide 11 text

の良さ 導入・運用の簡単さ 自動で収集される データ データの活用 が容易

Slide 12

Slide 12 text

導入・運用の簡単さ の良さ データの人 アプリケーション エンジニア 「こんなデータ取りたいので ここ と ここ と ここ に ログいれてくれませんか?」

Slide 13

Slide 13 text

導入・運用の簡単さ の良さ データの人 「こんなデータ取りたいので ここ と ここ と ここ に ログいれてくれませんか?」 「わかりました(チョット嫌そう」 「来月やります...」 「ホントに必要なんですか...」 アプリケーション エンジニア

Slide 14

Slide 14 text

導入・運用の簡単さ の良さ データの人 「わかりました(チョット嫌そう」 「来月やります...」 「ホントに必要なんですか...」 アプリケーション エンジニア 経験上、たしかに面倒 「こんなデータ取りたいので ここ と ここ と ここ に ログいれてくれませんか?」

Slide 15

Slide 15 text

導入・運用の簡単さ の良さ モバイルアプリ Pairsサーバー データベース とあるログの転送フロー 自社API

Slide 16

Slide 16 text

導入・運用の簡単さ の良さ 実装するコードは実質1行 Bulk送信なのでオフラインでも利用可能 UX面でもメリット 最大72時間アプリにログを貯める

Slide 17

Slide 17 text

導入・運用の簡単さ の良さ パラメーターの追加などで工数削減 サーバーサイド開発 ネイティブアプリ開発 ネイティブアプリ開発

Slide 18

Slide 18 text

導入・運用の簡単さ の良さ SDKの導入のみで計測開始 Consoleで簡易的な情報は確認可能

Slide 19

Slide 19 text

導入・運用の簡単さ の良さ BigQueryと接続可能(10GBまでは無料)

Slide 20

Slide 20 text

導入・運用の簡単さ の良さ アプリ毎に細かくプロジェクトを分けるのがおすすめ アプリA アプリB アプリC アプリA アプリB アプリC Android iOS BigQuery Date partition

Slide 21

Slide 21 text

の良さ 導入・運用の簡単さ 自動で収集される データ データの活用 が容易

Slide 22

Slide 22 text

の良さ セッション関連データ インストール毎のアプリの初回起動 セッションの開始 アプリのフォアグラウンドでの動作 自動で収集される データ アプリ特有データ OSのアップデート アプリのアップデート Push通知関連データ(FCM) プッシュ通知の受信 プッシュ通知の開封 プッシュ通知の削除(Androidのみ) アプリ内での動作 各画面遷移データ IAP購入データ これだけのイベントがSDKを導入するのみで収集できる

Slide 23

Slide 23 text

の良さ 自動で収集される データ 端末のカテゴリ(モバイル、タブレット、 PC) 端末のブランド名 端末のモデル名 端末のマーケティング名 OS から直接取得した端末のモデル情報 端末の OS OS のバージョン IDFV(IDFA を収集していない場合にのみ使用) 広告 ID / IDFA OS の言語 ユーザーの位置情報を格納するレコード イベントが報告された大陸( IP アドレス ベース) イベントが報告された亜大陸( IP アドレスベース) イベントが報告された国( IP アドレス ベース) イベントが報告された地域( IP アドレス ベース) イベントが報告された大都市圏( IP アドレスベース) イベントが報告された都市 (IP アドレス ベース)

Slide 24

Slide 24 text

の良さ 自動で収集される データ ユーザーを最初に獲得したトラフィックソースの名前 。このフィールドは当日テーブルでは使用されません。 ユーザーを最初に獲得したマーケティングキャンペーンの名前。このフィールドは当日テーブルでは使用されません。 ユーザーを最初に獲得したメディアの名前(有料検索、オーガニック検索、メールなど)このフィールドは当日テーブルでは使用 されません。 ユーザーを最初に獲得したネットワークの名前。このフィールドは当日テーブルでは使用されません。

Slide 25

Slide 25 text

の良さ 自動で収集される データ 地域情報 デバイス情報 ユーザーカスタム パラメーター イベントカスタム パラメーター 1つのイベントに対して、その時の状態がこれだけ付与される

Slide 26

Slide 26 text

の良さ 導入・運用の簡単さ 自動で収集される データ データの活用が 容易

Slide 27

Slide 27 text

の良さ データの活用 が容易 アプリに対して、設定した値を返すツール アプリに対して、Firebaseのコンソールから設定した値を返却できる。 機能のABテストなどのフラグ管理に有効 女性ユーザーには機能Aを、男性には...」といった形で値の変更ができる。コ ンソールからいつでも変更できるので、アプリのリリースサイクルなどに影響を 受けない。 https://firebase.google.com/docs/remote-config

Slide 28

Slide 28 text

の良さ データの活用 が容易 アプリのABテストの支援ツール ユーザーを指定のセグメントに分類し、そのセグメント毎のアクションの状況を Firebase Analyticsに送信する。 ユーザーの分割などを自動的に行える部分が魅力 ユーザーの分割をランダムに行うので他の変数の影響を受けにくく工数削減 になる。またUserIDがないユーザーの分類にも有効。 https://firebase.google.com/docs/ab-testing

Slide 29

Slide 29 text

の良さ データの活用 が容易 アプリエンジニア データの人 よりシームレスにPDCAを回すことが可能

Slide 30

Slide 30 text

での の活用状況

Slide 31

Slide 31 text

での活用事例 データ基盤の全体構成図

Slide 32

Slide 32 text

での活用事例 DataLakeのひとつとして活用

Slide 33

Slide 33 text

での活用事例 FirebaseAnalytics 生ログをほぼ そのまま保存している Firebase event ta Userデータ

Slide 34

Slide 34 text

データをほぼ そのまま保存しているDB 分析用の下処理を施したDB ビジネス観点で整備したDB での活用事例 Firebase event table Userデータ Pairsサーバー管理の データとの統合データ 分析用データ テーブル DataWareHouse層で会員情報と紐付け

Slide 35

Slide 35 text

セッション アプリを起動してから、アプリを閉じる(アプリがバックグランドに移行する)まで の期間をセッションとしてその時間を計測。 ユーザーの利用傾向などの把握が可能に 時間帯の情報、獲得チャネル、ユーザーの会員ステータスなどと掛け合わせ てみることで、課題の発見をできたり定性的なユーザー体験の改善の効果測 定として利用可能。 での活用事例 セッションデータ

Slide 36

Slide 36 text

での活用事例 セッションデータ データをほぼ そのまま保存しているDB 分析用の下処理を施したDB ビジネス観点で整備したDB Firebase event table Userデータ 統合セッションデータ (Daily Partition Table) 3ヶ月分のデータ (1/10の無作為抽出) 1週間分のデータ (全データ) 膨大なデータ量なのでDataMartを作る段階で工夫

Slide 37

Slide 37 text

アプリのActivity/ViewController名を集計 iOS・AndroidのSDKのクラス名が集計される。 実装時に定義しているものなので読めばわかるものがほ とんどだが、実際の画面に紐付かないものもあるので、ア プリエンジニアとの連携が必要。 行動が画面単位で見えてくる 特定アクションまでの行動経路の分析や各画面での滞在 時間などの分析が可能に。 での活用事例 データ

Slide 38

Slide 38 text

での活用事例 データ Firebase event table Userデータ PVデータ (Daily Partition Table) ※不要なログを除外 分析用データ 分析者が利用しやすいようにアプリエンジニアに対応表を管理を協力してもらう アプリのClass名の対応表

Slide 39

Slide 39 text

での活用事例 特殊な更新設定 2日以上前のテーブルも更新されることがあるので、DWHの更新設定には注意 event_20191130 event_20191201 event_20191202 event_20191130 event_20191201 event_20191202

Slide 40

Slide 40 text

Product manager / Product owner プロジェクトの立案や各種ヘルスチェック、効果測定や仮 説の検証に利用 での活用事例 の利用者 Sessionデータ PageViewデータ Engineer バグ調査のために、クラッシュが起きた時点でのユーザー のステータスや再現条件の確認など Customer care お客様の使い方のフォローや特殊な状況の救済

Slide 41

Slide 41 text

本日のまとめ

Slide 42

Slide 42 text

本日のまとめ - FirebaseAnalyticsでは独自実装だとかなりの工数が掛かりそうなデータが 半自動的に収集可能 - アプリ開発フレンドリーなツールなので、 アプリエンジニアが比較的使いやすい - Firebaseの別のツールの連携が可能で、グロースハックなどが簡単にできる - BigQueryにExportできるデータは、あくまでも RawDataなので活用していくための ETLは重要

Slide 43

Slide 43 text

リンク集 もう少し具体的な FirebaseAnalyticsの扱い方・やや特殊なテーブル構造などについて (Blog) https://medium.com/eureka-engineering/firebase-analytics-bigquery-484e23534b5a FirebaseAnalytics紹介動画(Google公式) https://www.youtube.com/watch?v=8iZpH7O6zXo FirebaseAnalyticsの自動送信イベントの説明 (Firebase 向け Google アナリティクス) https://support.google.com/firebase/answer/6317485?hl=ja イベントとパラメータの詳細( Firebase 向け Google アナリティクス) https://support.google.com/firebase/answer/7061705?hl=ja エウレカのDataPlatformについて https://speakerdeck.com/tamakitetsumoto/data-platformgou-zhu-puroziekutotui-jin-falseshi-li-toxue-bi

Slide 44

Slide 44 text

No content