Thank you all for your fast replies,
Changing photo_id:* to boolean has_photo field via transformer, when
importing data, *fixed my problems*; reducing query times to *30~ ms*.
I'll try to optimize furthermore by your advices on filter query usage and
int=>tint (will search it first) transform.


On Thu, Sep 15, 2011 at 1:31 AM, Chris Hostetter
<hossman_luc...@fucit.org>wrote:

>
> : &q=photo_id:* AND gender:true AND country:MALAWI AND online:false
>
> photo_id:* does not mean what you probably think it means.  you most
> likely want photo_id:[* TO *] given your current schema, but i would
> recommend adding a new "has_photo" boolean field and using that instead.
>
> thta alone should explain a big part of what those queries would be slow.
>
> you didn't describe how your "q" param varies in your test queries (just
> your fq).  I'm assuming "gender" and "online" can vary, and that you
> sometimes don't use the "photo_id" clauses, and that the "country" clause
> can vary, but that these clauses are always all mandatory.
>
> in which case i would suggest using "fq" for all of them individually, and
> leaving your "q" param as "*:*" (unless you sometimes sort on the actual
> solr score, in which case leave it as whatever part of hte queyr you
> actually want to contribute to hte score)
>
> Lastly: I don't remember off the top of my head how "int" and "tinit" are
> defined in the example solrconfig files, but you should consider your
> usage of them carefully -- particularly with the precisionStep and which
> fields you do range queries on.
>
>
>
> -Hoss
>

Reply via email to