Upgrade to Pro — share decks privately, control downloads, hide ads and more …

(弊社の)OpenSearchに潜んでいた罠

 (弊社の)OpenSearchに潜んでいた罠

Keisuke Yamauchi

May 23, 2024
Tweet

More Decks by Keisuke Yamauchi

Other Decks in Programming

Transcript

  1. 2 © Cake.jp Co.Ltd. All Right Reserved.|Confidential 自己紹介 山内 啓輔

    やまうち  けいすけ 担当業務 CRM、PHPバージョンアップなど 🍰おすすめスイーツ 元祖かぼちゃプリン 約1.2kg かぼちゃ感が強く、甘さが控えめで美味し い! 付属のカラメルをかけることで甘さもアッ プ
  2. 3 © Cake.jp Co.Ltd. All Right Reserved.|Confidential 今日話す内容 1.  背景の説明

    2.  何が起きたのか 3.  どのような対応をしたのか 4.  まとめ 検索機能のしくじり
  3. 4 © Cake.jp Co.Ltd. All Right Reserved.|Confidential 今日話す内容 1.  背景の説明

    2.  何が起きたのか 3.  どのような対応をしたのか 4.  まとめ 検索機能のしくじり
  4. 5 © Cake.jp Co.Ltd. All Right Reserved.|Confidential 背景の説明 ・商品検索でOpenSearchを使用している 「OpenSearchは、大量のデータをリアルタイムでインデックス化し、迅速かつ柔軟に検索・分析できる

    オープンソースの検索エンジンです。」 by ChatGPT 4o ・何をしようとしていたのか ソートに使用する項目に変更を加えた 0〜5まで設定できる項目を、0〜500まで設定できるように変更 → 仕様変更
  5. 6 © Cake.jp Co.Ltd. All Right Reserved.|Confidential 今日話す内容 1.  背景の説明

    2.  何が起きたのか 3.  どのような対応をしたのか 4.  まとめ 検索機能のしくじり
  6. 12 © Cake.jp Co.Ltd. All Right Reserved.|Confidential 何が起きたのか エラー発見! DBの値を更新→OpenSearchのインデックス更新→他部署の方

    から「なんかおかしい」と連絡→「待ってれば大丈夫」と言う ための調査開始→エラー発見!→
  7. 13 © Cake.jp Co.Ltd. All Right Reserved.|Confidential 何が起きたのか 調査開始 DBの値を更新→OpenSearchのインデックス更新→他部署の方から「なんか

    おかしい」と連絡→「待ってれば大丈夫」と言うための調査開始→エラー発 見!→調査開始→
  8. 19 © Cake.jp Co.Ltd. All Right Reserved.|Confidential 今日話す内容 1.  背景の説明

    2.  何が起きたのか 3.  どのような対応をしたのか 4.  まとめ 検索機能のしくじり
  9. 20 © Cake.jp Co.Ltd. All Right Reserved.|Confidential どのような対応をしたのか ・DBのデータを元に戻す 100→1、200→2、、、 

    これをすることでOpenSearchのインデックスは、バッチが勝手に元に戻してくれる とりあえず、不具合解消 ・テスト環境で予行練習 OpenSearchのフィールドの型を変更する(byte→integer) DBのデータを更新する OpenSearchのインデックスの更新 ・本番で実施 OpenSearchのフィールドの型を変更する(byte→integer) DBのデータを更新する OpenSearchのインデックスの更新
  10. 21 © Cake.jp Co.Ltd. All Right Reserved.|Confidential 今日話す内容 1.  背景の説明

    2.  何が起きたのか 3.  どのような対応をしたのか 4.  まとめ 検索機能のしくじり