Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
10Xの検索を10xしたい at 第49回Elasticsearch勉強会
Search
Ryusuke Chiba
August 31, 2022
Technology
590
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
10Xの検索を10xしたい at 第49回Elasticsearch勉強会
Ryusuke Chiba
August 31, 2022
More Decks by Ryusuke Chiba
See All by Ryusuke Chiba
10Xの検索を10xしたい at 【10X/M3/CADDi】検索エンジン運用勉強会
metalunk
4
1.5k
プログラマのための線形代数 おまけ
metalunk
1
190
メルカリにおける AI 活用事例 PyCon JP 2018
metalunk
8
7.1k
メルカリの機械学習基盤 これまでとこれから ML Ops Study #2
metalunk
0
950
機械学習によるマーケット健全化 Mercari ML Ops Night #1
metalunk
3
5.6k
Other Decks in Technology
See All in Technology
Draft AIエージェントの トークン消費を最小化する 8つの原則
kinopeee
5
1.7k
導入から定着へ ~コーディングエージェントを日常業務に組み込む実践知~
yukisakai1225
0
230
顧客価値を追いかけたら、プライシングにたどり着いた
sansantech
PRO
2
1k
FinOps Agentが生んだ技術負債:コスト自動調査の落とし穴と解消までの道のり
oasis1994liveforever
3
300
バフェットコード開発チームの心得(v1.1)
shoe116
0
110
2026-10-24 JAWS JAWS-UG 茨城 #18 IAM Policy Autopilotってなにさ。terraform planからIAM Policyつくれるの? / What's IAM Policy Autopilot
masasuzu
0
170
Codex を使った障害対応机上演習の実際
orgachem
PRO
0
360
Autonomous AI Lakehouse - Live AI Hubから始めるセキュアなAIデータ活用 -
oracle4engineer
PRO
2
150
ビジネス部門からPOを迎えての半年間の進歩と課題
zozotech
PRO
0
150
Microsoft のサポート ライフサイクルを理解する
murachiakira
PRO
0
210
「作れる」と「リリースできる」の間にあったもの── PdMを外して見えた、PdMがやるべき仕事/Buildable ≠ Shippable: What Removing the PM Taught Me About the PM’s Job
yappli_developers
0
280
契約で守るコンパウンドプロダクトのデザインシステム
yug1224
1
1.4k
Featured
See All Featured
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
Become a Pro
speakerdeck
PRO
31
6.3k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
510
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
550
Building AI with AI
inesmontani
PRO
1
1.3k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.2k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
420
Agile that works and the tools we love
rasmusluckow
331
22k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
530
RailsConf 2023
tenderlove
30
1.6k
A Soul's Torment
seathinner
8
3.8k
Transcript
©10X, Inc. All Rights Reserved. 第49回 Elaticsearch 勉強会 10Xの検索を10xしたい @metalunk
1
©10X, Inc. All Rights Reserved. 2 10X が提供する Stailer の説明
チェーンストアECの垂直立ち上げプラットフォーム
©10X, Inc. All Rights Reserved. チェーンストアECの垂直立ち上げプラットフォーム Stailer 3 スーパーマーケットやドラッグストアの E-commerce
アプリ制作からオペレーションまで(詳しくは次のページ) インテグレータでなくプラットフォーム https://yamotty.tokyo/post/20220605 Smart retailer
©10X, Inc. All Rights Reserved. チェーンストアECの垂直立ち上げプラットフォーム Stailer 4
©10X, Inc. All Rights Reserved. 5 半年間で実施した検索改善
©10X, Inc. All Rights Reserved. 半年間で実施した検索改善 2022年1月からの半年間で取り組んだこと • Slow
query の解決(検索速度 10x) • Hardware profile の変更(コスト 80% 削減) • 検索キーワードサジェスト • カテゴリフィルタ • bigram • シノニム辞書を Search time に展開 • イベントログからシノニムルールの生成 今日は青字の部分だけ説明します 6 詳しくは https://product.10x.co.jp/entry/serch-10x https://product.10x.co.jp/entry/search-10x-ii
©10X, Inc. All Rights Reserved. 7 コスト 80% 削減 Hardware
profile の変更
©10X, Inc. All Rights Reserved. Hardware profile の変更(コスト 80% 削減)
背景 • Slow query を解消し,CPU usage 68% 減少,Query time 87% 減少し,リソースに余裕ができた 課題 • 負荷解消によって必要なリソースのバランスが変わり,適 切な Hardware profile を利用できていない(単に scale in しただけでは解決しない) 8
©10X, Inc. All Rights Reserved. Elastic Cloud の Hardware profile
Elastic Cloud の Hardware profile を変えることで Storage, RAM, vCPU のバランスを変えることが できる 現在利用できる profile は • Storage optimized • Storage optimized (dense) • General purpose • CPU optimized 9 Hardware profile の変更(コスト 80% 削減)
©10X, Inc. All Rights Reserved. 引っ越し計画 10 Hardware profile の変更(コスト
80% 削減) もともと I/O Optimized(RAM と Storage が大盛り)を 使っていたが,Stailer は CPU heavy なアプリケーショ ンであるため,CPU Optimized が適していることがわ かった 現状と同等の vCPU をもつ profile に変更すると 85万 円/月の節約ができそう! この節約はサービスが大きくなってスケールアウトす るときにさらに効く しかし,Hardware profile は Deployment 作成時にしか 設定できないため,あたらしく Deployment を作成し, 旧 Deployment から引っ越しをする必要がある 無停止,データロスなしで
©10X, Inc. All Rights Reserved. 引っ越しの方針 1. Elasticsearch の更新をすべて PubSub
経由にする 2. 新しい Deployment を CPU optimized で作る 3. Double write 開始 4. 旧 Deployment の全 index を新 Deployment に reindex 5. 参照を切り替える 6. Double write 停止 7. 旧 Deployment を停止,削除する 11 Hardware profile の変更(コスト 80% 削減)
©10X, Inc. All Rights Reserved. Step0 12 Hardware profile の変更(コスト
80% 削減) 1. Elasticsearch の更新をすべて PubSub 経 由にする 2. 新しい Deployment を CPU optimized で作 る 3. Double write 開始 4. 旧 Deployment の全 index を新 Deployment に reindex 5. 参照を切り替える 6. Double write 停止 7. 旧 Deployment を停止,削除する
©10X, Inc. All Rights Reserved. Step1 13 Hardware profile の変更(コスト
80% 削減) 1. Elasticsearch の更新をすべて PubSub 経 由にする 2. 新しい Deployment を CPU optimized で作 る 3. Double write 開始 4. 旧 Deployment の全 index を新 Deployment に reindex 5. 参照を切り替える 6. Double write 停止 7. 旧 Deployment を停止,削除する
©10X, Inc. All Rights Reserved. Step2, 3, 4 14 Hardware
profile の変更(コスト 80% 削減) 1. Elasticsearch の更新をすべて PubSub 経 由にする 2. 新しい Deployment を CPU optimized で作 る 3. Double write 開始 4. 旧 Deployment の全 index を新 Deployment に reindex 5. 参照を切り替える 6. Double write 停止 7. 旧 Deployment を停止,削除する
©10X, Inc. All Rights Reserved. Step5 15 Hardware profile の変更(コスト
80% 削減) 1. Elasticsearch の更新をすべて PubSub 経 由にする 2. 新しい Deployment を CPU optimized で作 る 3. Double write 開始 4. 旧 Deployment の全 index を新 Deployment に reindex 5. 参照を切り替える 6. Double write 停止 7. 旧 Deployment を停止,削除する
©10X, Inc. All Rights Reserved. Step6 16 Hardware profile の変更(コスト
80% 削減) 1. Elasticsearch の更新をすべて PubSub 経 由にする 2. 新しい Deployment を CPU optimized で作 る 3. Double write 開始 4. 旧 Deployment の全 index を新 Deployment に reindex 5. 参照を切り替える 6. Double write 停止 7. 旧 Deployment を停止,削除する
©10X, Inc. All Rights Reserved. Step7 17 Hardware profile の変更(コスト
80% 削減) 1. Elasticsearch の更新をすべて PubSub 経 由にする 2. 新しい Deployment を CPU optimized で作 る 3. Double write 開始 4. 旧 Deployment の全 index を新 Deployment に reindex 5. 参照を切り替える 6. Double write 停止 7. 旧 Deployment を停止,削除する
©10X, Inc. All Rights Reserved. Restore from snapshot 機能の不具合 Elastic
Cloud が提供している Restore from snapshot 機能で新 Deployment を作ろうとしたが動か ず... サポートに問い合わせるも特別な不具合とのことで,修正には時間がかかりそう(その後個別対応し てもらい,いまは動くはず) そういうわけで,代わりに Reindex from remote 機能を使ったツールを作ることにした ツールが行うことは,新しい Deployment に index を作り,mapping 等の設定をし,稼働中の Deployment から Reindex を実行すること 18 Hardware profile の変更(コスト 80% 削減)
©10X, Inc. All Rights Reserved. 成果 • コスト 80% 削減
• 将来スケールアウトするときにも省コスト • Elasticsearch の更新をすべて Pub/Sub 経由にできた ◦ 引っ越し可能 ◦ 耐障害性向上 19 Hardware profile の変更(コスト 80% 削減)
©10X, Inc. All Rights Reserved. 20 2022年1月からの半年間で取り組んだこと • Slow
query の解決(検索速度 10x) • Hardware profile の変更(コスト 80% 削減) • 検索キーワードサジェスト • カテゴリフィルタ • bigram • シノニム辞書を Search time に展開 • イベントログからシノニムルールの生成 今日説明できなかった改善事例はブログをご覧ください https://product.10x.co.jp/entry/serch-10x https://product.10x.co.jp/entry/search-10x-ii
©10X, Inc. All Rights Reserved. 21 いま取り組んでいる推薦
©10X, Inc. All Rights Reserved. いま取り組んでいる推薦 Stailer における商品の Discovery のうち,お客さまが能動的に探す検索はまあまあいい状態になっ
てきたから,次はお客さまに受動的に商品を見つけてもらいたい 22 • 初期リリースでは MLOps 部分をきっちり作り,モデルは簡単なもの(ε-greedy のバンディッ ト)を出す • MLOps を @metalunk, Data science を Growth チームの2人で担当 • 出したらまたどこかで発表します 推薦やるぞ!
©10X, Inc. All Rights Reserved. 23 10X のすゝめ
©10X, Inc. All Rights Reserved. 10X のいいところ10個あげます 1. メンバーが賢い.自律的 2.
心理的安全性が高い(Brilliant jerk がいない) 3. 経営陣が信頼できる 4. SO に夢が持てる 5. スタートアップなのにまあまあ高い給与水準 6. Stailer を作ることで世界をよくできる 7. 事業が成長している 8. 日本のどこに住んでもいい 9. フルリモート OK 10. 家族第一 24
©10X, Inc. All Rights Reserved. カジュアル面談しませんか? この通り,検索はまだ基本的なことしかやっておらず,やることはたくさんあります 検索エンジニアが入社したら活躍できる状態を作りました
どんな人に来てほしい? • Stailer の検索を 10x できる人 • 検索,推薦合わせて Discovery という大きい Issue をまるっとやるのも大歓迎 Job description はこちら: https://open.talentio.com/r/1/c/10x/pages/59532 まずはカジュアル面談お願いします!: https://meety.net/matches/VKrfjFMdjWsC 25