Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
2024/09/25 常見 一樹 求人検索をElasticsearchにしたら 速度2倍速くなった!! @ksilverwall
Slide 2
Slide 2 text
目次 ● 自己紹介・サービス紹介 ● 何が問題だったか? ● こうしてみた ● 速くなったよ
Slide 3
Slide 3 text
自己紹介:常見(ツネミ)です ● 開発11年目(36歳) ● バックエンドエンジニア ○ Reactも書きがち ● リプレイス案件多し タイミーの求人検索周りを開発中
Slide 4
Slide 4 text
4
Slide 5
Slide 5 text
1 何が問題だったか?
Slide 6
Slide 6 text
RDBが頑張っていた Web API 検索 RDB RDB RDB RDB RDB RDB RDB Reader Writer 900万人 検索 うおおおお!! 複 製 登 録 29.7万拠点 400-600ms 上昇トレンド RDB クラスタ
Slide 7
Slide 7 text
ストレージ 数で解決できなくなってきた CPU 〜30% 余裕だわ partition: 2023-12-01 IO まだ自分 できるっす API RDB partition: 2023-12-02 partition: 2023-12-03 フィルタ &ソート デカイ
Slide 8
Slide 8 text
募集人数の推移 コロナ禍においても、 過去に例を見ない程の 加速的高成長を実現。 ※1:2023年4Qと2022年4Qの比較 8 O(スキャン時間) =O(パーティションサイズ) =O(求人数/day)
Slide 9
Slide 9 text
リクエスト分散の限界 そうだElasticsearchにしよう
Slide 10
Slide 10 text
2 こうしてみた
Slide 11
Slide 11 text
検索をElasticsearchに移譲 Web API 検索 RDB RDB Reader Writer 複 製 登 録 ????ms 上昇トレンド Elasticsearch 検索 取 得 Index生成
Slide 12
Slide 12 text
ノード分散してくれるはず API Elasticsearch ノード0 ノード1 顧客A 顧客B 顧客C ノード2 顧客A 顧客B 顧客C ノード3 顧客A 顧客B 顧客C スケーリング 可能
Slide 13
Slide 13 text
3 速くなったよ
Slide 14
Slide 14 text
レイテンシが半減 400ms 200ms