2010-01-29 2 views
8

Я ищу очень надежную поисковую систему для интеграции на веб-сайте .Net.Поисковая система для интеграции в стек .NET.

Текущее предлагаемое решение: Lucene.NET Стек на основе Lucene. Тем не менее, я хотел бы оценить другие поисковые системы, прежде чем передумать.

набор функций нам нужно, это следующее:

  • Возможность сканировать произвольные страницы с помощью HTTP
  • Возможность синтаксического анализа Sitemaps
  • Возможность получить списки URI, для анализа с помощью базы данных справочной
  • Возможность ограничить поиск определенного языка/локали
  • Возможность ограничить поиск подмножества страниц (например, с помощью регулярных выражений на URI)
  • Скорость и масштабируемость (это для общедоступного веб-сайта с тонны трафика)
  • должны иметь поддержку API .NET или супер-легкий HTTP на основе API, которые могут быть обернуты в .NET API
  • Язык- зависимый полнотекстового поддержка

Другие вещи, которые были бы большими, но не дело-выключатели, если они не поддерживаются:

  • Отчетность
  • Aliasing и подмагничивания результатов
  • HTTP на основе страницы администрирования
  • поддержки
  • SQL Server

Какое другое программное обеспечение поисковые системы работали для вас? Есть ли вы порекомендовать или что нам следует избегать?

ответ

1

Я бы рекомендовал проверить Solr. Он основан на Java, но отвечает требованиям API на основе HTTP-требований, предназначен для запуска в отдельном ящике/кластере из основного приложения (так что вам не обязательно нужно Java AND .NET на одном и том же оборудовании) и он имеет большой импульс. Прошло некоторое время с тех пор, как я работал с ним, но я не помню, чтобы это обеспечивало его собственный искатель. Если это все еще так, должно быть просто использовать автономный искатель и вышеупомянутый API, чтобы он работал.

1

Вместо того, чтобы напрямую использовать Lucene.Net, вы считали, что используете что-то, что обертывает его, и предоставляет больше возможностей, похожих на то, что вы после?

Solr является продуктом Apache, который делает это, и есть также .Net client порт для него. Я никогда не использовал его в производстве, но это похоже на то, что вам нужно.

По аналогичной идее Nutch (написанный парнем, который первоначально писал Lucene), хотя я не знаю ни одной версии .NET. У Nutch есть компонент паука для обхода сайтов.

+0

Solrnet не .net порт Solr, это клиентская библиотека. –

+0

@Mauricio: обновленный ответ – adrianbanks

0

Lucene - единственное, что я знаю, но это потребует от вас написания справедливой части того, что вы хотели.

3

Lucene.Net - это библиотека поиска информации, а не поисковая система. В частности, он не делать какие-либо из:

  • Crawl веб-страниц или разбора сайтмепов
  • отчетов
  • страницы администрирования HTTP на основе
  • поддержка
  • SQL Server (Lucene.Net использует свой собственный простой но очень эффективный формат файла и не использует SQL Server)

Хотя я сильный сторонник или SQL и рекомендую его как полнотекстовый компонент поиска в море rch engine, вам также понадобится компонент парсера crawler/html, чтобы создать полноценную функциональную поисковую систему, и вам придется тщательно разрабатывать индексы Lucene.Net, чтобы максимизировать производительность запросов, которые вы хотите (поиск по язык/язык)

Попробуйте найти проект Solr, который является полноценной поисковой системой с использованием Lucene - это может быть более подходящим для ваших нужд.

3

Откажитесь от Microsoft Search Server Express, хотя на данный момент страница выглядит прикрученной, поэтому попробуйте это link.

Есть другие двигатели предприятия, такие как vivisimo velocity (очень расширяемый), автономность и т. Д. Lucene и Solr ограничены, сложны в использовании и настройке, но это то, что вы получаете, когда хотите что-то бесплатно.

1

Coveo - это поисковая система, которую мы в настоящее время размещаем для замены Google Mini, которая использовалась в течение ряда лет. Я просто указываю, что это как-то для изучения, поскольку я не использовал ни одного достаточно, чтобы знать, насколько они хороши. Я просто знаю о головных болях с каждым, много головных болей.

0

Вы также можете посмотреть на OpenSearchServer

работает как шарм на Windows. Вы можете использовать веб-службу SOAP для интеграции.

Существует также библиотека скелета C#, работающая с API XML/REST.

Отказ от ответственности: Я генеральный директор OpenSearchServer

+1

Спасибо за сообщение! Обязательно внимательно прочитайте [FAQ по самопомощи] (http://stackoverflow.com/faq#promotion). Также обратите внимание, что * требуется *, что вы публикуете отказ от ответственности каждый раз, когда вы ссылаетесь на свой собственный сайт/продукт. –

+0

Привет, Андрей. Благодарим вас за уведомление. Читая внимательно FAQ, особенно «Могу ли я продвигать продукты или сайты, с которыми я связан здесь?» теме, я не смог найти никакой информации об этом отказе от ответственности. Что такое хорошая практика? –

+1

Отрегулируйте это для любой вашей соответствующей роли, но что-то вроде: «Отказ от ответственности: я лидер команды OpenSearchServer», размещенный сразу после ссылки или упоминания об этом.Обратите внимание, что это не важно, когда кто-то задает вопрос * конкретно о том, как сделать что-то на любом из ваших продуктов, «Как мне нажимать звездочки с OpenSearchServer?» - вы можете ответить на этот вопрос «Справка» без раскрытия. –

Смежные вопросы