faceting for further MLT/grouping

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

faceting for further MLT/grouping

Brian Whitman
We have a site with users that post things (say it's a review of a  
book. each review gets a solr doc.)

On the user info page we show a 'top 10' faceting result on the query:

q=username:bwhitman&facet=true&facet.field=review&facet.limit=10

which comes back with

<int name="pynchon">9</int>
<int name="bartheleme">4</int>
..

Which is great as a simple "auto-tagger." But we would love to take  
these results and compare it to others to make a "related people"  
query. I could take the top 10 terms, perform a query like

q=pynchon^9%20barthelme^4&facet=true&facet.field=username&facet.limit=10

and get the 2nd-order facets back, but I imagine this is a common  
task that could be optimized in-solr. Sort of a:

q=username:bwhitman&facet=true&facet.field=review&facet.limit=10&facet.m
lt=true&facet.mlt.field=username

Does anyone else use this sort of functionality? Am I going too far  
out of my way?

-Brian


Reply | Threaded
Open this post in threaded view
|

Re: faceting for further MLT/grouping

Chris Hostetter-3

I'm not sure if i'm understanding your question ... i was going to mention
SOLR-69 as a possible solution for your goal, but i see you've commented
on that issue so you are already aware of it ... doesn't that code do what
you are describing (by using the facet fields as the mlt.fl ?)


I have to confess, i havne't really followed the MLT stuff very closely,
so forgive me if i'm missing a big disconnect betwen what it does and what
you describe...

: Which is great as a simple "auto-tagger." But we would love to take
: these results and compare it to others to make a "related people"
: query. I could take the top 10 terms, perform a query like
:
: q=pynchon^9%20barthelme^4&facet=true&facet.field=username&facet.limit=10
:
: and get the 2nd-order facets back, but I imagine this is a common



-Hoss

Reply | Threaded
Open this post in threaded view
|

Re: faceting for further MLT/grouping

Brian Whitman

On Mar 14, 2007, at 5:48 PM, Chris Hostetter wrote:

>
> I'm not sure if i'm understanding your question ... i was going to  
> mention
> SOLR-69 as a possible solution for your goal, but i see you've  
> commented
> on that issue so you are already aware of it ... doesn't that code  
> do what
> you are describing (by using the facet fields as the mlt.fl ?)

The problem with SOLR-69 is that faceting does not operate on MLT  
results. If this was fixed we could do

q=username:bwhitman&mlt=true&mlt.field=reviewText&facet=true&facet.field
=username

..but as of now the faceting only operates on the main query, not the  
MLT subsection.









Reply | Threaded
Open this post in threaded view
|

Re: faceting for further MLT/grouping

Chris Hostetter-3

: The problem with SOLR-69 is that faceting does not operate on MLT
: results. If this was fixed we could do

ah... i see, you're tlaking about getting facet counts based on the MLT
results, not the main results ... i think somoene (Yonik?) suggested
extracting MLT into a seperate request handler ... if something like that
was done, then it would be pretty easy to do.

in general it would probably be pretty easy to write a custom request
handler that does this .. the SimpleFacets API can operate on any DocSet,
so mixing and matching the pieces should be feasible.




-Hoss