Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
不動産情報サイトにおけるリアルタイムデータ分析基盤の活用
Search
Red Frasco
December 07, 2023
Technology
1
99
不動産情報サイトにおけるリアルタイムデータ分析基盤の活用
2023/12/07 に開催された Jagu'e'r(Japan Google Cloud Usergroup for Enterprise)データ利活用分科会 LT 大会の登壇資料です。
Red Frasco
December 07, 2023
Tweet
Share
More Decks by Red Frasco
See All by Red Frasco
バッチ処理が終わらない!? -処理時間を90%削減した話-
red_frasco
1
60
不動産情報サイトにおけるデータ収集で頑張ったこと
red_frasco
0
93
コストに関するヒヤリハットのお話 ~コスト超過で手遅れにならないためにすべきこと~
red_frasco
0
180
Spring Boot 2 から 3 へバージョンアップしてみた
red_frasco
4
11k
チーム一丸となって信頼性向上! 多種多様な監視でサイトを守る取り組みの紹介
red_frasco
1
1.1k
Red Frasco 会社紹介
red_frasco
3
7k
AWS環境におけるSpring BootアプリケーションのCI/CDをCircleCIで構築した話
red_frasco
2
380
Feature 環境の自動生成と Blue Green Deployment で効率的かつ安全なリリースプロセスを構築
red_frasco
1
230
AWS Batch × Spring Batch でクラウド最適なバッチを構築した話
red_frasco
1
880
Other Decks in Technology
See All in Technology
IPUT App Dev. Co. -Overview 2024/4
iputapp
0
120
.NET Profiler in 2024.
kkamegawa
2
870
Google Cloud Next '24 Recap(Cloud Run/k8s)
mokocm
0
310
How to do well in consulting–Balkan Ruby 2024
irinanazarova
0
120
今日からできる!簡単 .NET 高速化 Tips -2024 edition-
xin9le
7
3.5k
Além do else! Categorizando Pokemóns com Pattern Matching no JavaScript
wmsbill
0
700
Azure犬駆動開発の記録/GlobalAzureFukuoka2024_20240420
nina01
1
240
BPStudyの200回を中心にIT業界を振り返る。そしてこれから
haru860
3
390
MixIT 2024 - Pulumi : Gérer son infra avec son langage de programmation préféré
ju_hnny5
1
120
Cloud Service Mesh に触れ合う
phaya72
1
150
成長をサポートするピープルマネジメントのやり方
sioncojp
7
530
DMM.com アルファ室採用案内資料
hsugita
1
220
Featured
See All Featured
Understanding Cognitive Biases in Performance Measurement
bluesmoon
11
1k
The Pragmatic Product Professional
lauravandoore
26
5.8k
Documentation Writing (for coders)
carmenintech
61
4k
Put a Button on it: Removing Barriers to Going Fast.
kastner
58
3.1k
Building an army of robots
kneath
300
41k
Pencils Down: Stop Designing & Start Developing
hursman
117
11k
What's new in Ruby 2.0
geeforr
337
31k
Statistics for Hackers
jakevdp
790
220k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
33
6k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
6
3.4k
jQuery: Nuts, Bolts and Bling
dougneiner
59
7.2k
Design by the Numbers
sachag
274
18k
Transcript
ෆಈ࢈ใαΠτʹ͓͚Δ ϦΞϧλΠϜσʔλੳج൫ͷ׆༻ Jagu'e'r データ利活⽤分科会 LT⼤会 2023.12.07
⽬次 1. ⾃⼰紹介/弊社紹介 2. 本⽇話すこと/話さないこと 3. なぜリアルタイムデータが必要なのか 4. 分析基盤のシステム構成 5.
リアルタイムデータの活⽤⽅法 6. その他
⾃⼰紹介 杉⼭ 隆(Takashi Sugiyama) 3 • 所属 • 株式会社Red Frasco
• 職種 • データエンジニア/MLエンジニア • 技術 • Google Cloud, Python, Golang • よく使うGCPサービス • Cloud Composer, Dataflow, Dataproc, BigQuery, ...
株式会社Red Frasco • https://www.red-frasco.com/ • 不動産業界に特化したプロダクト開発・集客⽀援を実施 • 今回はとある 賃貸不動産情報サイトのデータ分析基盤 のお話
4
本⽇話すこと/話さないこと • 話すこと • データ分析基盤内のリアルタイムデータについて • ⽬的、取得⽅法、活⽤⽅法・・・等 • 話さないこと •
データ分析基盤のその他の仕組み • データパイプライン、DWH、BI・・・等 5
なぜリアルタイムデータが必要なのか(1/2) • 賃貸不動産情報サイトにおけるユーザーの⾏動パターン • ほとんどのユーザは初回訪問でコンバージョン(Web での問い合わせ 等)する • そのためセッション内での訴求が重要となり、⾏動ログ等のユーザ データをリアルタイムで取得、さらにセッション内の⾏動を計測でき
るようにすることが望まれる 6
なぜリアルタイムデータが必要なのか(2/2) • Google アナリティクスでは要件を満たせなかった • BigQuery Export 機能 • エクスポートされるタイミングが遅い(要件定義時は翌⽇午後)
• 最近早くなってきた(翌⽇早朝)が、それでも要件を満たしていない • ストリーミングエクスポート機能 • 翌⽇以降にエクスポートされたレコードと⽐較すると、2〜3割程度のレコード⽋ 損がある︖(※今回の対象サイトだけかもしれません。ご参考まで。) • 将来的には GA からリアルタイムデータへの移⾏を検討 • UA → GA4 の移⾏に伴う作業が⼤変だった・・・ 7
分析基盤のシステム構成(1/6) 全体構成 8
分析基盤のシステム構成(2/6) 本⽇話す内容はここ︕ 9
分析基盤のシステム構成(3/6) 拡⼤ + 開発中の機能も表⽰ 10
分析基盤のシステム構成(4/6) • ログを取得する仕組みは API で提供 • アプリケーション側に極⼒⼿が⼊らないように • 開発チームとの分離 •
バックエンドは Cloud Run で構築 • 運⽤が楽︕ 11
分析基盤のシステム構成(5/6) • ログの保存先は2つ • Cloud Run → Bigtable • ログをすぐに利⽤したい場合の保存先
• 過去2⽇分を保存 • Cloud Run → Pub/Sub → Dataflow → BigQuery • 通常利⽤の保存先 • 過去分全てを保存 12
分析基盤のシステム構成(6/6) • 当初は Bigtable ではなく Firestore を利⽤していたが 書き込みエラーが多く出たため変更 • エラー原因は結局分からず・・・
• 「500/50/5」ルールはきちんと守っていた・・・はず・・・ 13
リアルタイムデータの活⽤⽅法 • レコメンド機能 • ユーザーの⾏動ログを基にした User-to-Item レコメンド • 直近(同⼀セッション内)の⾏動ログを特徴量として使⽤ •
鋭意開発中︕ 14
その他 • その他の機能も機会があれば話させてください︕ もしくは懇親会で︕ • Embedding を使⽤した Item-to-Item レコメンド •
Cloud Composer のノウハウ • Redash on GKE・・・等 15
Thanks for listening!