Specify the join query parser for the main query. See:
https://cwiki.apache.org/confluence/display/solr/Other+Parsers#OtherParsers-JoinQueryParser


-- Jack Krupansky

On Wed, Jun 3, 2015 at 3:32 PM, Robust Links <pey...@robustlinks.com> wrote:

> Hi Erick
>
> they are on the same JVM. I had already tried the core join strategy but
> that doesnt solve the faceting problem... i.e if i have 2 cores, core0 and
> core1, and I run this query on core0
>
> /select?&q=<QUERY>fq={!join from=id1 to=id2
> fromIndex=core1}&facet=true&facet.field=tag
>
> has 2 problems
> 1) i need to specify the docIDs with the fq (so back to the same
> fq={!terms} problem), and
> 2) faceting doesnt work
>
>
> Flattening the data is not possible due to security reasons.
>
> Am I using join correctly?
>
> thank you Erick
>
> Peyman
>
> On Wed, Jun 3, 2015 at 2:12 PM, Erick Erickson <erickerick...@gmail.com>
> wrote:
>
> > Are these indexes on different machines? Because if they're in the
> > same JVM, you might be able to use cross-core joins. Be aware, though,
> > that joining on high-cardinality fields (which, by definition, docID
> > probably is) is where pseudo joins perform worst.
> >
> > Have you considered flattening the data and including whatever
> > information you have in your "from" index in your main index? Because
> > < 100ms response is probably not going to be tough if you have to have
> > two indexes/cores.
> >
> > Best,
> > Erick
> >
> > On Wed, Jun 3, 2015 at 10:58 AM, Joel Bernstein <joels...@gmail.com>
> > wrote:
> > > You may have to do something custom to meet your needs.
> > >
> > > 10,000 DocID's is not huge but you're latency requirement are pretty
> low.
> > >
> > > Are your DocID's by any chance integers? This can make custom
> PostFilters
> > > run much faster.
> > >
> > > You should also be aware of the Streaming API in Solr 5.1 which will
> give
> > > you fast Map/Reduce approaches (
> > >
> >
> http://joelsolr.blogspot.com/2015/04/the-streaming-api-solrjio-basics.html
> > ).
> > >
> > > Joel Bernstein
> > > http://joelsolr.blogspot.com/
> > >
> > > On Wed, Jun 3, 2015 at 1:46 PM, Robust Links <pey...@robustlinks.com>
> > wrote:
> > >
> > >> Hey Joel
> > >>
> > >> see below
> > >>
> > >> On Wed, Jun 3, 2015 at 1:43 PM, Joel Bernstein <joels...@gmail.com>
> > wrote:
> > >>
> > >> > A few questions for you:
> > >> >
> > >> > How large can the list of filtering ID's be?
> > >> >
> > >>
> > >> >> 10k
> > >>
> > >>
> > >> >
> > >> > What's your expectation on latency?
> > >> >
> > >>
> > >> 10> latency <100
> > >>
> > >>
> > >> >
> > >> > What version of Solr are you using?
> > >> >
> > >>
> > >> 5.0.0
> > >>
> > >>
> > >> >
> > >> > SolrCloud or not?
> > >> >
> > >>
> > >> not
> > >>
> > >>
> > >>
> > >> >
> > >> > Joel Bernstein
> > >> > http://joelsolr.blogspot.com/
> > >> >
> > >> > On Wed, Jun 3, 2015 at 1:23 PM, Robust Links <
> pey...@robustlinks.com>
> > >> > wrote:
> > >> >
> > >> > > Hi
> > >> > >
> > >> > > I have a set of document IDs from one core and i want to query
> > another
> > >> > core
> > >> > > using the ids retrieved from the first core...the constraint is
> that
> > >> the
> > >> > > size of doc ID set can be very large. I want to:
> > >> > >
> > >> > > 1) retrieve these docs from the 2nd index
> > >> > > 2) facet on the results
> > >> > >
> > >> > > I can think of 3 solutions:
> > >> > >
> > >> > > 1) boolean query
> > >> > > 2) terms fq
> > >> > > 3) use a DB rather than Solr
> > >> > >
> > >> > > I am trying to keep latencies down so prefer to not use (3). The
> > >> problem
> > >> > > with (1) is maxBooleanclauses is hardwired and I am not sure when
> I
> > >> will
> > >> > > hit the exception. Option (2) seems to also hit limits.. so if I
> do
> > >> > >
> > >> > > select?fl=*&q=*:*&facet=true&facet.field=title&fq={!terms
> > >> > > f=id}<LONG_LIST_OF_IDS>
> > >> > >
> > >> > > solr just goes blank. I have tried adding cost=200 to try to run
> the
> > >> > query
> > >> > > first fq={!terms f=id cost=200} but still no good. Paging on doc
> IDs
> > >> > could
> > >> > > be a solution but the problem then is that the faceting results
> > >> > correspond
> > >> > > to the paged IDs and not the global set.
> > >> > >
> > >> > > My filter cache spec is as follows
> > >> > >
> > >> > >   <filterCache class="solr.FastLRUCache"
> > >> > >                  size="1000000"
> > >> > >                  initialSize="1000000"
> > >> > >                  autowarmCount="100000"/>
> > >> > >
> > >> > >
> > >> > > What would be the best way for me to solve this problem?
> > >> > >
> > >> > > thank you
> > >> > >
> > >> >
> > >>
> >
>

Reply via email to