You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-user@lucene.apache.org by Kamuela Lau <ka...@gmail.com> on 2017/12/26 05:31:17 UTC

Is it possible to use limit and sort with BlockJoin Facet?

Hi,

I am working on applying parent/child types to search using Solr, and
wanted to inquire about two things.

1) BlockJoin Facet

Currently, there are two cores. The first core (the item core) has 16
million documents, and the second core (the product core) has 3 million
documents.
The product core is the parent, and the item core is the child.

To apply this parent/child relationship to searches, I thought that I could
use BlockJoin Facet,
but because the number of documents being searched is so large, I am
worried about the decrease in performance of Solr when using BlockJoin
Facet.

I thought it may be possible to avoid dips in performance while using
BlockJoin Facet by using limit and sort,
however when I tried to look up more information about this, I was unsure
of if that is possible.

When using BlockJoin Facet, is it not possible to use limit and sort?

2) JSON Facet API

While I was researching about the above problem, I came across JSON Facet
API.
Is it possible to do the same thing as BlockJoin Facet with JSON Facet API?
If it is possible, what is the most appropriate way to use each one?

I was unable to find an official document with more detailed information
about Solr's JSON Facet API,
so if anyone knows of a relevant resource or reference material, I would be
grateful if you could share it.

I apologize for the rather open-ended question, but an answer or even a
point in the right direction (an article
or resource) would be greatly appreciated.

Thanks,
Kamu

Re: Is it possible to use limit and sort with BlockJoin Facet?

Posted by Kamuela Lau <ka...@gmail.com>.
Thank you very much for your help.

2017/12/29 15:46 "Mikhail Khludnev" <mk...@apache.org>:

> On Fri, Dec 29, 2017 at 4:37 AM, Kamuela Lau <ka...@gmail.com>
> wrote:
>
> > Hello,
> >
> > Thank you very much for the confirmation.
> >
> > As BJQFacet doesn't support limit, I have the impression that if the
> number
> > of documents is large,
> > there would be a noticeable decrease in performance. Is this correct?
> >
>
> No. Limiting facet almost never makes it faster.
>
>
> >
> > If so, I was considering instead using JSON Facet API to create
> > parent/child relationships with facets, however I could not find an
> > official document with specific details.
> > JSON Facet API appears to be quite fast,  but all the documentation I
> could
> > find was at the link below:
> > http://yonik.com/json-facet-api/
> >
> > I would like to investigate more about how to use JSON Facet API, so any
> > information or a point in the right direction would be very helpful.
> >
> https://lucene.apache.org/solr/guide/7_2/json-facet-api.html
>
> You are welcome.
>
> >
> > Thanks,
> >
> > On Fri, Dec 29, 2017 at 6:50 AM, Mikhail Khludnev <mk...@apache.org>
> wrote:
> >
> > > Hello,
> > > Block join works in the single core only. Please check the docs.
> > > BJQFacet doesn't support limit and sort.
> > >
> > > On Thu, Dec 28, 2017 at 12:39 PM, Kamuela Lau <ka...@gmail.com>
> > > wrote:
> > >
> > > > Hi All,
> > > >
> > > > I am currently trying to figure out a way to apply a parent/child
> > > > relationship between two cores to searches.
> > > > I thought that BlockJoin Facet could be a good way to do this, but I
> > > would
> > > > like to know, is it impossible to use limit and sort with BlockJoin
> > > Facet?
> > > >
> > > > Thanks,
> > > > Kamu
> > > >
> > > >
> > > > On Tue, Dec 26, 2017 at 2:31 PM, Kamuela Lau <ka...@gmail.com>
> > > > wrote:
> > > >
> > > > > Hi,
> > > > >
> > > > > I am working on applying parent/child types to search using Solr,
> and
> > > > > wanted to inquire about two things.
> > > > >
> > > > > 1) BlockJoin Facet
> > > > >
> > > > > Currently, there are two cores. The first core (the item core) has
> 16
> > > > > million documents, and the second core (the product core) has 3
> > million
> > > > > documents.
> > > > > The product core is the parent, and the item core is the child.
> > > > >
> > > > > To apply this parent/child relationship to searches, I thought
> that I
> > > > > could use BlockJoin Facet,
> > > > > but because the number of documents being searched is so large, I
> am
> > > > > worried about the decrease in performance of Solr when using
> > BlockJoin
> > > > > Facet.
> > > > >
> > > > > I thought it may be possible to avoid dips in performance while
> using
> > > > > BlockJoin Facet by using limit and sort,
> > > > > however when I tried to look up more information about this, I was
> > > unsure
> > > > > of if that is possible.
> > > > >
> > > > > When using BlockJoin Facet, is it not possible to use limit and
> sort?
> > > > >
> > > > > 2) JSON Facet API
> > > > >
> > > > > While I was researching about the above problem, I came across JSON
> > > Facet
> > > > > API.
> > > > > Is it possible to do the same thing as BlockJoin Facet with JSON
> > Facet
> > > > API?
> > > > > If it is possible, what is the most appropriate way to use each
> one?
> > > > >
> > > > > I was unable to find an official document with more detailed
> > > information
> > > > > about Solr's JSON Facet API,
> > > > > so if anyone knows of a relevant resource or reference material, I
> > > would
> > > > > be grateful if you could share it.
> > > > >
> > > > > I apologize for the rather open-ended question, but an answer or
> > even a
> > > > > point in the right direction (an article
> > > > > or resource) would be greatly appreciated.
> > > > >
> > > > > Thanks,
> > > > > Kamu
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > >
> > >
> > >
> > >
> > > --
> > > Sincerely yours
> > > Mikhail Khludnev
> > >
> >
>
>
>
> --
> Sincerely yours
> Mikhail Khludnev
>

