Я хочу, чтобы результаты поиска в SOLR были упорядочены следующим образом:
Все документы с одинаковым счетом будут упорядочены по убыванию по дате добавления.
Так что, когда я сделаю запрос в solr, у меня будет n документов. В этом наборе результатов будут группы документов с одинаковым счетом. Я хочу, чтобы каждая из этой группы документов была упорядочена по убыванию по дате.
Я обнаружил, что могу выполнить это, используя запросы функций, точнее говоря, rord
function http://wiki.apache.org/solr/FunctionQuery#rord,, но, как указано в документации
ВНИМАНИЕ: начиная с Solr 1.4, ord () и rord () могут привести к избыточному использованию памяти
так как они должны использовать запись FieldCache в читателе верхнего уровня, в то время как
Сортировка и функциональные запросы теперь используют записи на уровне сегмента.
Отсюда сортировка или использование другого запроса функции, в дополнение к
ord () / rord () удвоит использование памяти.
это приведет к избыточному использованию памяти.
Какие еще есть варианты?
Я думал использовать recip(ms(NOW,startTime),1,1,0)
. Это лучший подход?
Есть ли какое-либо отрицательное влияние на производительность, если я использую rece и ms?