Details
-
Improvement
-
Status: Open
-
Major
-
Resolution: Unresolved
-
None
-
None
-
None
Description
Currently when hashing is used during faceting (FacetFieldProcessorByHashDV), all SlotAcc instances act as hash tables. They are directly accessed by hash, and when the hash table needs to be resized, all SlotAcc instances are rehashed. This is good when a single statistic is being used, but wasteful when multiple statistics are being calculated per bucket.
An alternative would be for the hash table to hash to a persistent slot (starting at 0 and incremented for each new bucket encountered). All of the SlotAcc instances would then be dense and be indexed by the persistent slot. This would also allow more efficient implementations of some metrics using hashes themselves (made easier since slots no longer change and can thus be part of a hash).
Attachments
Issue Links
- is related to
-
SOLR-10122 lower memory usage for facet sorted on unique(other_field)
- Open