Re: Is it possible to use limit and sort with BlockJoin Facet?

Posted by Mikhail Khludnev <mk...@apache.org>.
On Fri, Dec 29, 2017 at 4:37 AM, Kamuela Lau <ka...@gmail.com> wrote:

> Hello,
>
> Thank you very much for the confirmation.
>
> As BJQFacet doesn't support limit, I have the impression that if the number
> of documents is large,
> there would be a noticeable decrease in performance. Is this correct?
>

No. Limiting facet almost never makes it faster.


>
> If so, I was considering instead using JSON Facet API to create
> parent/child relationships with facets, however I could not find an
> official document with specific details.
> JSON Facet API appears to be quite fast,  but all the documentation I could
> find was at the link below:
> http://yonik.com/json-facet-api/
>
> I would like to investigate more about how to use JSON Facet API, so any
> information or a point in the right direction would be very helpful.
>
https://lucene.apache.org/solr/guide/7_2/json-facet-api.html

You are welcome.

>
> Thanks,
>
> On Fri, Dec 29, 2017 at 6:50 AM, Mikhail Khludnev <mk...@apache.org> wrote:
>
> > Hello,
> > Block join works in the single core only. Please check the docs.
> > BJQFacet doesn't support limit and sort.
> >
> > On Thu, Dec 28, 2017 at 12:39 PM, Kamuela Lau <ka...@gmail.com>
> > wrote:
> >
> > > Hi All,
> > >
> > > I am currently trying to figure out a way to apply a parent/child
> > > relationship between two cores to searches.
> > > I thought that BlockJoin Facet could be a good way to do this, but I
> > would
> > > like to know, is it impossible to use limit and sort with BlockJoin
> > Facet?
> > >
> > > Thanks,
> > > Kamu
> > >
> > >
> > > On Tue, Dec 26, 2017 at 2:31 PM, Kamuela Lau <ka...@gmail.com>
> > > wrote:
> > >
> > > > Hi,
> > > >
> > > > I am working on applying parent/child types to search using Solr, and
> > > > wanted to inquire about two things.
> > > >
> > > > 1) BlockJoin Facet
> > > >
> > > > Currently, there are two cores. The first core (the item core) has 16
> > > > million documents, and the second core (the product core) has 3
> million
> > > > documents.
> > > > The product core is the parent, and the item core is the child.
> > > >
> > > > To apply this parent/child relationship to searches, I thought that I
> > > > could use BlockJoin Facet,
> > > > but because the number of documents being searched is so large, I am
> > > > worried about the decrease in performance of Solr when using
> BlockJoin
> > > > Facet.
> > > >
> > > > I thought it may be possible to avoid dips in performance while using
> > > > BlockJoin Facet by using limit and sort,
> > > > however when I tried to look up more information about this, I was
> > unsure
> > > > of if that is possible.
> > > >
> > > > When using BlockJoin Facet, is it not possible to use limit and sort?
> > > >
> > > > 2) JSON Facet API
> > > >
> > > > While I was researching about the above problem, I came across JSON
> > Facet
> > > > API.
> > > > Is it possible to do the same thing as BlockJoin Facet with JSON
> Facet
> > > API?
> > > > If it is possible, what is the most appropriate way to use each one?
> > > >
> > > > I was unable to find an official document with more detailed
> > information
> > > > about Solr's JSON Facet API,
> > > > so if anyone knows of a relevant resource or reference material, I
> > would
> > > > be grateful if you could share it.
> > > >
> > > > I apologize for the rather open-ended question, but an answer or
> even a
> > > > point in the right direction (an article
> > > > or resource) would be greatly appreciated.
> > > >
> > > > Thanks,
> > > > Kamu
> > > >
> > > >
> > > >
> > > >
> > > >
> > >
> >
> >
> >
> > --
> > Sincerely yours
> > Mikhail Khludnev
> >
>



