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
4.3k
10
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
求人検索をElasticsearchにしたら 速度2倍速くなった!!
Kazuki Tsunemi
September 29, 2024
Featured
See All Featured
GraphQLとの向き合い方2022年版
quramy
50
15k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.5k
How to Talk to Developers About Accessibility
jct
2
400
Designing Experiences People Love
moore
143
24k
Between Models and Reality
mayunak
4
370
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.9k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
1
3.7k
Bash Introduction
62gerente
615
220k
Fireside Chat
paigeccino
42
4k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
370
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
970
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
340
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