Note that any other scoring mode (COMPLETE or COMPLETE_NO_SCORES) will
mandatorily visit all hits, so there is no scope of skipping and hence
no point of using impacts.

On Thu, Jul 11, 2019 at 8:51 AM Wu,Yunfeng <wuyunfen...@baidu.com> wrote:
>
>
> @Adrien Grand <jpou...@gmail.com<mailto:jpou...@gmail.com>>. Thanks for your 
> reply.
>
> The explanation ` skip low-scoring matches` is great,  I  looked up some docs 
> and inspect some related code.
>
> I noticed the ` block-max WAND` mode only work when  ScoreMode.TOP_SCORES is 
> used,   is right?  (The basic TermQuery would generate ImpactDISI with 
> scoreMode is TOP_SCORES.)
>
> Lucene compute max score per block and then cached in `MaxScoreCache` , this 
> means we can skip low-scoring block( current one block 128 DocIds)  and in 
> competitive block  still need to score any docId as seen,   I confused with  
> `MaxScoreCache#getMaxScoreForLevel(int level)`, what the level mean? Skip 
> level?  (Somewhere invoke this method pass one Integer upTo param)
>
> Thanks Lucene Team
>
>
> 在 2019年7月10日,下午10:52,Adrien Grand 
> <jpou...@gmail.com<mailto:jpou...@gmail.com>> 写道:
>
> To clarify, the scoring process is not accelerated because we
> terminate early but because we can skip low-scoring matches (there
> might be competitive hits at the very end of the index).
>
> CompetitiveImpactAccumulator is indeed related to WAND. It helps store
> the maximum score impacts per block of documents in postings lists.
> Then this information is leveraged by block-max WAND in order to skip
> low-scoring blocks.
>
> This does indeed help avoid reading norms, but also document IDs and
> term frequencies.
>
> On Wed, Jul 10, 2019 at 4:10 PM Wu,Yunfeng 
> <wuyunfen...@baidu.com<mailto:wuyunfen...@baidu.com>> wrote:
>
> Hi,
>
> We discuss some topic from https://github.com/apache/lucene-solr/pull/595. As 
> Atri Sharma propose discuss with the java dev list.
>
>
> Impact `frequency ` and `norm ` just to accelerate the `score process`  which 
>  `terminate early`.
>
> In impact mode, `CompetitiveImpactAccumulator` will record (freq, norm) pair 
> , would stored at index level. Also I noted `CompetitiveImpactAccumulator` 
> commented with `This class accumulates the (freq, norm) pairs that may 
> produce competitive scores`,  maybe related to `WAND`?
>
>
> The norm value which produced or consumed by `Lucene80NormsFormat`.
>
> In this ` Impact way`, we can avoid read norms from `Lucene80NormsProducer` 
> that may generate the extra IO?  ( the norm value Lucene stored twice.)and 
> take full advantage of the WAND method?
>
>
>
> --
> Adrien
>

---------------------------------------------------------------------
To unsubscribe, e-mail: java-user-unsubscr...@lucene.apache.org
For additional commands, e-mail: java-user-h...@lucene.apache.org

Reply via email to