SQLServerデータベースでバックアップされたASP.NETサイトがあります。Lucene.NETを使用して、データベースのインデックス作成と検索を行っています。結果ページにファセット検索ナビゲーションを追加しています(ファセットは階層的なカテゴリツリーです)。私は昨日、ファセットに正しいテクニックを使用していることを確認するように頼みました。これまでに得たのはSolrを使用するための提案だけですが、Solrは私が必要としない多くのことを行います。
Solrのファセット処理がBertWillemsによってここで説明されているものとひどく異なるかどうか、Solrのソースコードに精通している人から本当に知りたいです。基本的に、各ファセットにLuceneフィルターがあり、そこからビット配列を取得し、配列内の設定されたビットをカウントします。
そもそも私は階層的であるため、これをかなりうまく最適化できるはずだと思っていますが、このデザインが検索パフォーマンスに与える影響を大幅に過小評価しているのではないかと思います。Solrが速くなければ、それを使用しても何も得られません。