-- 
Sincerely yours
Mikhail Khludnev

Re: Is it possible to use limit and sort with BlockJoin Facet?

Posted by Kamuela Lau <ka...@gmail.com>.
Hello,

Thank you very much for the confirmation.

As BJQFacet doesn't support limit, I have the impression that if the number
of documents is large,
there would be a noticeable decrease in performance. Is this correct?

If so, I was considering instead using JSON Facet API to create
parent/child relationships with facets, however I could not find an
official document with specific details.
JSON Facet API appears to be quite fast,  but all the documentation I could
find was at the link below:
http://yonik.com/json-facet-api/

I would like to investigate more about how to use JSON Facet API, so any
information or a point in the right direction would be very helpful.

Thanks,

On Fri, Dec 29, 2017 at 6:50 AM, Mikhail Khludnev <mk...@apache.org> wrote:

> Hello,
> Block join works in the single core only. Please check the docs.
> BJQFacet doesn't support limit and sort.
>
> On Thu, Dec 28, 2017 at 12:39 PM, Kamuela Lau <ka...@gmail.com>
> wrote:
>
> > Hi All,
> >
> > I am currently trying to figure out a way to apply a parent/child
> > relationship between two cores to searches.
> > I thought that BlockJoin Facet could be a good way to do this, but I
> would
> > like to know, is it impossible to use limit and sort with BlockJoin
> Facet?
> >
> > Thanks,
> > Kamu
> >
> >
> > On Tue, Dec 26, 2017 at 2:31 PM, Kamuela Lau <ka...@gmail.com>
> > wrote:
> >
> > > Hi,
> > >
> > > I am working on applying parent/child types to search using Solr, and
> > > wanted to inquire about two things.
> > >
> > > 1) BlockJoin Facet
> > >
> > > Currently, there are two cores. The first core (the item core) has 16
> > > million documents, and the second core (the product core) has 3 million
> > > documents.
> > > The product core is the parent, and the item core is the child.
> > >
> > > To apply this parent/child relationship to searches, I thought that I
> > > could use BlockJoin Facet,
> > > but because the number of documents being searched is so large, I am
> > > worried about the decrease in performance of Solr when using BlockJoin
> > > Facet.
> > >
> > > I thought it may be possible to avoid dips in performance while using
> > > BlockJoin Facet by using limit and sort,
> > > however when I tried to look up more information about this, I was
> unsure
> > > of if that is possible.
> > >
> > > When using BlockJoin Facet, is it not possible to use limit and sort?
> > >
> > > 2) JSON Facet API
> > >
> > > While I was researching about the above problem, I came across JSON
> Facet
> > > API.
> > > Is it possible to do the same thing as BlockJoin Facet with JSON Facet
> > API?
> > > If it is possible, what is the most appropriate way to use each one?
> > >
> > > I was unable to find an official document with more detailed
> information
> > > about Solr's JSON Facet API,
> > > so if anyone knows of a relevant resource or reference material, I
> would
> > > be grateful if you could share it.
> > >
> > > I apologize for the rather open-ended question, but an answer or even a
> > > point in the right direction (an article
> > > or resource) would be greatly appreciated.
> > >
> > > Thanks,
> > > Kamu
> > >
> > >
> > >
> > >
> > >
> >
>
>
>
> --
> Sincerely yours
> Mikhail Khludnev
>

