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 Andrey Sapegin <an...@unister-gmbh.de> on 2010/08/25 12:34:46 UTC

Solr search speed very low

Dear ladies and gentlemen.

I'm newbie with Solr, I didn't find an aswer in wiki, so I'm writing here.

I'm analysing Solr performance and have 1 problem. *Search time is about 
7-10 seconds per query.*

I have a *.csv 5Gb-database with about 15 fields and 1 key field (record 
number). I uploaded it to Solr without any problem using curl. This 
database contains information about books and I'm intrested in keyword 
search using one of the fields (not a key field). I mean that if I 
search, for example, for word "Hello", I expect response with sentences 
containing "Hello":
"Hello all"
"Hello World"
"I say Hello to all"
etc.

I tested it from console using time command and curl:

/usr/bin/time -o test_results/time_solr -a curl 
"http://localhost:8983/solr/select/?q=itemname:*$query*&version=2.2&start=0&rows=10&indent=on" 
-6 2>&1 >> test_results/response_solr

So, my query is *itemname:*$query**. 'Itemname' - is the name of field. 
$query - is a bash variable containing only 1 word. All works fine.
*But unfortunately, search time is about 7-10 seconds per query.* For 
example, Sphinx spent only about 0.3 second per query.
If I use only $query, without stars (*), I receive answer pretty fast, 
but only exact matches.
And I want to see any sentence containing my $query in the response. 
Thats why I'm using stars.

NOW THE QUESTION.
Is my query syntax correct (*field:*word**) for keyword search)? Why 
response time is so big? Can I reduce search time?

Thank You in advance,
Kind Regards,

Andrey Sapegin,
Software Developer,

Unister GmbH
Barfußgässchen 11 | 04109 Leipzig

andrey.sapegin@unister-gmbh.de <ma...@unister-gmbh.de>
www.unister.de <http://www.unister.de>


Re: Solr search speed very low

Posted by Geert-Jan Brits <gb...@gmail.com>.
have a look at http://wiki.apache.org/solr/AnalyzersTokenizersTokenFilters to
see how that works.

2010/8/25 Marco Martinez <mm...@paradigmatecnologico.com>

> You should use the tokenizer solr.WhitespaceTokenizerFactory in your field
> type to get your terms indexed, once you have indexed the data, you dont
> need to use the * in your queries that is a heavy query to solr.
>
> Marco Martínez Bautista
> http://www.paradigmatecnologico.com
> Avenida de Europa, 26. Ática 5. 3ª Planta
> 28224 Pozuelo de Alarcón
> Tel.: 91 352 59 42
>
>
> 2010/8/25 Andrey Sapegin <an...@unister-gmbh.de>
>
> > Dear ladies and gentlemen.
> >
> > I'm newbie with Solr, I didn't find an aswer in wiki, so I'm writing
> here.
> >
> > I'm analysing Solr performance and have 1 problem. *Search time is about
> > 7-10 seconds per query.*
> >
> > I have a *.csv 5Gb-database with about 15 fields and 1 key field (record
> > number). I uploaded it to Solr without any problem using curl. This
> database
> > contains information about books and I'm intrested in keyword search
> using
> > one of the fields (not a key field). I mean that if I search, for
> example,
> > for word "Hello", I expect response with sentences containing "Hello":
> > "Hello all"
> > "Hello World"
> > "I say Hello to all"
> > etc.
> >
> > I tested it from console using time command and curl:
> >
> > /usr/bin/time -o test_results/time_solr -a curl "
> >
> http://localhost:8983/solr/select/?q=itemname:*$query*&version=2.2&start=0&rows=10&indent=on
> "
> > -6 2>&1 >> test_results/response_solr
> >
> > So, my query is *itemname:*$query**. 'Itemname' - is the name of field.
> > $query - is a bash variable containing only 1 word. All works fine.
> > *But unfortunately, search time is about 7-10 seconds per query.* For
> > example, Sphinx spent only about 0.3 second per query.
> > If I use only $query, without stars (*), I receive answer pretty fast,
> but
> > only exact matches.
> > And I want to see any sentence containing my $query in the response.
> Thats
> > why I'm using stars.
> >
> > NOW THE QUESTION.
> > Is my query syntax correct (*field:*word**) for keyword search)? Why
> > response time is so big? Can I reduce search time?
> >
> > Thank You in advance,
> > Kind Regards,
> >
> > Andrey Sapegin,
> > Software Developer,
> >
> > Unister GmbH
> > Barfußgässchen 11 | 04109 Leipzig
> >
> > andrey.sapegin@unister-gmbh.de <ma...@unister-gmbh.de>
> > www.unister.de <http://www.unister.de>
> >
> >
>

Re: Solr search speed very low

Posted by Marco Martinez <mm...@paradigmatecnologico.com>.
You should use the tokenizer solr.WhitespaceTokenizerFactory in your field
type to get your terms indexed, once you have indexed the data, you dont
need to use the * in your queries that is a heavy query to solr.

Marco Martínez Bautista
http://www.paradigmatecnologico.com
Avenida de Europa, 26. Ática 5. 3ª Planta
28224 Pozuelo de Alarcón
Tel.: 91 352 59 42


2010/8/25 Andrey Sapegin <an...@unister-gmbh.de>

> Dear ladies and gentlemen.
>
> I'm newbie with Solr, I didn't find an aswer in wiki, so I'm writing here.
>
> I'm analysing Solr performance and have 1 problem. *Search time is about
> 7-10 seconds per query.*
>
> I have a *.csv 5Gb-database with about 15 fields and 1 key field (record
> number). I uploaded it to Solr without any problem using curl. This database
> contains information about books and I'm intrested in keyword search using
> one of the fields (not a key field). I mean that if I search, for example,
> for word "Hello", I expect response with sentences containing "Hello":
> "Hello all"
> "Hello World"
> "I say Hello to all"
> etc.
>
> I tested it from console using time command and curl:
>
> /usr/bin/time -o test_results/time_solr -a curl "
> http://localhost:8983/solr/select/?q=itemname:*$query*&version=2.2&start=0&rows=10&indent=on"
> -6 2>&1 >> test_results/response_solr
>
> So, my query is *itemname:*$query**. 'Itemname' - is the name of field.
> $query - is a bash variable containing only 1 word. All works fine.
> *But unfortunately, search time is about 7-10 seconds per query.* For
> example, Sphinx spent only about 0.3 second per query.
> If I use only $query, without stars (*), I receive answer pretty fast, but
> only exact matches.
> And I want to see any sentence containing my $query in the response. Thats
> why I'm using stars.
>
> NOW THE QUESTION.
> Is my query syntax correct (*field:*word**) for keyword search)? Why
> response time is so big? Can I reduce search time?
>
> Thank You in advance,
> Kind Regards,
>
> Andrey Sapegin,
> Software Developer,
>
> Unister GmbH
> Barfußgässchen 11 | 04109 Leipzig
>
> andrey.sapegin@unister-gmbh.de <ma...@unister-gmbh.de>
> www.unister.de <http://www.unister.de>
>
>