GCPで行動ログ基盤 を開発している話
by
kaito2
×
Copy
Open
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Slide 1
Slide 1 text
GCPで行動ログ基盤 を開発している話 エムスリー株式会社 岩月 海人
Slide 2
Slide 2 text
自己紹介
Slide 3
Slide 3 text
自己紹介 - 岩月海人 (@kaito_two) - エムスリー株式会社 - AI・機械学習チーム - どちらかというとデータエンジニア - 2019年 4月16日 新卒(?)入社 - 主にGCP関連の基盤を担当
Slide 4
Slide 4 text
話すこと
Slide 5
Slide 5 text
話すこと ● m3.com とは? ● 行動ログ基盤 ○ 背景 ○ 概要 ○ 構成 ○ 設計・移行で苦しんだトコロ ● まとめ
Slide 6
Slide 6 text
m3.com とは?
Slide 7
Slide 7 text
m3.com とは? 医師限定会員サイト 医師向けYahooのようなイメージ(多分一つ前でもはなしてある) サイト内に複数サービス(現在20以上)への導線が存在する。
Slide 8
Slide 8 text
行動ログ基盤 (移行中)
Slide 9
Slide 9 text
行動ログ基盤 目的 m3.com のサービス横断の広告表出システムをリニューアルする 概要 ● 対応サービスのコンテンツの中からユーザーに対しておすすめを表示(パーソナラ イズ) ● ユーザーの行動ログからCVをリアルタイムに補足
Slide 10
Slide 10 text
行動ログ基盤(現状の課題) なぜつくっているか? (既存システムの課題) 1. 各システムとの結合が強い ○ 表示可能なコンテンツを各サービスに問い合わせている (後述) 2. 他のシステムに相乗りする形で実装されている ○ 当時の開発スピードが優先されていた 3. 細かいパーソナライズができていない ○ 現状 「Aさんはニュースサービスが好き」 ○ やりたい 「AさんはXXXに関するニュースが好き」
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
行動ログ基盤 | 構成 パーソナライズされた 表示するコンテンツを提供
Slide 16
Slide 16 text
行動ログ基盤 | 構成 各サービスの行動ログを送信
Slide 17
Slide 17 text
行動ログ基盤 | 構成 Pub/Sub をサブスクリプションし、 行動ログからCVを判定
Slide 18
Slide 18 text
行動ログ基盤 | 構成 Pub/Sub をサブスクリプションし、 行動ログからCVを判定 状態を取得・更新
Slide 19
Slide 19 text
行動ログ基盤 | 構成
Slide 20
Slide 20 text
行動ログ基盤 | 構成 ココ
Slide 21
Slide 21 text
API 構成 表示可能なコンテンツを取得 m3の各サービス
Slide 22
Slide 22 text
API 構成 取得した情報をもとに最適化 (ロジックをPlugableにする)
Slide 23
Slide 23 text
設計・移行で悩んだトコロ
Slide 24
Slide 24 text
Pub/Sub のトピックを分割するか 現在は中央のトピックを立てている 関係ない Message でも呼び出される
Slide 25
Slide 25 text
Pub/Sub のトピックを分割するか Dataflow で分ける方法もあるが現状はしてない マシンリソースと Pub/Subのトラフィックがかかる
Slide 26
Slide 26 text
Cloud Datastore の制約 ● 一度に500エンティティまでしか書き込めない ○ コンテンツなどをBulkで追加するのが厳しい ● Kindごとの削除のコストが高い ○ Dataflowのジョブを起動する必要がある。 ■ https://cloud.google.com/datastore/docs/bulk-delete ● 基盤システムなので従量課金が厳しい(当たり前) BigTable を採用している
Slide 27
Slide 27 text
まとめ ● m3.com について ● m3.com 上のアドの仕組みをリニューアルしている ○ 様々な課題が ■ システムの密結合 ■ パーソナライズに改善の余地 ○ 行動ログ基盤をつくりリアルタイムなデータの活用を進める ● 構築上の悩み ○ Pub/Sub のトピック構成 ○ DBの選定(Datastoreが厳しそう)
Slide 28
Slide 28 text
ありがとうございました