Фильтры поисковой системы :: результаты предварительного расчета для каждого фильтра - PullRequest
1 голос
/ 13 ноября 2010

Я создаю поисковик для автомобилей.При просмотре результатов поиска слева есть фильтры, которые делают результаты более конкретными.Я хочу, чтобы я мог показать сумму результатов, которые существуют, когда каждый фильтр установлен для выбранного поиска.

Например, фильтры могут быть:

Сделать Альфа Ромео (500)BMW (2330).... Цвет Черный (1000)Белый (800)....

Я хочу посчитать число в скобках эффективно, не делая десятки выборов для этого.Любая идея, как кешировать эти данные или создать для этого специальную таблицу?

Имейте в виду, что при каждом добавлении фильтра суммы должны пересчитываться в соответствии с новыми результатами.

Вы можете проверить пример здесь

Это довольно сложно, я думаю ..Большое спасибо за любую помощь!Димитрис

Ответы [ 2 ]

2 голосов
/ 22 декабря 2010

странное решение -Солр.это хорошо, только если у вас есть выделенный сервер «только для поисковой системы», если нет (когда solr и сайт будут размещены на одном сервере - производительность).Более простое решение - стандартный lucene (solr - расширение Java к lucene)

0 голосов
/ 14 ноября 2010

Вы должны рассмотреть возможность использования поисковой системы Solr для такой расширенной функциональности. Есть несколько хороших камней Ruby для простой интеграции с Solr, вы можете найти указатели здесь .

...