飲食店を豊かにするテクノロジー基盤

Aeb0810e32e5ca1c2a5e40356cfbe715?s=47 Haokang Den
February 27, 2020

 飲食店を豊かにするテクノロジー基盤

Google SaaS Day 2020 の登壇資料です。

飲食店のデータ分析をサポートするトレタのデータ基盤の構成や運用事例をいくつかご紹介させていただきました。

イベントの詳細はこちら
https://inthecloud.withgoogle.com/saas-day-jp-20/register.html

当日の録画はこちら
https://youtu.be/PrA-NbjW6Tk?t=19187

Aeb0810e32e5ca1c2a5e40356cfbe715?s=128

Haokang Den

February 27, 2020
Tweet

Transcript

  1. 飲食店を豊かにするテクノロジー基盤 株式会社トレタ  鄧 皓亢 氏 [Track 2] 17:50–18:20

  2. 概要 1. 自己紹介 2. サービス紹介 3. 飲食店の課題 4. データ基盤 5.

    運用事例 6. トレタの目指す世界観
  3. 自己紹介 • 元飲食メディア ◦ データサイエンティスト • トレタ ◦ 海外拠点立ち上げ ◦

    データ基盤構築 ◦ データーチームリーダ ◦ 各種分析担当 ◦ CTO 室兼務 ◦ SRE 兼務
  4. 飲食店向け 予約/顧客管理サービス「トレタ」

  5. 進化した予約台帳

  6. 飲食店の課題

  7. None
  8. 飲食店(特に法人)が抱えている課題 • 社内のレポート ◦ 集計、データエクスポート • 他のツールとの連携 ◦ メール配信 •

    施策の参考・検証 ◦ メディア配分・ROI • メニュー作りの参考資料 ◦ POS
  9. 社内の課題 • 各種レポート ◦ KPI・ダッシュボード • お客さんの利用度合い確認 ◦ 席設定・Web 予約

    ◦ 予約の入り具合 • 上書き保存 vs 過去の瞬間を再現したい • 営業資料出力 • 投資家向け資料出力 ◦ インターアクティブ・ドリルダウン
  10. 長期的にデータを整備する難しさ ETL SQL そもそも データが無い メンテナンスコスト メンテナンスコスト 書ける人 vs 書けない人

    プロダクト設計
  11. トレタのデータ基盤

  12. 差分抽出(CDC)とは • データベースのレプリケーションとバックアップはログで行われている • マスター側の状態を再現できるデータを内包する • マスター側にはそれほど負荷がかからない • データベース毎に独自のフォーマットがある •

    Binary Log (MySQL の独自実装、通称 binlog)
  13. 差分抽出(CDC)とは

  14. 差分データの内容(ファクト、実績) • イミュータブル • データベースのメタデータ ◦ IP、hostname ◦ データベース名 •

    変更前のデータ • 変更後のデータ • トランザクションメタデータ ◦ Binlog のファイル名、位置 ◦ 元の SQL 文、コメント(トレタは設定して無い)
  15. 変更履歴によるデータベースの復元 マスター / ログ (Single Source of Truth) キャッシュ /

    ビュー (MySQL 側の構造を再現) 定期実行
  16. CDCの活用方法 • 変更履歴 ◦ 「〜 change_logs」や「〜 histories」を都度実装しなくてもいい • マイクロサービス間の変更通知 ◦

    ModelObservers の代わり ◦ Rx / FRP (例:RxRuby) 的な使い方も ◦ 通知ロジック(例:リトライ)との疎結合 ◦ ダブルコミット問題回避 • 空席在庫モニタリング • 監査対策
  17. 認識負荷を下げるためのBIツール 法人毎、店舗毎にカスタマイズ可能 プロダクション DB を直接叩いているような体験を提供しつつ プロダクション環境には直接負担がかからない

  18. 運用事例

  19. 顧客の積み上げ具合

  20. 顧客の積み上げ具合

  21. 空席在庫 / 本日の予約情報

  22. トレタの目指す世界観

  23. None
  24. None
  25. Thank you Confidential & Proprietary