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
Shinpei.Kondo
May 12, 2023
Programming
730
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
OpenSearchを使って ごちクルの検索画面を爆速にする
for スタフェス Meetup #3 - PJの技術的取り組み公開
https://stafes.connpass.com/event/279671/
Shinpei.Kondo
May 12, 2023
More Decks by Shinpei.Kondo
See All by Shinpei.Kondo
8年運用しているCakePHPのECサイトをLaravelにリプレイスした一年後の話
konpay
1
530
Other Decks in Programming
See All in Programming
Lean は証明の正しさを確認するためだけのツールって思ってませんか?
inoueasei
1
110
吝嗇家のためのAI活用 / AI development for miser - ChatGPT + Issue Driven Development
tooppoo
0
200
初めてのKubernetes 本番運用でハマった話
oku053
0
130
Laravel Boostに学ぶ、AIにPHPを書かせる技術 〜OSSの実装から蒸留するエージェント制御の王道〜
kentaroutakeda
3
530
AI駆動開発を妨げる技術的負債の解消アプローチ / ai-refactoring-approach
minodriven
17
9.3k
AIが無かった頃の素敵な出会いの話
codmoninc
1
220
JAWS-UG横浜 #102 AWSサ終供養LT会 成仏できない AWS サービスたち 〜本日、三体供養します〜
maroon1st
0
240
act1-costs.pdf
sumedhbala
0
250
SLOをサービス品質の共通言語にするために 取り組んできたこと
wakana0222
0
550
えっ!!コードを読まずに開発を!?
hananouchi
0
240
Go言語とトイモデルで学ぶTransformerの気持ち / fukuokago23-transformer
monochromegane
0
140
광주소프트웨어마이스터고등학교 DevFest 특강 - 바이브 코딩 시대에서 주니어 개발자로 살아남는 방법
utilforever
1
150
Featured
See All Featured
Art, The Web, and Tiny UX
lynnandtonic
304
22k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
270
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.9k
Crafting Experiences
bethany
1
230
Rails Girls Zürich Keynote
gr2m
96
14k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
220
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.7k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
The Limits of Empathy - UXLibs8
cassininazir
1
540
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
410
We Are The Robots
honzajavorek
0
280
Designing for humans not robots
tammielis
254
26k
Transcript
OpenSearchを使って ごちクルの検索画面を爆速にする
• はじめに • 自己紹介 • ごちクルの過去と現在 • OpenSearchを使った検索速度改善 • おわりに
お品書き
ここ一年でごちクルのチームが大きく改善しました。 その結果、様々な課題を解決できるようになったので、解決した課題の一つとして OpenSearch導入で検索の速度を改善したことについてお話します。 はじめに
自己紹介 • 近藤 心平 (HN.こんぺい) • ごちクルPJ TechPM • 入社2017年
• 社内基盤 → ごちクルPJ • PHPer • 最近0.9才の息子にメガネ壊されました
ごちクルの過去と現在
ごちクルとは • お弁当 / ケータリングを中心とした食のECモール • リーズナブルなお弁当から有名店まで幅広く対応 • 会議弁当やイベント、学校行事などに利用されています •
商品数: 13,000以上 • 2012年から運用
ごちクルの歴史 • 2012年にCakePHPでスタート • 2019年にLaravelへリプレイス ◦ CakePHP 2 -> Laravel
5 ◦ jQuery1.10 -> Vue.js 2.6 • データベースは変更なし
ごちクルの歴史 • リプレイスした後も課題が残っていた • 全体的にレスポンス速度が遅い ◦ 特に検索画面の速度が遅い • ユースケースに沿っていないUI •
非同期通信が多くいろんな所でローディングが多い • など
ごちクルチーム エ ン ジ ニ ア こんどう backend PdM PMM
ドメインマスター PdM 冷静さNo1 PdM SEO担当 PdM 営業 カスタマー サクセス 商品開発 デザ イナー エンジニアに理解力の高いデザイナー 関連部署 これまでのごちクル エンジニアは僕一人 ... 若手のエース backend
採用が進みチームが拡大!! 修正 現在のごちクル 元CTO PL / backend 猫好き backend /
frontend 大阪在住 backend / frontend 若手のエース backend UX Enhancement Growth & Engagement エ ン ジ ニ ア こんどう backend 育休復帰即活躍 frontend SEO担当業務委託 backend / frontend 業務委託 backend / frontend PdM PMM データ分析強い PMM ドメインマスター PdM 冷静さNo1 PdM SEO担当 PdM 福岡在住 PMM 営業 カスタマー サクセス 商品開発 デザ イナー エンジニアに理解力の高いデザイナー 関連部署
直近の改善例 OpenSearchを使った検索速度改善
ごちクルの歴史 • リプレイスした後も課題が残っていた • 全体的にレスポンス速度が遅い ◦ 特に検索画面の速度が遅い • ユースケースに沿っていないUI •
非同期通信が多く画面上でローディングが多い • など この改善について深掘りします。
ごちクルの検索とは • お弁当の検索 ◦ 社内会議で◦月◦日にn個お弁当が必要 ◦ どんなお弁当があるのか調査 (購入するかは不明) • 全文検索が遅い
◦ 2012年からデータ構造が変わっていない ▪ アプリケーションが改善しても、 DBの改善は行われておらず結果として、 indexが効かない、 大量のJOINが発生するなどで商品検索が遅い ▪ 頑張ってRDBで実装していた
OpenSearchの導入による課題解決 テキスト検索が早い 複雑なSQL joinが多く index効かない n+1の発生 負荷 レスポンス速度↓ スケールが楽 構造変化に柔軟に対応できる
それ以外にもメリットが!
検証段階ですが、検索速度が10倍早くなった! OpenSearch導入の効果 • 期待される効果 ◦ 検索を利用しやすくなることで、離脱が減りエンゲージメントが向上する ◦ RDBに検索クエリが流れなくなることで、 DB負荷削減やデータ構造のリファクタリングなどが行いや すくなる
• 今後期待できる効果 ◦ 位置情報検索と言った新たな検索を追加できるようになる
おわりに • ex-CTO等強いエンジニアのJOINで、これまで着手できなかった課題の改善が進み 始めました。 • 過去の課題の対応だけでなく、UXをチームを作り新しい取り組みにも挑戦できるよう になりました。 • 過去の課題の解消や新しいことへの挑戦に興味がある方、ごちクルだと超楽しいで す!!
ありがとうございました!!