2008-09-23 12 views

Odpowiedz

5

Wykorzystaliśmy zarówno Lucene.net, usługę indeksowania, jak i pełny tekst SQL Server. W przypadku projektu z dużą i ciężką funkcją przeszukiwania bazy danych wyszukiwanie SQL ma przewagę pod względem wydajności/zasobu. W przeciwnym razie Lucene jest znacznie lepszy pod każdym względem.

0

możesz użyć google, nie będzie to najszybszy indeksator, ale zapewnia świetne wyniki, gdy nie masz budżetu.

0

dtSearch to taki, którego często używaliśmy, ale nie jestem tak wielkim fanem tego.

0

Wiele osób korzysta obecnie z niestandardowego wyszukiwania Google; nawet kilka banków, które znam, używa go do intranetu.

0

Jeśli chcesz zindeksować wszystkie strony witryny (nie tylko te indeksy Google) lub jeśli chcesz utworzyć wyszukiwanie w witrynach intranetowych, numer Google Mini jest całkiem słodki. Kosztuje to trochę pieniędzy, ale bardzo łatwo jest go uruchomić i uruchomić w ciągu zaledwie kilku godzin. W zależności od tego, ile stron należy zindeksować, może być drogie.

3

Spójrz na Solr. Używa Lucene do indeksowania tekstu, ale jest pełnowartościowym serwerem http, dzięki czemu możesz publikować dokumenty przez http i wyszukiwać przy użyciu adresów URL. Najlepsze jest to, że daje fasetowe wyszukiwanie z pudełka, które będzie wymagało dużo pracy, jeśli zrobisz to sam.

+0

Solr udostępnia również inne funkcje, które możesz zakończyć, przechodząc z Lucene.Net. Na przykład: Solr może replikować indeksy z jednego komputera na drugi, co może pomóc w pracy awaryjnej lub wydajności. Solr może pomóc w radzeniu sobie z gigantycznymi indeksami, automatycznie rozsyłając zapytanie do wielu "odłamków" serwerów.Dzięki DataImportHandler Solr może przeszukiwać bazę danych SQL i indeksować zawarte w niej dane bez dodatkowego kodu (tylko konfiguracja XML). Główną wadą jest to, że jeśli chcesz dostosować kod wyszukiwania, będziesz musiał to zrobić w Javie, a nie .NET. – Chris

+1

Poinformujmy, że Solr ma wady. HTTP jest drogim i marnotrawnym protokołem - w porównaniu z natywnym kodem uruchomionym na tym samym komputerze, co aplikacja internetowa. Jeśli masz już nadmiarowość wbudowaną w warstwę aplikacji już RE-CENTRALIZUJĄCĄ, wyszukiwanie poprzez agregację wszystkich wyszukiwań do pojedynczego (lub kilku) serwerów nie jest idealne do wydajności. Za pomocą Solr znacznie trudniej jest zarządzać ciągle zmieniającymi się indeksami. Nie jest to również dobry paradygmat, jeśli twoje aplikacje mają WIELE różnych indeksów Lucene lub przeszukujesz wiele indeksów naraz jako część twojej implementacji. –

0

Używam dtSzukaj i ja (rodzaj) lubię to. Interfejs API nie jest najlepszy na świecie .NET, ale może wykonać zadanie i jest dość szybki. I jest tanie, więc twój szef to polubi (~ 1000 USD).

Wyniki pozostawiają wiele do życzenia, ponieważ nie mają żadnego znaczenia w rankingach znaczeń semantycznych ani niczego szczególnego. Działa to lepiej niż cokolwiek, co można uzyskać z serwera MS SQL.

Ma pająk internetowy, który ułatwia szybkie wyszukiwanie aplikacji na stronie internetowej. Jeśli potrzebujesz, możesz użyć interfejsu API do tworzenia haków w bazie danych i zapewnienia bezpieczeństwa na poziomie produktu - ale musisz sam wykonać to zadanie. Ich forum pozostawia wiele do życzenia, ale może ludzie zaczną zamieszczać tutaj materiały dtSearch. :)

0

Polecam również Solr. Jest łatwy w konfiguracji, obsłudze i konfiguracji. Stwierdziłem, że jest stabilny i łatwy do skalowania. Jest pakiet C# do łączenia się z solr.

Powiązane problemy