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
求人検索をElasticsearchにしたら 速度2倍速くなった!!
Search
Kazuki Tsunemi
September 29, 2024
9
4.2k
求人検索をElasticsearchにしたら 速度2倍速くなった!!
Kazuki Tsunemi
September 29, 2024
Tweet
Share
Featured
See All Featured
The Language of Interfaces
destraynor
158
25k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Statistics for Hackers
jakevdp
799
220k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
Side Projects
sachag
455
43k
Building an army of robots
kneath
306
45k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.6k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.9k
Documentation Writing (for coders)
carmenintech
72
4.9k
A designer walks into a library…
pauljervisheath
207
24k
Writing Fast Ruby
sferik
628
62k
Transcript
2024/09/25 常見 一樹 求人検索をElasticsearchにしたら 速度2倍速くなった!! @ksilverwall
目次 • 自己紹介・サービス紹介 • 何が問題だったか? • こうしてみた • 速くなったよ
自己紹介:常見(ツネミ)です • 開発11年目(36歳) • バックエンドエンジニア ◦ Reactも書きがち • リプレイス案件多し タイミーの求人検索周りを開発中
4
1 何が問題だったか?
RDBが頑張っていた Web API 検索 RDB RDB RDB RDB RDB RDB
RDB Reader Writer 900万人 検索 うおおおお!! 複 製 登 録 29.7万拠点 400-600ms 上昇トレンド RDB クラスタ
ストレージ 数で解決できなくなってきた CPU 〜30% 余裕だわ partition: 2023-12-01 IO まだ自分 できるっす
API RDB partition: 2023-12-02 partition: 2023-12-03 フィルタ &ソート デカイ
募集人数の推移 コロナ禍においても、 過去に例を見ない程の 加速的高成長を実現。 ※1:2023年4Qと2022年4Qの比較 8 O(スキャン時間) =O(パーティションサイズ) =O(求人数/day)
リクエスト分散の限界 そうだElasticsearchにしよう
2 こうしてみた
検索をElasticsearchに移譲 Web API 検索 RDB RDB Reader Writer 複 製
登 録 ????ms 上昇トレンド Elasticsearch 検索 取 得 Index生成
ノード分散してくれるはず API Elasticsearch ノード0 ノード1 顧客A 顧客B 顧客C ノード2 顧客A
顧客B 顧客C ノード3 顧客A 顧客B 顧客C スケーリング 可能
3 速くなったよ
レイテンシが半減 400ms 200ms