У меня есть множество продуктов.Для каждого продукта я должен составить поисковый запрос с гранями.
Пример для следующих "продуктов":
Computer
TV
MP3-Player
с помощью поиска с использованием фасет. Мне нравится определять, как часто каждый продукт существует вполе ПРОДУКТ.Со следующим результатом
Comupter (3)
-apple
-ibm
-dell
TV (5)
-sony
-toshiba
[...]
MP3-player (10)
-[...]
Прямо сейчас я понимаю, что используя один фасетный поиск для каждого слова / продукта.Это работает, но результаты возвращаются через 400 мс с использованием следующих параметров:
'facet' => 'true'
'facet.field' => 'PRODUCT'
'facet.method' => 'enum'
'facet.limit'=>200
'facet.mincount'=>4
'fq' => 'PRODUCT:computer' <- by iterating an array with PHP i change the product (computer,tv,...) on every iteration
К сожалению, в реальной жизни нет 3 продуктов (как в примере выше), существует около 100 продуктов, которые актуальны,Это означает: PHP-скрипт должен запросить 100 solr-запросов с 400 мс - так что скрипт выполняется 40 секунд, что слишком долго.Я не могу запустить неограниченный / неограниченный многогранный поиск «всех» товаров (без «fq =»), потому что есть тысячи продуктов, и мне не нужна информация только для каждого.
Есть линапример, способ добиться лучшей производительности - объединить несколько запросов solr в один?
Спасибо!