lucene-solr-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael Sokolov <msoko...@safaribooksonline.com>
Subject Re: SOLR Join Query, Use highest weight.
Date Tue, 02 Dec 2014 19:11:42 GMT
Have you considered using grouping?  If I understand your requirements, 
I think it does what you want.

https://cwiki.apache.org/confluence/display/solr/Result+Grouping

On 12/02/2014 12:59 PM, Darin Amos wrote:
> Thanks!
>
> I will take a look at this. I do have an additional question, since after a bunch of
digging I believe I am going to run into another dead end.
>
> I want to execute the join (or rollup) query, but I want the facets to represent the
facets of all the child documents, not the resulting product documents. From what I gather,
this is not possible.
>
> My thought process of what I want to get goes as follows:
>
> 1) Execute my search for children
> 2) Get the facets for all the children
> 3) Rollup the child dataset into its parent dataset, keeping the score.
>
> Is this easily possible with the tools available today?
>
> Thanks!
>
> Darin
>
>
>
>> On Dec 1, 2014, at 11:01 PM, Mikhail Khludnev <mkhludnev@griddynamics.com>
wrote:
>>
>> Hello,
>>
>> AFAIK {!join} doesn't supply any meaningful scores.
>> I can suggest https://issues.apache.org/jira/browse/SOLR-6234 <https://issues.apache.org/jira/browse/SOLR-6234>
>>
>> On Tue, Dec 2, 2014 at 4:35 AM, Darin Amos <darincs@gmail.com <mailto:darincs@gmail.com>>
wrote:
>>
>>> Hello,
>>>
>>> I had sent an email a few days ago talking about implementing a custom
>>> rollup query component. I have changed directions a little bit because I
>>> have learned about the JoinQuery.
>>>
>>> I have an index that contains a combination of parent and child documents.
>>> The parent child relationship is always one-to-many.
>>>
>>> Here is a very simple sample query:
>>>
>>>
>>> http://localhost:8983/solr/testcore/select?q=*:*&fq={!join%20from=parent%20to=id}type:child
>>> <
>>> http://localhost:8983/solr/testcore/select?q=*:*&fq=%7B!join%20from=parent%20to=id%7Dtype:child
<http://localhost:8983/solr/testcore/select?q=*:*&fq=%7B!join%20from=parent%20to=id%7Dtype:child>
>>> When I have a more specific query that actually give some meaningful
>>> weights: <  q=name:(*Shirt*)%20OR%20name:(*Small*)  >, it appears the
>>> rollup query assigns a weight to the parent of the last document
>>> encountered. For example, if a parents 2 children has weights of 1.4 and
>>> 0.4 without the join query, the parent has a weight of 0.4 after the join
>>> query.
>>>
>>> Is there a way that I can extend or modify the join query so it would
>>> assign the highest child weight to the parent document?
>>>
>>> Thanks!!
>>>
>>> Darin
>>
>>
>>
>> -- 
>> Sincerely yours
>> Mikhail Khludnev
>> Principal Engineer,
>> Grid Dynamics
>>
>> <http://www.griddynamics.com <http://www.griddynamics.com/>>
>> <mkhludnev@griddynamics.com <mailto:mkhludnev@griddynamics.com>>
>


Mime
View raw message