On 03/08/2013 00:50, Mark wrote:
We have a set number of known terms we want to match against.

In Index:
"term one"
"term two"
"term three"

I know how to match all terms of a user query against the index but we would 
like to know how/if we can match a user's query against all the terms in the 
index?

Search Queries:
"my search term" => 0 matches
"my term search one" => 1 match  ("term one")
"some prefix term two" => 1 match ("term two")
"one two three" => 0 matches

I can only explain this is almost a reverse search???

I came across the following from ElasticSearch 
(http://www.elasticsearch.org/guide/reference/api/percolate/) and it sounds 
like this may accomplish the above but haven't tested. I was wondering if Solr 
had something similar or an alternative way of accomplishing this?

Thanks


Hi Mark,

We've built something that implements this kind of reverse search for our clients in the media monitoring sector - we're working on releasing the core of this as open source very soon, hopefully in a month or two. It's based on Lucene.

Just for reference it's able to apply tens of thousands of stored queries to a document per second (our clients often have very large and complex Boolean strings representing their clients' interests and may monitor hundreds of thousands of news stories every day). It also records the positions of every match. We suspect it's a lot faster and more flexible than Elasticsearch's Percolate feature.

Cheers

Charlie

--
Charlie Hull
Flax - Open Source Enterprise Search

tel/fax: +44 (0)8700 118334
mobile:  +44 (0)7767 825828
web: www.flax.co.uk

Reply via email to