Successfully reported this slideshow.
Your SlideShare is downloading. ×

Kaizen Platform における BigQuery 活用事例 #bq_sushi tokyo #2

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Loading in …3
×

Check these out next

1 of 28 Ad
Advertisement

More Related Content

Similar to Kaizen Platform における BigQuery 活用事例 #bq_sushi tokyo #2 (20)

Advertisement

Recently uploaded (20)

Kaizen Platform における BigQuery 活用事例 #bq_sushi tokyo #2

  1. 1. 2015/11/19 #bq_sushi tokyo #2 Yu Kawabe Kaizen Platform, Inc. Kaizen Platform における BigQuery 活用事例 Kaizen Platform における BigQuery 活用事例
  2. 2. Self introduction Yu Kawabe • 2009 - 2014 RICOH Company, Ltd. Production planning(生産管理・生産企画) Supply chain management VBA, SQL Server • 2014 - Kaizen Platform, Inc. Product Manager BigQuery, MySQL, Python • My hobby 囲碁(第49回学生本因坊ベスト8)
  3. 3. Service Site Analysis
  4. 4. What is Kaizen Platform Optimizer Network Provide the 3Cs: Content, Creative and Conversations. SaaS A/B Testing Platform Manages workflow of sourcing, creating and optimizing the 3Cs. Search Social Email Site Content Content Creative Conversations + Display
  5. 5. サービスサイトのアクセス分析 • ユーザーのアクセスログをBQに送り続ける • BQに貯まったログにクエリをたたく - Visualization Tool へ連携 - Adhocに分析 User access Access log Adhoc Analyze Visualization Google BigQuery の話 #gcpja by Naoya Ito https://speakerdeck.com/naoya/google-bigquery-falsehua-number-gcpja
  6. 6. サービスサイトのアクセス OS別 • サービスサイトのアクセスを OS 別にカウント • クエリ結果を Re:dash で Visualize - ブラウザ種別や時間帯別なども
  7. 7. サービスサイトのアクセス Browser 別
  8. 8. サービスサイトのアクセス 国別 [fh-bigquery:geocode.geolite_city_bq_b2b]で国を判別=> visualize
  9. 9. ファネル分析 各ユーザーがどのアクションまで到達したかを CASE WHEN 句でファネル定義
  10. 10. ファネル分析 Visualization tool でユーザーの サインアップ時系列に集約 ファネル毎の ユーザー数を可視化
  11. 11. アドホック分析 RDB の集計データを Dimension table として使う 例:報酬上位10%のユーザーはサービス上でどのような行動をしているか? 例:A/Bテストの月間回数が下位X%のカスタマーはどこで離脱してるか? Dimension table(view) user_id reward_percentile 1 10 2 20 3 20 4 10 5 30 + User Access log summarizeCopied RDB main Table App::BigQuery::Importer::MySQL
  12. 12. BQでアクセスログ分析を行うメリット • Visualization tool 連携の柔軟性が高い • 集計内容を後から簡単に変更できる - Queryでファネル定義 • Adhocに分析可能 - Dimension tableとjoin - Time range の調整
  13. 13. PRODUCT for Basic Web site Optimization
  14. 14. Variations Original A B C D The best variation! Web Page A/Bテスト
  15. 15. A/Bテストのログ集計 Customer web site Kaizen JS End-user access 顧客サイトに貼られたJSタグでvisit, conversionログを収集 サービス用は DynamoDB 、生ログを BQ に格納 Hourly data 集計前の生ログ を格納 サービスサイト から問い合わせ
  16. 16. ログ活用 live-ops • 「自社のGAデータと数値が若干ズレるのですが、 詳細データを調べてもらえませんか?」 • 「自社IPは除いて評価したいのですが、可能ですか?」 ・ ・ ・ これらの問い合わせには全てBQで対応 (BQ導入前はストレージにzipしてたので調査も一苦労。。。)
  17. 17. ログ活用 重複送信の検知 Customer web site Kaizen JS 集計前の生ログ を格納 サービスサイト から問い合わせ ログが重複送信されているケースが時折発生している =>BQで検知できないか? Kaizen JS よくあるケース はタグ二重貼り End-user access Hourly data
  18. 18. ログの重複送信を検知 ①同一 session で発生しているログの時刻を抽出 ②閾値時間内に重複送信されている確率を算出 ① ②
  19. 19. ログの重複送信を検知 重複送信されている割合をA/Bテスト毎に可視化
  20. 20. Product for Advanced PRODUCT for Advanced Ad x Web Optimization
  21. 21. Ad x Web A/Bテスト Ad Optimization Web Optimization Maximize the inbound Optimize with clicked banners Kaizen Platform Optimization System Architecture http://www.slideshare.net/DaisukeTaniwaki/kaizen-platform-optimization-system-architecture
  22. 22. Ad x Web A/Bテスト Customer web site(LP) Kaizen JS(Web) サービスサイト から問い合わせ Media site Kaizen JS (Ad) 集計前の生ログ を格納 Ad banner click LP へ遷移 Ad banner click => LP到達時に Ad cookie(3rd party) & web cookie(1st party cookie) データをBQへ格納 Hourly data
  23. 23. ・・・・・ AD x Web cookie sync Kaizen JS (Ad) Kaizen JS(Web) 重複あり Ad x Web cookie sync ・・・・・
  24. 24. AD x Web cookie sync AD Web Sync
  25. 25. Segment を集計時に加工する • データは 1 Record / visit • Segment情報は1カラムにカンマ区切りで格納 LP ConversionLogin ・・・ End-user access Referer は LP到達時点を 採用したい 会員情報は Conversion直前 から取得したい
  26. 26. Segment を集計時に加工する
  27. 27. まとめ • とりあえず、データは全部貯めておく • 使い方・集計方法は後から考えても(必要になっても) データがあれば対処できる =>Reactiveに運用・分析 • ローンチ前のサービス・機能の検証を低コストでできる • 一方、力技でだいたいどうにかなってしまうので 適当にやると事前の運用設計がおろそかになってしまったり => 諸刃の刃的な側面も
  28. 28. Thank You! EOF

×