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
Become a Pro
speakerdeck
PRO
29
5.4k
The Cult of Friendly URLs
andyhume
79
6.5k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
700
Automating Front-end Workflow
addyosmani
1370
200k
4 Signs Your Business is Dying
shpigford
184
22k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Optimising Largest Contentful Paint
csswizardry
37
3.3k
Why Our Code Smells
bkeepers
PRO
336
57k
Building Adaptive Systems
keathley
43
2.7k
Done Done
chrislema
184
16k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
Typedesign – Prime Four
hannesfritz
42
2.7k
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