Hi,

Thanks for the reply.

Here the solr log capture.:

******
hl.fragsize=100&spellcheck=true&spellcheck.q=XXXXX&group.limit=5&hl.simple.pre=<b>&hl.fl=content&spellcheck.collate=true&wt=javabin&hl=true&rows=20&version=2&fl=score,approved,domain,host,id,lang,mimetype,title,tstamp,url,category&hl.snippets=3&start=0&q=%2BXXXX+-"XXXXX"+-"XXXXX"+-"XXXXXX"+-"XXXXXX"+-"XXXXXX"+-XXXX+-"XXXXXX"+-XXX+-"XXXXX"+-XXXX+-XXXX+-"XXXXX"+-"XXXXX"+-"XXXXX"+-XXXX+-"XXXX"+-"XXXXX"+-"XXXXXX"+-"XXXXX"+-"XXXXXX"+-"XXXXXX"+-XXXX+-"XXXXX"+-"XXXXXX"+-XXXX+-"XXXXX"+-"XXXXX"+-XXXXX+-"XXXXX"+-"XXXXX"+-"XXXXX"+-"XXXXX"+-XXXXX+-"XXXXXX"+-"XXXXXX"+-XXXXXX+-XXXXX+-"XXXXX"+"XXXXX"+"XXXXX"+"XXXXXX"++&group.field=host&hl.simple.post=</b>&group=true&qt=search&fq=mrank:[0+TO+100]&fq=word_count:[70+TO+*]
******

XXXX is the words. All phrases "xxxxx"  has two words inside.

The timing from the DebugQuery:

<lst name="timing">
<double name="time">8654.0</double>
<lst name="prepare">
<double name="time">16.0</double>
<lst name="org.apache.solr.handler.component.QueryComponent">
<double name="time">16.0</double>
</lst>
<lst name="org.apache.solr.handler.component.FacetComponent">
<double name="time">0.0</double>
</lst>
<lst name="org.apache.solr.handler.component.MoreLikeThisComponent">
<double name="time">0.0</double>
</lst>
<lst name="org.apache.solr.handler.component.HighlightComponent">
<double name="time">0.0</double>
</lst>
<lst name="org.apache.solr.handler.component.StatsComponent">
<double name="time">0.0</double>
</lst>
<lst name="org.apache.solr.handler.component.SpellCheckComponent">
<double name="time">0.0</double>
</lst>
<lst name="org.apache.solr.handler.component.DebugComponent">
<double name="time">0.0</double>
</lst>
</lst>
<lst name="process">
<double name="time">8638.0</double>
<lst name="org.apache.solr.handler.component.QueryComponent">
<double name="time">4473.0</double>
</lst>
<lst name="org.apache.solr.handler.component.FacetComponent">
<double name="time">0.0</double>
</lst>
<lst name="org.apache.solr.handler.component.MoreLikeThisComponent">
<double name="time">0.0</double>
</lst>
<lst name="org.apache.solr.handler.component.HighlightComponent">
<double name="time">42.0</double>
</lst>
<lst name="org.apache.solr.handler.component.StatsComponent">
<double name="time">0.0</double>
</lst>
<lst name="org.apache.solr.handler.component.SpellCheckComponent">
<double name="time">1.0</double>
</lst>
<lst name="org.apache.solr.handler.component.DebugComponent">
<double name="time">4122.0</double>
</lst>


The funny thing is if I removed the ShingleFilter from the below "sh_text"
field and index normally  the query time is half of the current shingle one
!. Shouldn't  be shingled index better for such heavy 2 word phrases search
? I am confused.

On the other hand One of the on the shelf big FAT companies search engine
doing the same query same machine 0.7 / 0.8 secs without cache . I am
confident we can do better in solr but couldnt find the way at the moment.

thanks for helping..




On Sat, Aug 27, 2011 at 2:46 AM, Erik Hatcher <erik.hatc...@gmail.com>wrote:

>
> On Aug 26, 2011, at 17:49 , Lord Khan Han wrote:
> > We are indexing news  document from the various sites. Currently we have
> > 200K docs indexed. Total index size is 36 gig.  There is also attachement
> to
> > the news (pdf -docs etc) So document size could be high (ie 10mb).
> >
> > We are using some complex queries which includes around 30 - 40 terms per
> > query. %70 of this terms is two word phrases. We are using
> > with conjunction +  and -  to pinpoint exact result.
> > There is also grouping, dismax and boosting , Termvector HL  .
>
> You're using a lot of componentry there, and have complex queries.  We need
> more details.
>
> Turn on debugQuery=true... what do the timings say for each component?
>
> > Our problem is query times. Currently its around 6-7 secs. I know our
> query
> > is little bit heavy but we want to improve query performance. I believe
> we
> > can make it sub second but no succes at the moment.
>
> Please provide an example query or two (perhaps a full line logged from
> Solr itself), and then let's see what debugQuery says about your query being
> parsed.
>
> > We tried to use shingle 2 word token it decreases the query performcen !!
> We
> > assumed it will help the speed up phrases search..
>
> Again, we'd need to see a parsed query to understand this deeper.
>
> Lots of synonym expansion?  A parsed query will tell us.
>
>
>
> > (using solr latest trunk and HW is pretty good, 32 core  with 32 gig ram)
> >
> > Here the field def:
> >
> > <fieldType name="sh_text" class="solr.TextField"
> positionIncrementGap="100"
> > autoGeneratePhraseQueries="true">
> >      <analyzer type="index">
> >        <tokenizer class="solr.WhitespaceTokenizerFactory"/>
> >        <filter class="solr.StopFilterFactory" ignoreCase="true"
> > words="stopwords.txt" enablePositionIncrements="true" />
> >        <filter class="solr.WordDelimiterFilterFactory"
> > generateWordParts="1" generateNumberParts="1" catenateWords="1"
> > catenateNumbers="1" catenateAll="0" splitOnCaseChange="1"/>
> >        <!--<filter class="solr.LowerCaseFilterFactory"/>-->
> >        <filter class="solr.KeywordMarkerFilterFactory"
> > protected="protwords.txt"/>
> >        <filter class="solr.ShingleFilterFactory" maxShingleSize="2"
> > outputUnigrams="true"/>
> >      </analyzer>
> >      <analyzer type="query">
> >        <tokenizer class="solr.WhitespaceTokenizerFactory"/>
> >        <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt"
> > ignoreCase="true" expand="true"/>
> >        <filter class="solr.StopFilterFactory" ignoreCase="true"
> > words="stopwords.txt" enablePositionIncrements="true" />
> >        <filter class="solr.WordDelimiterFilterFactory"
> > generateWordParts="1" generateNumberParts="1" catenateWords="0"
> > catenateNumbers="0" catenateAll="0" splitOnCaseChange="1"/>
> >        <!--<filter class="solr.LowerCaseFilterFactory"/>-->
> >        <filter class="solr.KeywordMarkerFilterFactory"
> > protected="protwords.txt"/>
> >        <filter class="solr.ShingleFilterFactory" maxShingleSize="2"
> > outputUnigrams="true"/>
> >      </analyzer>
> >    </fieldType>
> >
> > and
> >
> > <field name="content" type="sh_text" stored="true" indexed="true"
> > termVectors="true" termPositions="true" termOffsets="true"/>
>
>

Reply via email to