That's right, but understand that my understanding of SOLR is
limited to what I know about Lucene and reading this list. So
anyone who *really* understands the guts of SOLR should jump
right in here <G>.

Erick

On Jan 25, 2008 12:11 PM, Ravish Bhagdev <[EMAIL PROTECTED]> wrote:

> I see, thanks a lot for this, makes things clear now.
>
> So just to make sure I understand this bit, by "injecting synonyms at
> query time" you mean basically adding terms implicitly to keywords
> behind the scenes before passing it to solr?  Or is there are more
> conventional method or interface that is being suggested?
>
> Thanks for all the help!
>
> Ravish
>
> On Jan 25, 2008 3:59 PM, Erick Erickson <[EMAIL PROTECTED]> wrote:
> > To me, it's really a question of where the work should be done given
> your
> > problem space. Injecting synonyms at index time allows the queries to be
> > simpler/faster. Injecting the synonyms at query time gets complex but is
> > more flexible.
> >
> > As always, it's a time/space tradeoff. If you're willing to pay the
> space
> > penalty for increased query speed, inject at index time. Otherwise
> > you can inject at query time.
> >
> > And the query-time injection performance hit may not be trivial.
> Consider,
> > for instance, span queries. Do you want to pay the price at query time
> for,
> > say a BooleanQuery that is composed of 5 SpanQueries where each
> > term in each SpanQuery consists of several OR clauses because of
> > synonym injection? Perhaps you do and perhaps you don't. It all depends
> > upon what your data looks like and what your performance criteria are.
> >
> > And you can do other tricks. Consider rather than indexing all the
> terms,
> > only index the canonical term. That is, consider "hit" and the synonyms
> > "strike", "popular", "punch". you could index "hit" for any of the 4
> terms,
> > then do the same substitution for your query. Which would make your
> > index smaller *and* your queries faster.
> >
> > But you're right. Injecting synonyms at index time really requires a
> fixed
> > synonym list that doesn't vary by user. So if you want synonym
> > lists on a per-user basis, you're probably going to have to inject
> synonyms
> > at query time.
> >
> > Best
> > Erick
> >
> >
> > On Jan 25, 2008 9:46 AM, Ravish Bhagdev <[EMAIL PROTECTED]>
> wrote:
> >
> > > Yes, I'm fairly new as well.
> > >
> > > So do you mean adding words to the query effectively doing an "or"
> > > between synonymous terms?  That sounds simple way of doing it, if this
> > > works, what makes indexing with synonyms useful?
> > >
> > > Ravish
> > >
> > > On Jan 25, 2008 2:42 PM, Jon Lehto <[EMAIL PROTECTED]> wrote:
> > > > Hi Ravish,
> > > >
> > > > You may want to think about the synonym dictionary as being a tool
> on
> > > the side, rather than each indexed document having a copy of the
> synonyms.
> > > At indexing time, one might normalize synonyms to a single value, and
> at
> > > query time do the same to get the match.
> > > >
> > > > Alternately, use the synonym dictionary at run-time to expand a
> > > > user's query terms, like a thesaurus.
> > > >
> > > > That said, I'm new to the tool, and not clear on how synonyms are
> > > implemented.
> > > >
> > > > Jon
> > > > =====================
> > > > From: Ravish Bhagdev <[EMAIL PROTECTED]>
> > > > Date: 2008/01/25 Fri AM 08:24:33 CST
> > > > To: solr-user@lucene.apache.org
> > > > Subject: Is it possible to add synonyms run time?
> > > >
> > > >
> > > > As I understood from available documentation, synonyms need to be
> > > > defined before starting the indexing process.  Is it possible to add
> > > > synonyms at run time such that all index fields of all documents get
> > > > updated?  Does it work for newly added documents atleast?
> > > >
> > > > Also, how to make each user of application define his own set of
> > > > synonyms that others should be oblivious to (others get normal
> results
> > > > without synon considered)
> > > >
> > > > Thanks,
> > > > Ravish
> > > >
> > > >
> > >
> >
>

Reply via email to