概要
Amazon CloudSearchを利用して構築していた検索機能について、検索サービスをAlgoliaに移行することでコストを100%削減しました。
目的
Amazon CloudSearchを利用して検索機能を構築していましたが、本番環境とステージング環境を常時起動する構成だったため、費用がそれなりにかかっていました。
比較的大きな無料枠があるAlgoliaを使うことでコスト削減を目指しました。
実施作業
- 移行後の費用を試算
- 移行することで現状のインフラ費用がどの程度まで減らせるのかを試算しました。
- Algoliaの詳細調査
- Amazon CloudSearchでは、インデックスに登録できる文字に制限があり、不正な文字を入力してしまわないようにアプリケーション側に対応を入れていましたが、同様の対応が必要かを調査しました。
- 無料枠の範囲や、無料枠を超えた場合の費用について確認しました。
- Algoliaの契約支援
- Algoliaのアカウント作成手続きの支援を行いました。
- Algolia初期設定
- AlgoliaでのIndexの作成やAPI Keyの発行を行いました。
- アプリケーション側の改修
- Ruby on Rails製のアプリケーションで、Amazon CloudSearchに接続していた箇所をAlgoliaに接続するように変更しました。
- 定期的にインデックスを更新する系統も合わせて変更しました。
- 旧系統の削除
- 予期しない不具合に備えて一定期間旧系統を維持した上で、旧系統のリソースを完全削除しました。
コスト削減結果
Algoliaに移行することで無料枠内で完全に運用できるようになったため、100%のコスト削減に成功しました。
| 月額 | 削減率 |
|---|
| 旧アーキテクチャー | ¥19,188 | - |
| 新アーキテクチャー | 0 | 100% |
所感
Amazon CloudSearchは起動時間による課金があるため、最低スペックのインスタンスタイプでも本番環境とステージング環境を維持するだけでそれなりの月額になってしまいます。
一方でAlgoliaの料金体系は執筆時点で月間10,000回の検索まで無料であり、検索機能の利用数が多くないサービスでは非常にありがたいです。