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
新卒で始めるパフォーマンス改善【OpenSearchで苦労した話】
Search
kandalog
February 24, 2025
Programming
0
95
新卒で始めるパフォーマンス改善【OpenSearchで苦労した話】
kandalog
February 24, 2025
Tweet
Share
More Decks by kandalog
See All by kandalog
must can willで振り返る新卒1年目とこれから
kandalog
0
110
失敗から学ぶチームコミュニケーション
kandalog
0
91
Other Decks in Programming
See All in Programming
re:Invent 2025 のイケてるサービスを紹介する
maroon1st
0
170
.NET Conf 2025 の興味のあるセッ ションを復習した / dotnet conf 2025 quick recap for backend engineer
tomohisa
0
110
TestingOsaka6_Ozono
o3
0
280
rack-attack gemによるリクエスト制限の失敗と学び
pndcat
0
220
[AtCoder Conference 2025] LLMを使った業務AHCの上⼿な解き⽅
terryu16
6
1.1k
疑似コードによるプロンプト記述、どのくらい正確に実行される?
kokuyouwind
0
280
公共交通オープンデータ × モバイルUX 複雑な運行情報を 『直感』に変換する技術
tinykitten
PRO
0
200
2年のAppleウォレットパス開発の振り返り
muno92
PRO
0
180
AI前提で考えるiOSアプリのモダナイズ設計
yuukiw00w
0
210
AI Agent Tool のためのバックエンドアーキテクチャを考える #encraft
izumin5210
6
1.7k
責任感のあるCloudWatchアラームを設計しよう
akihisaikeda
3
110
dchart: charts from deck markup
ajstarks
3
960
Featured
See All Featured
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
43
Typedesign – Prime Four
hannesfritz
42
2.9k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Side Projects
sachag
455
43k
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
0
120
Designing for humans not robots
tammielis
254
26k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.2k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
610
Odyssey Design
rkendrick25
PRO
0
470
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.4k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
1
38
Transcript
©2024 Metaps Holdings, Inc. 新卒で始めるパフォーマンス改善 【OpenSearchで苦労した話】 株式会社メタップスホールディングス 新卒エンジニア 神⽥ 崇彰
©2024 Metaps Holdings, Inc. ⾃⼰紹介 神⽥ 崇彰 株式会社メタップスホールディングス 新卒エンジニア Takaaki
Kanda @tee_develop 2020年からWebアプリケーション開発を独学で学習。イタンジ株式会社に てPythonエンジニアとして経験を積んだ後、Simple株式会社にてフロン トエンドのリプレスを技術選定から担当し、開発に従事。 ⼤学卒業後は株式会社メタップスホールディングス、プラットフォーム戦 略部にて、srestの開発に従事 2
©2024 Metaps Holdings, Inc. srestはAWSファンデーショナルテクニカルレビュー (FTR)認証を取得しています
©2024 Metaps Holdings, Inc. 無料トライアル実施中!詳しくはお声がけください。
©2024 Metaps Holdings, Inc. OpenSearch
©2024 Metaps Holdings, Inc. OpenSearch 検索 集約 ログ分析 サイト検索 アプリのモニタリング
⾼速な検索エンジン 爆速
©2024 Metaps Holdings, Inc. OpenSearch srestでの使い⽅ AWSのイベントデータ コスト情報
©2024 Metaps Holdings, Inc. OpenSearch 検索条件 集計条件 作業⼿順 ▶ indexを作成
▶ データを投⼊ ▶ 検索条件の記述 ▶ 集計条件の記述
©2024 Metaps Holdings, Inc. OpenSearch 付属のDashBoardが便利
©2024 Metaps Holdings, Inc. 課題(パフォーマンス改善が必要だった理由) 30秒もユーザーを待たせたくない レスポンスが遅すぎてタイムアウトが発⽣する AWSの料⾦を可視化する機能 1年分のAWS Service毎のコスト情報を詳しく取得
AWS Lambdaで利⽤しているAPI GateWayの制限に引っかかる(30秒)
©2024 Metaps Holdings, Inc. そもそもなんで遅かったのか データの集計処理を全てRubyでやっていた ▶ 万単位データ集計をRubyで頑張ってた ▶ Rubyはそんなに速くない
▶ nested loopを含む関数を複数通す必要がある
©2024 Metaps Holdings, Inc. 私のレベル感
©2024 Metaps Holdings, Inc. 私のレベル感 検索エンジン?
©2024 Metaps Holdings, Inc. ブラウザの話?
©2024 Metaps Holdings, Inc. ⼀旦遊んでみる OpenSearchを好きに動かしてみる ▶ Docker環境の⽤意 ▶ 公式ドキュメントを読む
▶ Qiitaの記事読みながら好きにさわってみる ▶ ⽣成系AIを先⽣に壁打ち 初めての技術領域で右も左もわからない状態なので、まずは感覚を掴む
©2024 Metaps Holdings, Inc. 苦労した話
©2024 Metaps Holdings, Inc. 苦労した話 1 投⼊すべきデータの整形 ▶ タスクを進めるにあたって投⼊すべきデータを整形する必要があった ▶
何万⾏のデータに圧倒される ▶ ./jqコマンドが便利
©2024 Metaps Holdings, Inc. 苦労した話 1 投⼊すべきデータの整形 ▶ 不要なJSONを取り除く ▶
JSONの改⾏を取り除く ▶ {“index”: {}}{データ}の順で1⾏ずつ繰り返す
©2024 Metaps Holdings, Inc. 苦労した話 2 index構造が定まらない ▶ indexは既に作られていて検索と集計を担当してた ▶
途中でこの構造だと無理だと悟る ▶ 何度が構造を変更しながら試⾏錯誤が続く
©2024 Metaps Holdings, Inc. 苦労した話 3 仕様の漏れ ▶ 仕様の考慮漏れにより、index構造の再定義とクエリの再考が必要になった ▶
振り出しへ
©2024 Metaps Holdings, Inc. 苦労した話 3 仕様の漏れ ▶ 仕様の考慮漏れにより、index構造の再定義とクエリの再考が必要になった ▶
振り出しへ index構造を単純化
©2024 Metaps Holdings, Inc. 結果どうなった?
©2024 Metaps Holdings, Inc. 結果 タイムアウト 5.23秒 タイムアウト問題の解決 Web検証ツール 10秒以上
0.1秒 処理部分
©2024 Metaps Holdings, Inc. 結果 集計を⽬的とした関数:10 集計処理の関数: 0 ⼤量の集計処理の削除 移⾏後
©2024 Metaps Holdings, Inc. 感想
©2024 Metaps Holdings, Inc. 感想 ⼤変だったけど良い学びになった ▶ クリティカルなバグを含む重要なタスクを⼀任されてうれしい ▶ 仕様はちゃんと把握しよう
▶ 最後はやり切るぞという気合いが重要 ▶ OpenSearchの⾼速ドキュメント検索は多くの企業で需要ありそう
©2024 Metaps Holdings, Inc. 初LT登壇でした ありがとうございました