2011-03-12 12 views
0

私はpricegrabber.com/google製品検索のようなものを構築する予定です。Solrを使用したコスト比較

すでに巨大なテーブルで利用可能なデータがあるとします。私はこれをすべてSolrに提出する予定です。これは検索の問題を解決します。しかし、私はどのように比較を行うか分からない。 DB上でSolrが返す製品のクエリ(UPC/SKU上)でグループを実行できます。しかし、私はそれをしたくないです。どういうわけか、Solr自身からの検索と一緒に商品比較データを返してもらいたいです。

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

答えて

1

適切に処理するには、「結果グループ化」または「フィールドコラプシング」サポートが必要です。

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

スフィンクスは、結果のグループ化をサポートしています。私はこれまで同様のプロジェクトでそれを使用していました。詳細はhereです。

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

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

関連する問題