Kategorie:

Lucene .NET - hiperwydajny silnik pełnotekstowego wyszukiwania

Ostatnio w projekcie dla dużej zagranicznej firmy kosmetycznej wykorzystałem silnik Lucene.NET. Lucene.NET jest super-wydajną pełnotekstową wyszukiwarką dla technologii .NET. Została ona wykorzystana do indeksowania produktów oraz kategorii. Dodatkowo sporym utrudnieniem była konieczność parametryzowania indexów w zależności od krajów (system będzie dostępny dla Belgii, Holandii, Francji, Niemiec i Luxemburga).

A dla zainteresowanych…

Jakie funkcjonalności ma zatem silnik Lucynki?

– Wyszukiwanie w zdefiniowanych polach,

– rankingowe wyszukiwanie (najlepsze rezultaty zwracane w pierwszej kolejności),

– wyszukiwanie w zakresie wartości pól, np. zakres dat,

– sortowanie według dowolnego pola, czy też po wielu polach,

Kto tego używa?

M. in.: Twitter, LinkedIn czy Apple.

Czy potrzeba lepszej rekomendacji? 🙂

 

Jak dużo dobrego w środowisku .NET tak i ten moduł ma swoje źródło w Javie 🙂 Zatem przy wdrażaniu Lucene do aplikacji podobne zasady obowiązują w obu technologiach.

Lucene wdrożyłem do zaindeksowania danych z powolnego źródła danych. Dodatkowo użyłem biblioteki Examine, która umożliwia umieszczenie konfiguracji w pliku oraz łatwiejsze wyszukiwanie danych w Lucene.

Przydatne linki:

http://lucene.apache.org/core/

http://lucenenet.apache.org

http://www.codeproject.com/Articles/320219/Lucene-Net-ultra-fast-search-for-MVC-or-WebForms

http://www.lucenetutorial.com/lucene-in-5-minutes.html

http://examine.codeplex.com

http://umbraco.com/follow-us/blog-archive/2011/9/16/examining-examine.aspx

http://codeclimber.net.nz/archive/2009/08/27/how-to-get-started-with-lucene.net.aspx

 

Dodaj komentarz