Re: Retrieving query-time join fromQuery hits

2020-06-08 Thread Mikhail Khludnev
Hi, Stefan. I'm just thinking loud. Let's say we join FromDoc with (FromID, FromFK) to ToDoc via ToDoc.ID=FromFK. Results are ToDocs obviously. But if we count facet of FromFK over fromQuery, its' values matches to ToDoc.IDs, then we can sub-facet (or nested facet) by FromIDs that gives us full rel

Re: Retrieving query-time join fromQuery hits

2020-06-08 Thread Stefan Onofrei
Thanks for the replies. @Mike: Yes, I think the idea is to run separate queries for each of the resulting hits, as you described. I am concerned about the performance implications of going down this route, especially when dealing with large result sets. @Mikhail: Thanks for the suggestion! I actu

Re: Retrieving query-time join fromQuery hits

2020-06-03 Thread Mikhail Khludnev
Hi, Stefan. Have you considered faceting/aggregation over `from` field? On Tue, May 12, 2020 at 7:23 PM Stefan Onofrei wrote: > Hi, > > When using Lucene’s query-time join feature [1], how can the hits from the > first phase which determine / contribute to the returned results be > retrieved? >

Re: Retrieving query-time join fromQuery hits

2020-06-03 Thread Michael McCandless
Actually, I do not see how this can work efficiently with per-hit queries after the join. For each of the final joined hits, you must 1) retrieve the join key value(s) by pulling doc values iterators and advancing to the right docid, 2) run another query to "join backwards" to the hits from the le

Re: Retrieving query-time join fromQuery hits

2020-05-20 Thread Michael McCandless
I am trying first to understand the proposed solution from the previous thread. You run query #1, it returns top N hits. From those hits you ask JoinUtil to create the "joined" query #2. You run the query #2 to get the top final (joined) hits. Then, to reconstruct which docids from query #1 mat