Search with Elastic App Search
Made by Elastic
Firestore コレクションのドキュメントを Elastic App Search と同期して全文検索を行えるようにします。
この拡張機能の動作
Elastic App Search Firestore 拡張機能を使用すると、Firebase アプリケーションの包括的な全文検索を行うことができます。
この拡張機能は、Cloud Firestore コレクション内のドキュメントにインデックス付けして Elastic App Search デプロイに同期します。そのために、ドキュメントを作成、更新、削除するたびに書き込みイベントでコレクション内の変更を同期する Cloud Function 関数を作成します。
Elastic App Search
Elastic App Search は、オートコンプリート機能による検索候補やファセット ナビゲーションといった一般的な検索パターンを実装するための包括的な API を提供しています。また、チームが使用状況データに基づいて検索の関連性を簡単に追跡し、調整できるようにするツールも用意されています。
App Search は Elastic Enterprise Search の一部です。これには、Firebase の外部で作成、維持される Enterprise Search のデプロイが必要です。
はじめに
- Enterprise Search のデプロイを開始します。Elastic Cloud on GCP を使用すれば簡単にプロビジョニングできます。
- デプロイを実行したら、コレクションに同期するために App Search Engine が必要になります。
- 拡張機能をインストールして Firestore コレクションが App Search に同期されると、検索を開始する準備が整います。
App Search Search API は全文検索だけでなく、ファセット、フィルタ、クリック分析、クエリの候補、関連性の調整など、高度な検索の構築に必要なすべてに使用できます。
この拡張機能には既存データを App Search にバックフィルするためのスクリプトも用意されており、コレクションにすでにドキュメントが存在する場合に利用できます。
料金
拡張機能をインストールするには、プロジェクトを Blaze(従量課金制)プランに含める必要があります。
- この拡張機能に必要な Firebase リソースに対しては、使用しない場合でも、小額(通常は約 $0.01/月)が請求されます。
- Elastic App Search は、次のような他の Firebase サービスや Google Cloud Platform サービスを使用するため、こうしたサービスの無料枠を超えた場合には関連する料金が発生します。
- Cloud Functions(Node.js 10 を超えるランタイム。FAQ を参照)
- Cloud Firestore
- Cloud Secret Manager
Elastic Enterprise Search インスタンスを Elastic Cloud でホストしている場合、そのサービスに関連する料金が課金されます。
この拡張機能をインストールする方法
Firebase CLI の使用
拡張機能のインストールと管理は、Firebase CLI でも行えます。
ステップ 1: 以下の npm コマンドを実行して、CLI をインストールするか、最新バージョンの CLI に更新します。
npm install -g firebase-tools正常に機能しない場合は、Firebase CLI リファレンスを確認するか、npm のアクセス権を変更してください。
ステップ 2: 新しい Firebase プロジェクトのディレクトリを設定するか、既存のプロジェクト ディレクトリに移動します
ステップ 3: 次を実行して、この拡張機能を拡張機能のマニフェストに追加します
firebase ext:install elastic/firestore-elastic-app-search --local --project=projectId_or_alias
ステップ 4(任意): Firebase Emulator Suite を使用して、この拡張機能をローカルでテストします
firebase emulators:start
ステップ 5: マニフェストにある拡張機能をプロジェクトにデプロイします
firebase deploy --only extensions --project=projectId_or_alias