Я использую Solr через PHP для поиска всех аспектов моего сайта. Я пытаюсь реализовать функцию и не могу найти информацию о том, как ее реализовать.
У меня есть группа документов (рецензий), каждая о конкретном продукте.
Я хочу найти уникальные ключевые слова из 1-2 слов (без стоп-слов), которые появляются в нескольких обзорах для одного продукта, с подсчетом количества отзывов, в которых они появляются.
Как только у меня это получится, я хочу показать ключевые слова X, количество рецензий, в которых они находятся, и один обзор для каждого из них выделил использование ключевого слова.
EDIT:
После того, как у меня есть список уникальных (не ограничивающих слов / общих слов) ключевых слов, которые появляются в нескольких обзорах, я хочу ранжировать их по количеству раз, когда они появляются в обзорах. Например, если люди пишут отзывы о камерах, ключевые слова могут выглядеть следующим образом:
дорого (появляется в 7 обзорах)
выдержка (появляется в 5 обзорах)
плохое изображение (появляется в 3 обзорах)
После того, как эти ключевые слова будут ранжированы по количеству отзывов, я хочу выбрать 1 отзыв для каждого ключевого слова и показать эти отзывы, выделяющие ключевое слово. Например:
«... к сожалению, эта камера слишком ДОРОГА для того, что вы получаете ...» (в 7 обзорах)
«... СКОРОСТЬ ЗАДЕРЖКИ слишком медленная для ...» (5 отзывов)
«... Плохое качество изображения - самое большое падение камер ...» (в 3 обзорах)
Что касается того, когда запускать это, я все еще не уверен. Возможно, в режиме реального времени (когда вы просматриваете продукт, затем кэшируетесь для времени X), каждый раз, когда публикуется новый отзыв, отмечается продукт, который будет обновляться, или в день выполнения cronjob, и т. Д. Он не будет запускаться одновременно для всех ключевых слов. , он будет работать против всех ключевых слов во всех обзорах для одного продукта. Затем повторяется для каждого продукта.
Надеюсь, это имеет больше смысла.
Любая помощь в достижении этого в Solr будет принята с благодарностью.