Details
-
Improvement
-
Status: Open
-
Major
-
Resolution: Unresolved
-
None
-
None
-
None
Description
Lucene has a SortedNumericDocValues (i.e. multi-valued numeric DocValues), ever since late in the 4x versions. Solr's TrieField.createFields unfortunately still uses SortedSetDocValues for the multi-valued case. SortedNumericDocValues is more efficient than SortedSetDocValues; for example there is no 'ordinal' mapping for sorting/faceting needed.
Unfortunately, updating Solr here would be quite a bit of work, since there are backwards-compatibility concerns, and faceting code would need a new code path implementation just for this. Sorting is relatively simple thanks to SortedNumericSortField, and today multi-valued sorting isn't directly possible.