Re: Is it possible to use limit and sort with BlockJoin Facet?

Posted by Mikhail Khludnev <mk...@apache.org>.
Hello,
Block join works in the single core only. Please check the docs.
BJQFacet doesn't support limit and sort.

On Thu, Dec 28, 2017 at 12:39 PM, Kamuela Lau <ka...@gmail.com> wrote:

> Hi All,
>
> I am currently trying to figure out a way to apply a parent/child
> relationship between two cores to searches.
> I thought that BlockJoin Facet could be a good way to do this, but I would
> like to know, is it impossible to use limit and sort with BlockJoin Facet?
>
> Thanks,
> Kamu
>
>
> On Tue, Dec 26, 2017 at 2:31 PM, Kamuela Lau <ka...@gmail.com>
> wrote:
>
> > Hi,
> >
> > I am working on applying parent/child types to search using Solr, and
> > wanted to inquire about two things.
> >
> > 1) BlockJoin Facet
> >
> > Currently, there are two cores. The first core (the item core) has 16
> > million documents, and the second core (the product core) has 3 million
> > documents.
> > The product core is the parent, and the item core is the child.
> >
> > To apply this parent/child relationship to searches, I thought that I
> > could use BlockJoin Facet,
> > but because the number of documents being searched is so large, I am
> > worried about the decrease in performance of Solr when using BlockJoin
> > Facet.
> >
> > I thought it may be possible to avoid dips in performance while using
> > BlockJoin Facet by using limit and sort,
> > however when I tried to look up more information about this, I was unsure
> > of if that is possible.
> >
> > When using BlockJoin Facet, is it not possible to use limit and sort?
> >
> > 2) JSON Facet API
> >
> > While I was researching about the above problem, I came across JSON Facet
> > API.
> > Is it possible to do the same thing as BlockJoin Facet with JSON Facet
> API?
> > If it is possible, what is the most appropriate way to use each one?
> >
> > I was unable to find an official document with more detailed information
> > about Solr's JSON Facet API,
> > so if anyone knows of a relevant resource or reference material, I would
> > be grateful if you could share it.
> >
> > I apologize for the rather open-ended question, but an answer or even a
> > point in the right direction (an article
> > or resource) would be greatly appreciated.
> >
> > Thanks,
> > Kamu
> >
> >
> >
> >
> >
>



-- 
Sincerely yours
Mikhail Khludnev

Re: Is it possible to use limit and sort with BlockJoin Facet?

Posted by Kamuela Lau <ka...@gmail.com>.
Hi All,

I am currently trying to figure out a way to apply a parent/child
relationship between two cores to searches.
I thought that BlockJoin Facet could be a good way to do this, but I would
like to know, is it impossible to use limit and sort with BlockJoin Facet?

Thanks,
Kamu


On Tue, Dec 26, 2017 at 2:31 PM, Kamuela Lau <ka...@gmail.com> wrote:

> Hi,
>
> I am working on applying parent/child types to search using Solr, and
> wanted to inquire about two things.
>
> 1) BlockJoin Facet
>
> Currently, there are two cores. The first core (the item core) has 16
> million documents, and the second core (the product core) has 3 million
> documents.
> The product core is the parent, and the item core is the child.
>
> To apply this parent/child relationship to searches, I thought that I
> could use BlockJoin Facet,
> but because the number of documents being searched is so large, I am
> worried about the decrease in performance of Solr when using BlockJoin
> Facet.
>
> I thought it may be possible to avoid dips in performance while using
> BlockJoin Facet by using limit and sort,
> however when I tried to look up more information about this, I was unsure
> of if that is possible.
>
> When using BlockJoin Facet, is it not possible to use limit and sort?
>
> 2) JSON Facet API
>
> While I was researching about the above problem, I came across JSON Facet
> API.
> Is it possible to do the same thing as BlockJoin Facet with JSON Facet API?
> If it is possible, what is the most appropriate way to use each one?
>
> I was unable to find an official document with more detailed information
> about Solr's JSON Facet API,
> so if anyone knows of a relevant resource or reference material, I would
> be grateful if you could share it.
>
> I apologize for the rather open-ended question, but an answer or even a
> point in the right direction (an article
> or resource) would be greatly appreciated.
>
> Thanks,
> Kamu
>
>
>
>
>