0

pricegrabber.com/google product search のようなものを構築する予定です。

巨大なテーブルで利用可能なデータが既にあるとします。これをすべてSolrに提出する予定です。これにより、検索の問題が解決されます。しかし、私は比較を行う方法がわかりません。DBでSolrから返された製品に対して、(UPC / SKUで)クエリごとにグループ化できます。しかし、私はそれをしたくありません。Solr自体からの検索とともに、製品比較データが返されるようにしたいと考えています。

私のスキーマはどうあるべきだと思いますか? このユースケースはすべて Solr/Sphinx で解決できると思いますか?

4

1 に答える 1

1

それを適切に処理するには、「結果のグループ化」または「フィールドの折りたたみ」のサポートが必要です。

Solrでは、この機能はどのリリース バージョンでも使用できず、まだ開発中です。リリースされていないバージョンの Solr を使用する場合は、こちらから詳細を入手してください。

Sphinxは結果のグループ化をサポートしており、私はずっと前に同様のプロジェクトで使用していました。詳細については、こちらをご覧ください。

別の戦略として、データを前処理して、UPC/SKU ごとに 1 つのレコードのみがインデックスに挿入されるようにすることもできます。各レコードには、同じ UPC/SKU を持つすべてのアイテムの ID を含む個別のフィールドを含めることができます。

Solr から返された製品に対してデータベース GROUP BY を実行するだけでは不十分な場合があります。たとえば、製品 A と B の UPC が同じで、特定のクエリが A に一致するが B には一致しない場合、結果セットに A と B の両方が含まれることはありません。

于 2011-03-12T18:06:05.513 に答える