Thanks.

On Wed, Sep 25, 2013 at 1:46 PM, Ing. Jorge Luis Betancourt Gonzalez <
jlbetanco...@uci.cu> wrote:

> I've used a separated core for storing suggestions, based on what I see
> in: https://github.com/cominvent/autocomplete. You can check the blog
> post on
> www.cominvent.com/2012/01/25/super-flexible-autocomplete-with-solr/.
> This is really flexible, on the downside it does not use the suggester
> component su this are like regular queries against a separated core.
>
> Greetings!
>
> ----- Mensaje original -----
> De: "Erick Erickson" <erickerick...@gmail.com>
> Para: solr-user@lucene.apache.org
> Enviados: MiƩrcoles, 25 de Septiembre 2013 6:16:51
> Asunto: Re: Implementing Solr Suggester for Autocomplete (multiple columns)
>
> I've sometimes seen this handled by clever tokenizing. For "Bill Rogers",
> index (untokenized) something like
> Bill|Bill Rogers
> Rogers|Bill Rogers
>
> Your suggester then is a simple term lookup (see TermsComponent)
> which is quite fast. What you _don't_ get is autocorrect. But if you
> use terms.prefix, you can also control whether it's whole word match
> or not. To get whole-word in the above, you would set your prefix to
> "Rogers|" for instance. Or you may want to leave off the "|" to see
> more of an autocomplete-type response.
>
> Then, of course, when you display this you need to only display what's
> after the "|" (or whatever delimiter you use).
>
> One other note, this will be case sensitive, so you probably want to
> do casing yourself, index things like
> rogers|Bill Rogers
> and lowercase what you send in to terms component.
>
> Best,
> Erick
>
>
>
> On Tue, Sep 24, 2013 at 2:01 PM, JMill <apprentice...@googlemail.com>
> wrote:
> > Hi,
> >
> > I'm using Solr's Suggester function to implement an autocomplete feature.
> > I have it setup to check against the "username" and "name" fields.
>  Problem
> > is when running  a query against the name, the second term, after
> > whitespace (surename) returns 0 results.  Works if if query is a partial
> > name starting from the begining e.g. Given the name "Bill Rogers", a
> query
> > for Rogers will return 0 results whereas a query for "Bill" will return
> > positive (Bill Rogers). As for the username, it's not working at.
> >
> > I am after the following behaviour.
> >
> > Match any partial words in the fields "username" or "name" and return the
> > results.  If there is match in the field "name" the return the whole name
> > e.g. given the queries "Rogers" or "Bill"" return "Bill Rogers (not the
> > single word that was a match)".
> >
> > schema.xml extract
> > ..
> > <field name="username" type="text_general" indexed="true" stored="true"
> />
> >  <field name="name" type="text_general" indexed="true" stored="true"/>
> > <field name="autocomplete" type="textSpell" indexed="true" stored="false"
> > multiValued="true" omitNorms="true" omitTermFreqAndPositions="false" />
> > ...
> > <copyField source="username" dest="autocomplete"/>
> > <copyField source="name" dest="autocomplete"/>
> > ...
> >
> > <fieldType class="solr.TextField" name="textSpell"
> > positionIncrementGap="100">
> >  <analyzer>
> >    <tokenizer class="solr.StandardTokenizerFactory"/>
> >    <filter class="solr.StandardFilterFactory"/>
> >    <filter class="solr.LowerCaseFilterFactory"/>
> >  </analyzer>
> > </fieldType>
> >
> >
> > solrconfig.xml
> >
> > ....
> > <lst name="spellchecker">
> >    <str name="name">suggest</str>
> >    <str name="classname">org.apache.solr.spelling.suggest.Suggester</str>
> >    <str
> > name="lookupImpl">org.apache.solr.spelling.suggest.tst.TSTLookup</str>
> >    <str name="field">autocomplete</str>  <!-- the indexed field to derive
> > suggestions from -->
> >    <float name="threshold">0.005</float>
> >    <str name="buildOnCommit">true</str>
> >    <!--
> >       <str name="sourceLocation">american-english</str>
> >       -->
> > </lst>
> >
> > </searchComponent>
> >
> > ..
> > <requestHandler class="org.apache.solr.handler.component.SearchHandler"
> > name="/suggest">
> >   <lst name="defaults">
> >     <str name="spellcheck">true</str>
> >     <str name="spellcheck.dictionary">suggest</str>
> >     <str name="spellcheck.onlyMorePopular">true</str>
> >     <str name="spellcheck.count">5</str>
> >     <str name="spellcheck.collate">true</str>
> >   </lst>
> >   <arr name="components">
> >      <str>spellcheck</str>
> >   </arr>
> > </requestHandler>
>
> ________________________________________________________________________________________________
> III Escuela Internacional de Invierno en la UCI del 17 al 28 de febrero
> del 2014. Ver www.uci.cu
>
> ________________________________________________________________________________________________
> III Escuela Internacional de Invierno en la UCI del 17 al 28 de febrero
> del 2014. Ver www.uci.cu
>

Reply via email to