[ 
https://issues.apache.org/jira/browse/LUCENE-4602?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Shai Erera updated LUCENE-4602:
-------------------------------

    Attachment: LUCENE-4602.patch

Patch cuts FacetFields over to DocValues. Changes included:

* FacetFields adds a {{StraightBytesDocValuesFields}} instead of a payload.

* Added DocValuesCategoryListIterator which by default pulls a DocValues Source 
(i.e. not DirectSource) but can be configured otherwise. Perhaps 
CategoryListParams.createCategoryListIterator should take a boolean to pass 
down to DVCLI ...

* Replaced CategoryListParams.Term with String field. So now the CLP only 
defines the field it should go under (the term was a mistake done long time 
ago, made to allow control of the term under which the ordinals payload is 
written).

* All tests pass. I still didn't add CHANGES, will do so later.

I must say that with all the recent refactorings done to the facets package, 
the DV cutover took me literally 5 minutes!

Mike, I think this is ready for luceneutil :).
                
> Use DocValues to store per-doc facet ord
> ----------------------------------------
>
>                 Key: LUCENE-4602
>                 URL: https://issues.apache.org/jira/browse/LUCENE-4602
>             Project: Lucene - Core
>          Issue Type: Improvement
>          Components: modules/facet
>            Reporter: Michael McCandless
>         Attachments: LUCENE-4602.patch, LUCENE-4602.patch, LUCENE-4602.patch
>
>
> Spinoff from LUCENE-4600
> DocValues can be used to hold the byte[] encoding all facet ords for
> the document, instead of payloads.  I made a hacked up approximation
> of in-RAM DV (see CachedCountingFacetsCollector in the patch) and the
> gains were somewhat surprisingly large:
> {noformat}
>                     Task    QPS base      StdDev    QPS comp      StdDev      
>           Pct diff
>                 HighTerm        0.53      (0.9%)        1.00      (2.5%)   
> 87.3% (  83% -   91%)
>                  LowTerm        7.59      (0.6%)       26.75     (12.9%)  
> 252.6% ( 237% -  267%)
>                  MedTerm        3.35      (0.7%)       12.71      (9.0%)  
> 279.8% ( 268% -  291%)
> {noformat}
> I didn't think payloads were THAT slow; I think it must be the advance
> implementation?
> We need to separately test on-disk DV to make sure it's at least
> on-par with payloads (but hopefully faster) and if so ... we should
> cutover facets to using DV.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to