Solr на сайте .NET - PullRequest
       24

Solr на сайте .NET

2 голосов
/ 19 октября 2010

У меня есть сайт ASP.NET, подкрепленный базой данных SQL Server. Я использую Lucene.NET для индексации и поиска в базе данных. Я добавляю многогранную навигацию поиска на страницу результатов (фасеты - это иерархическое дерево категорий). Вчера я попросил убедиться, что я использую правильную технику для огранки. Все, что я получил до сих пор, - это предложение использовать Solr, но Solr делает лот вещей, которые мне не нужны.

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

Я думаю, что, поскольку я с самого начала хиархичен, я должен быть в состоянии оптимизировать это довольно хорошо, но я боюсь, что могу сильно недооценивать влияние этого дизайна на производительность поиска. Если Solr не быстрее, я не получу ничего, используя его.

1 Ответ

3 голосов
/ 20 октября 2010

Я бы порекомендовал создать проект-прототип, моделирующий ваши потребности в гранях с помощью Solr, и сравнить его с Lucene.net.

Несмотря на то, что огранка в Solr очень оптимизирована (и постоянно получает новые оптимизации, как метод параллельной огранки на сегмент ), при использовании Solr естьнекоторые накладные расходы, например сетевые обходы и анализ ответов.

Если ваш код уже реализует Lucene.NET, работает адекватно и вам не нужны какие-либо дополнительные функции Solr, тогда нет необходимости переключаться на Solr.Но учтите также, что если вы выберете Solr, вы получите бесплатное повышение производительности с каждой новой версией.

...