Upgrade to Pro — share decks privately, control downloads, hide ads and more …

アプリデータの分析を楽に効果的に!FirebaseAnalyticsとお友達になると良い3つの理由

B69ca852ded09d2e863c4410746320a3?s=47 t-kurimura
December 02, 2019

 アプリデータの分析を楽に効果的に!FirebaseAnalyticsとお友達になると良い3つの理由

Data Platform Meetup #2
2019/12/02
https://data-platform-meetup.connpass.com/event/155073

文字が色褪せる!!

B69ca852ded09d2e863c4410746320a3?s=128

t-kurimura

December 02, 2019
Tweet

Transcript

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

    Takahisa
  2. 自己紹介 Takahisa Kurimura - Eureka Inc. - BI (Business intelligence)

    チーム所属 - Mobile apps/ Matching / SharingEconomy - Football (主にJリーグ) / Motorbike / other sports... t-kurimura t_kurimura
  3. None
  4. エンゲージ プロダクト紹介 グローバル展開のオンラインデーティングアプリと新規事業の結婚コンシェルジュサービス

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

  6. お仕事遍歴 データアナリスト・整備人 アプリエンジニア Androidアプリ開発 SMSログイン機能の導入 設計変更 ABテストなどの実装グロースハック Scrum Master アジャイル開発の推進

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

  8. 実体は Googleアナリティクス Google のアプリ デベロッパー向け統合プラットフォームである Firebase と連 動する最新のアプリレポート。 FirebaseというiOS/Andoridアプリ開発ツールの一部 Google

    アナリティクスか Firebase コンソールかを問わず、アプリレポートを使 用するには、アプリに Firebase SDK を導入しておく必要があります。 Firebase SDK では、独自にコードを追加しなくても、基本的なアプリ使用状況 データが自動的に収集されます。 とはなにか 簡単に言えばGoogleAnalyticsのアプリ版
  9. (個人的には)アプリ開発のデファクトスタンダード とはなにか アプリの統合開発環境プラットフォーム Googleが提供するアプリの開発を支援するツール群。導入が容易で、それぞ れの機能が相互に連携が可能で、機能も多岐に渡る。 SNSログイン機能 モバイルアプリ内での 機械学習ツール ABテスト支援ツール Push通知送信機能

    ABテスト支援ツール
  10. の良さ 導入・運用の簡単さ 自動で収集される データ データの活用 が容易

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

  12. 導入・運用の簡単さ の良さ データの人 アプリケーション エンジニア 「こんなデータ取りたいので ここ と ここ と

    ここ に ログいれてくれませんか?」
  13. 導入・運用の簡単さ の良さ データの人 「こんなデータ取りたいので ここ と ここ と ここ に

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

    ここ と ここ と ここ に ログいれてくれませんか?」
  15. 導入・運用の簡単さ の良さ モバイルアプリ Pairsサーバー データベース とあるログの転送フロー 自社API

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

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

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

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

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

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

  22. の良さ セッション関連データ インストール毎のアプリの初回起動 セッションの開始 アプリのフォアグラウンドでの動作 自動で収集される データ アプリ特有データ OSのアップデート アプリのアップデート

    Push通知関連データ(FCM) プッシュ通知の受信 プッシュ通知の開封 プッシュ通知の削除(Androidのみ) アプリ内での動作 各画面遷移データ IAP購入データ これだけのイベントがSDKを導入するのみで収集できる
  23. の良さ 自動で収集される データ 端末のカテゴリ(モバイル、タブレット、 PC) 端末のブランド名 端末のモデル名 端末のマーケティング名 OS から直接取得した端末のモデル情報

    端末の OS OS のバージョン IDFV(IDFA を収集していない場合にのみ使用) 広告 ID / IDFA OS の言語 ユーザーの位置情報を格納するレコード イベントが報告された大陸( IP アドレス ベース) イベントが報告された亜大陸( IP アドレスベース) イベントが報告された国( IP アドレス ベース) イベントが報告された地域( IP アドレス ベース) イベントが報告された大都市圏( IP アドレスベース) イベントが報告された都市 (IP アドレス ベース)
  24. の良さ 自動で収集される データ ユーザーを最初に獲得したトラフィックソースの名前 。このフィールドは当日テーブルでは使用されません。 ユーザーを最初に獲得したマーケティングキャンペーンの名前。このフィールドは当日テーブルでは使用されません。 ユーザーを最初に獲得したメディアの名前(有料検索、オーガニック検索、メールなど)このフィールドは当日テーブルでは使用 されません。 ユーザーを最初に獲得したネットワークの名前。このフィールドは当日テーブルでは使用されません。

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

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

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

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

    https://firebase.google.com/docs/ab-testing
  29. の良さ データの活用 が容易 アプリエンジニア データの人 よりシームレスにPDCAを回すことが可能

  30. での の活用状況

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

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

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

  34. データをほぼ そのまま保存しているDB 分析用の下処理を施したDB ビジネス観点で整備したDB での活用事例 Firebase event table Userデータ Pairsサーバー管理の

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

  36. での活用事例 セッションデータ データをほぼ そのまま保存しているDB 分析用の下処理を施したDB ビジネス観点で整備したDB Firebase event table Userデータ

    統合セッションデータ (Daily Partition Table) 3ヶ月分のデータ (1/10の無作為抽出) 1週間分のデータ (全データ) 膨大なデータ量なのでDataMartを作る段階で工夫
  37. アプリのActivity/ViewController名を集計 iOS・AndroidのSDKのクラス名が集計される。 実装時に定義しているものなので読めばわかるものがほ とんどだが、実際の画面に紐付かないものもあるので、ア プリエンジニアとの連携が必要。 行動が画面単位で見えてくる 特定アクションまでの行動経路の分析や各画面での滞在 時間などの分析が可能に。 での活用事例 データ

  38. での活用事例 データ Firebase event table Userデータ PVデータ (Daily Partition Table)

    ※不要なログを除外 分析用データ 分析者が利用しやすいようにアプリエンジニアに対応表を管理を協力してもらう アプリのClass名の対応表
  39. での活用事例 特殊な更新設定 2日以上前のテーブルも更新されることがあるので、DWHの更新設定には注意 event_20191130 event_20191201 event_20191202 event_20191130 event_20191201 event_20191202

  40. Product manager / Product owner プロジェクトの立案や各種ヘルスチェック、効果測定や仮 説の検証に利用 での活用事例 の利用者 Sessionデータ

    PageViewデータ Engineer バグ調査のために、クラッシュが起きた時点でのユーザー のステータスや再現条件の確認など Customer care お客様の使い方のフォローや特殊な状況の救済
  41. 本日のまとめ

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

    BigQueryにExportできるデータは、あくまでも RawDataなので活用していくための ETLは重要
  43. リンク集 もう少し具体的な 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
  44. None