Hello, Chris.
I suppose index time analysis can yield these terms:
"paid","ms-reply-unpaid","ms-reply-paid", and thus let you avoid these
expensive wildcard queries. Here's why it's worth to avoid them
https://www.slideshare.net/lucidworks/search-like-sql-mikhail-khludnev-epam

On Mon, Jun 29, 2020 at 6:17 PM Chris Dempsey <cdal...@gmail.com> wrote:

> Hello, all! I'm relatively new to Solr and Lucene (*using Solr 7.7.1*) but
> I'm looking into options for optimizing something like this:
>
> > fq=(tag:* -tag:*paid*) OR (tag:* -tag:*ms-reply-unpaid*) OR
> tag:*ms-reply-paid*
>
> It's probably not a surprise that we're seeing performance issues with
> something like this. My understanding is that using the wildcard on both
> ends forces a full-text index search. Something like the above can't take
> advantage of something like the ReverseWordFilter either. I believe
> constructing `n-grams` is an option (*at the expense of index size*) but is
> there anything I'm overlooking as a possible avenue to look into?
>


-- 
Sincerely yours
Mikhail Khludnev

Reply via email to