Я хочу взглянуть на использование Lucene для решения полнотекстового поиска для сайта, которым я в данный момент управляю.Сайт полностью построен на технологиях SQL Server 2008 / C # .NET 4.Данные, которые я просматриваю для индексации, на самом деле довольно просты: всего пара полей на запись и только одно из этих полей действительно доступно для поиска.
Мне не ясно, какой набор инструментов мне нужно использовать лучше всего.или какая архитектура мне нужна.В частности:
Куда мне поместить индекс?Я видел, как люди рекомендуют размещать его на веб-сервере, но это может показаться расточительным для большого количества веб-серверов.Конечно, лучше было бы централизовать здесь?
Если индекс централизован, как бы я его запросил, учитывая, что он просто живет в файловой системе?Придется ли мне эффективно размещать его на общем сетевом ресурсе, который могут видеть все веб-серверы?
Существуют ли какие-либо ранее существующие инструменты, которые будут постепенно заполнять индекс Lucene по расписанию, вытягиваяданные из базы данных SQL Server?Будет ли мне лучше развернуть здесь свой собственный сервис?
Когда я запрашиваю индекс, я должен просто попытаться получить обратно несколько идентификаторов записей, которые я затем возвращаю в БДдля фактической записи, или я должен стремиться вытянуть все, что мне нужно для поиска, прямо из индекса?
Есть ли смысл пытаться реализовать что-то вроде Solr в этой среде со вкусом?Если это так, я бы, вероятно, предоставил ей собственную * nix VM и запустил бы ее в Tomcat.Но я не уверен, что Солр купит меня в этом случае.