私たちは、今後のリリースに向けて、Hexmos による製品フィードバックの改善に日々継続的に取り組んでいます。
新しい機能やページが登場し、UI が変更され、バグが発見されて修正され、製品には多くの変更が加えられています。製品が成長するにつれて、製品全体のナビゲーションを改善する必要があることに気づきました。
さまざまな画面に移動するためのサイドバーとクライアント側の検索パッケージ cmdk はすでにありますが、さまざまなユーザー プロファイル、チーム、チームのパフォーマンスなどを検索する場合に問題が発生するため、より適切な統合が必要になります。フィードバック用のサードパーティ検索エンジン。
専用の検索エンジンを使用するもう 1 つの理由は、FeedZap などの他の製品がチェーン内にあり、将来的には複雑なテキスト検索操作が必要になるためです。
これを考慮して、私たちはユースケースとリソースの可用性に適応する専用の強力な検索エンジンの実装に力を入れる予定です。
オープンソースの検索エンジン、サーバーレス、サーバーベースの検索エンジンなど、利用可能な検索エンジンが多数あります。
適切なものを見つける前に、現在および将来のニーズを含む要件とインフラストラクチャの分析を行うことをお勧めします。
一部の製品では、検索可能なデータは最小限ですが、最小限の操作で適切な検索機能が必要ですが、専用サーバーを設置する余裕がありません。
他の製品の場合、データセットはより大きく、追加の複雑な検索操作が必要となり、専用の検索エンジンをロードするのに十分なリソースが必要になります。
これに基づいて、いくつかの人気のある検索エンジンをレビューしました。
PostgreSQL を使用していて、他のインデックスベースのデータベースを維持したくない場合は、PostgreSQL 全文検索 (PSFTS) が良い選択肢です。ただし、数百万のトランザクションや広範なデータ管理を扱う大規模なユースケースには推奨されません。
Bleve は、プロジェクトが Go エコシステム内にある場合に検討すべきもう 1 つのオプションです。強力なサーバーベースの検索エンジン サービスに依存できない場合にお勧めします。 Bleveのベンチマークレポートはこちらです。
Tantivy は Rust で書かれており、特に Rust ベースのプロジェクトに役立ちます。多くの肯定的なフィードバックを受けており、検討するのに良い選択肢です。
サーバーまたはクラウド インスタンスを所有しており、フル コントロールを備えた強力でスケーラブルな検索エンジンが必要な場合は、サーバー ベースのオプションが最適です。
私たちの考慮事項と要件により、サーバーベースの検索エンジンを選択することになりました。これをホストするのに十分なリソースがあり、
のサーバーレス オプションよりも優れています。広範なフィルタリングの後、このカテゴリのオプションを次の 4 つに絞り込みました。
以下にそれらの比較を示します:
Criteria | meiliSearch | Typesense | Pisa Search | Manticore |
---|---|---|---|---|
Search-as-you-type | yes | yes | No | No |
facet search | yes | yes | No | No |
multiple schema/product support | yes | yes | - | yes |
RAM usage | for 224 MB disk:~305 MB RAM prmary index location is disk | primary index location is RAM, for 100MB disk requires 300MB RAM | - | - |
CPU Usage | for 12 core machine it uses maximum 6 core github issues related to high cpu usage | for 4vCPU handle 104 concurrent search/seconds | - | - |
typo, synonyms handling | yes | yes | - | - |
PISA 検索と Manticore はいずれも、アプリケーションに必要な入力時検索機能とファセット検索機能を提供していないため、除外しました。
ここで記事全文を読み続けてください: https://journal.hexmos.com/we-chose-meilisearch-over-10-other-search-engines-despite-a-major-drawback/
以上が大きな欠点にもかかわらず、他の検索エンジンではなく Meilisearch を選択しましたの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。