Solr field facet call slow on IntPointField but faster for TrieIntField

190 Views Asked by At

Why does IntPointField has poor performance compared to TrieIntField?

I have setup solr 8.7.0 in standalone mode, added core 1 and core 2 and indexed 100M documents each and ran did field facet like below:

facet.field=employee_ids&facet.field=employee_serial_numbers

The multivalued field definitions in core 1 are like below:

<field name="employee_ids" type="pints" multiValued="true" indexed="true" required="false" stored="true" docValues="true"/>
<field name="employee_serial_numbers" type="pints" multiValued="true" indexed="true" required="false" stored="true" docValues="true"/>

<fieldType name="pint" class="solr.IntPointField" docValues="true"/>
  • default facet.method is fcs
  • Qtime remains the same (~6000 ms) whether I do field facet, twice or n times for the above 2 fields

The multivalued field definitions in core 2 are like below:

<field name="employee_ids" type="tint" multiValued="true" indexed="true" required="false" stored="true"/>
<field name="employee_serial_numbers" type="tint" multiValued="true" indexed="true" required="false" stored="true"/>

<fieldType name="tint" class="solr.TrieIntField"/>
  • default facet.method is fc
  • Qtime decreases after the first field facet call on the above 2 fields.
1

There are 1 best solutions below

1
DineshNaik On

TrieIntField is deprecated and should be avoided.

Which faceting style are you trying?

old faceting is quite slower as compared to new json facet api : Please refer https://yonik.com/json-facet-api/

and

https://solr.apache.org/guide/8_7/json-facet-api.html