バックエンド・API・データ · 上級
検索:データベースでは不十分なとき
一行でいうと: ランキング、タイポ、複数フィルターを持つ全文検索は独自の世界であり、すべてのシステムがそれを必要とするわけではない。
まずシンプルを試す
数千のレコードのリストには、正しいインデックスを持つクエリで完全に十分だ。関連性のランキング、オートコンプリート、または一度に数十のフィールドでのフィルタリングへの本物の必要がある場合に専用の検索エンジンを追加する。
品質を決めるもの
言語処理:トークン化、完全かつ不完全なスペルの処理、略語と同義語。ヘブライ語では、これはスマートに感じる検索と不満な検索の主な差だ。
ランキング:単語マッチングだけでなく鮮度、人気、ユーザーコンテキストも。シンプルに始め、人々が本当に検索するものに基づいて改善する。
同期
インデックスはコピーだ。イベントまたは定期スキャンで更新する方法と、ゼロから再構築する方法を定義する。再構築できないインデックスは時限爆弾だ。
さらに深く
何が検索され、何がゼロ結果を返すかを監視する。空の検索のリストは最も安い改善のロードマップ——誰にも聞かずにコンテンツギャップと同義語ギャップの両方を示す。