【AWS】CloudSearchで全文検索 環境構築編

はじめに

お世話になります、hosochinです
最近個人開発のサービスに検索機能を実装したく、AWSに全文検索的なのあんのかなーって思って調べたらCloudSearchってのがありました
CloudSearch
今回はこのCloudSearchを使ってみたって話になります
30日間無料枠も用意されてたので👍

ちなみにAWSには検索サービスとしてCloudSearchの他にOpenSearch Service(Elasticsearch Service)ってのも用意されています
違いについてはこちらの記事がわかりやすかったです
Elasticsearch Service と CloudSearch どっちを選べば良いの?
この記事によると

  • CloudSearch → シンプルで始めやすい、カスタマイズ性は劣る
  • OpenSearch Service → 高いカスタマイズ性、その分学習コスト高め?

って感じぽいです
迷わずCloudSearchを選択していくスタンス

前提

  • AWSアカウント作成済み
  • ローカルPCにaws cliインストール済み
    • credentialとかもろもろ設定済み

環境構築

CloudSearchのマネージメントコンソールから「Create a New Domain」をクリックします

ダイアログが表示されると思います
「Search Domain Name」を入力して「Continue」をクリックします
今回はsearch-testとします

次にインデックスのconfigのインポート方法を選択します
今回は手動で入力したいと思うんで一番下の「Manual configuration」を選択して「Continue」をクリックします

次にインデックスの設定を入力していきます
今回は

  • first_name : text : Japanese
  • last_name : text : Japanese
  • pr : text : Japanese

の3行を「Add Index Filed」から追加して「Continue」をクリックします

次にアクセスポリシーの設定を行います
今回は一番上の「Search and Suggester service: Allow all. Document Service: Account owner only.」をクリックします
ただこれだけだとPrincipal.AWSのところがアスタリスクになっていて誰でもアクセスできちゃうんで、自分のアカウントに書き換えておきます
XXXXX部分はIDです
問題なければ「Continue」をクリックします

最後に確認画面になるんで確認後に「Confirm」をクリックして環境構築は終了です
10分くらいかかるで〜ってメッセージが表示されますが自分は20分くらいかかってた気がします
ビールでも飲んで気長に待ちましょう🍺
ダッシュボードに戻るとstatusが「LOADING」と表示されてるはずです
こいつが「ACTIVE」になったらドメイン作成完了となります

ACTIVEになったのでダッシュボードを確認してみます

いい感じですね👍
では次にドキュメントデータをインポートしていきます

技術AWS,CloudSearch

Posted by hosochin