Начиная с версии 1.4, solr довольно хорошо обрабатывает фасеты с большим количеством значений, так как по умолчанию используется простой подсчет фасетов. (facet.method по умолчанию 'fc').
До версии 1.4 в solr использовался фасетный метод на основе фильтра (enum), который определенно быстрее для фасетирования атрибута с небольшим количеством значений. Этот метод требует одного фильтра на значение фасета.
О facet.limit, думайте о нем, как о способе навигации по пространству фасетов (в сочетании с facet.offset), как о навигации по результирующему пространству со строками / смещением. Таким образом, значение 10 ~ 50 является разумным.
Как и в случае строк / смещения и в силу природы Solr, можно ожидать, что производительность facet.limit / facet.offset будет ухудшаться при увеличении смещения, но это должно быть идеально, если вы находитесь в разумных пределах .
По умолчанию solr сначала выводит более частые фасеты.
Подводя итог:
Использование Solr 1,4
Убедитесь, что facet.method имеет значение 'fc' (ну, в любом случае, это значение по умолчанию).
Навигация по пространству фасетов с помощью facet.limit / facet.offset.