user357086
user357086

Reputation: 404

Grouping results and keeping facet counts consistent

Using Solr 3.3
Key Store Item Name Description Category Price
=========================================================================
1 Store Name Xbox 360 Nice game machine Electronic Games 199.99
2 Store Name Xbox 360 Nice game machine Electronic Games 199.99
3 Store Name Xbox 360 Nice game machine Electronic Games 249.99

I have data similar to above table and loaded into Solr. Item Name, description Category, Price are searchable.

Expected result

Facet Field         
 Category             
   Electronic(1)   
   Games(1) 

 **Store Name** 
 XBox 360 Nice game machine priced from 199.99 - 249.99

What will be the query parameters that I can send to Solr to receive results above, basically I wan to group it by Store, ItemName, Description and min max price

And I want to keep paging consistent with the main (StoreName). The paging should be based on the Store Name group. So if 20 stores were found. I should be able to correctly page.

Please suggest

Upvotes: 2

Views: 4029

Answers (3)

David Duffett
David Duffett

Reputation: 3145

If using Solr 4.0, the new "Grouping" (which replaces FieldCollapsing) fixes this issue when you add the parameter "group.facet=true".

So to group your fields you would have add the following parameters to your search request:

group=true         // Enables grouping
group.facet=true   // Facet counts to be number of groups instead of documents
group.field=Store  // Groups results by the field "Store"
group.ngroups=true // Tells Solr to return the number of groups found

The number of groups found is what you would show to the user and use for paging, instead of the normal total count, which would be the total number of documents in the index.

Upvotes: 8

user357086
user357086

Reputation: 404

What I did is I created another field that grouped the required fields in a single field and stored it, problem solved, so now I just group only on that field and I get the correct count.

Upvotes: 0

jturmel
jturmel

Reputation: 305

Have you looked into field collapsing? It is new in Solr 3.3.

http://wiki.apache.org/solr/FieldCollapsing

Upvotes: 0

Related Questions