Elastic App Search+Google Cloud Firestoreで、検索エクスペリエンスを向上させる

blog-logo-app-search-720x420.png

Elasticは、Google Cloud Firestore向けElastic App Search拡張機能をリリースしました。Firebase拡張機能のディレクトリを数回クリックするだけで、Firestoreをベースに構築されたモバイルアプリ、およびWebベースアプリに手軽に検索機能を追加できます。

カスタマーバリューの向上

顧客がモバイルアプリやWebベースアプリに求める重要な要件の1つが、インタラクティブでリッチな検索機能です。ストアで商品を検索する場合も、サポートサイトで記事を検索する時も、公式ブログで記事を探す時も、顧客は結果が高速に表示されることを期待します。Google Cloud Firestore向けElastic App Search拡張機能には堅牢な関連性調整機能が搭載されており、特定のFirebaseアプリデータ、あるいは、顧客の好みに応じて検索結果をカスタマイズできます。さらに入力候補や誤入力対応、フィルターやファセット機能も内蔵されており、洗練された検索エクスペリエンスの提供に貢献します。また、Elastic App Searchの分析機能で検索の測定、調整を実行し、要件の変化に応じて簡単に検索を適応、スケールさせることが可能です。アプリ上での顧客の検索行動や傾向について包括的な可視性を確立でき、改善すべき領域に集中して取り組むことができます。

インストールと管理をスムーズ化

開発者の多くは、モバイルアプリやWebベースアプリの開発に伴うタスクを削減し、新製品を早期開発する、また顧客の要望にタイムリーに応える、という目的でFirebaseを使用しています。FirestoreはFirebaseとGoogle Cloudのどちらからも利用可能なNoSQLデータベースであり、アプリデータを格納、同期することができます。GoogleとElasticは、アプリにパワフルな検索エクスペリエンスを構築する、使いやすくスムーズな手法の提供を実現させるべく協働してきました。その成果が、このFirestore向けFirebase拡張機能です。

かつては、アプリに効果的な検索エクスペリエンスを追加する作業が一筋縄ではいかないことも少なくありませんでした。しかし、この拡張機能がリリースされたことで、時間のかかるインストールやソフトウェア保守作業は不要となり、開発者はビジネスの目標やアプリの機能向上に注力できるようになりました。実際の検索向けに最適化された関連性モデルや直感的に操作できるダッシュボード、高速な立ち上げといった多数のメリットに加えて、Elasticsearchのスケーラビリティとスピードを活かすことができます。

使いはじめる

Google Cloud Firestore向けElastic App Search拡張機能は、わずか数クリックで使い始めることができます。ここからは、開発者と顧客に最適なエクスペリエンスをもたらす導入の手順をご説明します。

はじめに、エンタープライズサーチのデプロイを立ち上げます。

  1. Cloudで、App Searchプロジェクトを作成します。この操作は、[Create Deployment](デプロイを作成)ページで実行できます。
 
  1. デプロイが作成されたら、Kibanaのサイドバーで[App Search]をクリックし、使用する検索エンジンを作成します。
 
  1. App Searchに関する情報をいくつか入力します。
    1. 作成した検索エンジンの名前
    2. App Searchプライベートキー
    3. エンタープライズサーチインスタンスのベースURL

プライベートキーとベースURLは、[Credentials](認証情報)ページで確認できます。このページを開くには、サイドバーで[App Search]→[Credentials]に進みます。

 

ここまでの手順で、App SearchエンジンがFirestoreからドキュメントを受信する準備が整っています。

  1. Firebase拡張機能のディレクトリでElastic App Search拡張機能を選択し、プロジェクトにインストールします。
  2. App Searchで収集した情報に加えて、いくつかのフィールドを記入する必要があります。
    1. [Collection path](収集パス)は、データを格納するコレクションの名前です。
    2. [Indexed fields](インデックス済みフィールド) — App Searchは、ユーザーが定義したフィールドのみインデックスします。通常、検索を実行し、回答を返す対象のフィールドだけを選択します。
 
  1. まだ作成していない場合はFirestoreデータベースとコレクションを作成し、コレクションIDとパスについて、入力済みの内容とかならず一致させます。

この段階で、関連性調整や分析など、包括的な検索インターフェースを構築するために必要なすべての検索ツールへのアクセスが確立されています。

コレクションにドキュメントを追加すると、App Searchにインデックスされます。

既存のドキュメントがある場合は、ドキュメントのバックフィルが必要です。バックフィルを実行するには、Firebase拡張機能ディレクトリの「Search with Elastic App Search extension」(「Elastic App Search拡張機能を使って検索する」)にある、「How this extension works」(「この拡張機能の動作」)セクションに記載された手順に従ってください。

拡張機能でApp Searchの検索エンドポイントをコールして、検索を行うことができます。詳しくは、App Searchドキュメントをご覧ください。

検索エクスペリエンスを立ち上げる必要がある場合、Reactコンポーネントを搭載したJavascriptライブラリ、Search UIが役立ちます。詳しくは、Search UI GitHubレポに公開されています。

まとめ

Elasticはユーザーが望む場所で、ユーザーが望むメソッドで、より簡単にプロダクトを実行できるよう継続的な開発を進めています。Google Cloud Firestore向けElastic App Search拡張機能は、その最新の事例です。Elastic App Search拡張機能を立ち上げる手順は以上です。この手順については、Firebase拡張機能ディレクトリや、elastic.co/jp/でもご紹介しています。