Может кто-нибудь дать мне общий обзор того, как работает lucene.net? - PullRequest
11 голосов
/ 30 сентября 2008

У меня есть база данных MS SQL и есть поле varchar, для которого я хотел бы выполнять запросы типа where name like '%searchTerm%'. Но сейчас это слишком медленно, даже с полнотекстовой индексацией SQL Enterprise.

Может кто-нибудь объяснить, как Lucene .Net может помочь моей ситуации? Как работает индексатор? Как работают запросы?

Что для меня сделано и что мне нужно делать?

Ответы [ 2 ]

6 голосов
/ 30 сентября 2008

Я видел, как этот парень (Майкл Нил) присутствовал в Lucene на собрании группы пользователей - фактически вы создаете индексные файлы (используя Lucene), и у них есть указатели на что угодно (строки базы данных, что угодно)

http://code.google.com/p/vinull/source/browse/#svn/Examples/LuceneSearch

Очень быстрый, гибкий и мощный.

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

Не похоже, что его слайды в коде Google.

4 голосов
/ 30 сентября 2008

Эта статья (как ни странно, она находится на вершине результатов поиска Google :), имеет довольно хорошее описание того, как можно оптимизировать поиск Lucene.

Правильно настроенный Lucene должен легко обойти поиск полнотекстовой индексации SQL (до 2005 года). Если вы пользуетесь MS SQL 2005 и ваша производительность поиска все еще слишком низкая, вы можете проверить настройки БД.

...