Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

SQL Server 2008 Full Text Search (FTS) a Lucene.NET

SQL Server FTS będzie łatwiejszy w zarządzaniu w przypadku małego wdrożenia. Ponieważ FTS jest zintegrowany z bazą danych, RDBMS automatycznie aktualizuje indeks. Wadą jest to, że nie masz oczywistego rozwiązania skalowania poza replikacją DB. Jeśli więc nie musisz skalować, SQL Server FTS jest prawdopodobnie „bezpieczniejszy”. Z politycznego punktu widzenia większość sklepów będzie bardziej komfortowa dzięki rozwiązaniu opartemu wyłącznie na SQL Server.

Po stronie Lucene wolałbym SOLR zamiast prostego Lucene. W przypadku obu rozwiązań musisz wykonać więcej pracy samodzielnie aktualizując indeks w przypadku zmiany danych, a także samodzielnie mapując dane do indeksu SOLR/Lucene. Zaletą jest to, że możesz łatwo skalować, dodając dodatkowe indeksy. Możesz uruchomić te indeksy na bardzo oszczędnych serwerach linuksowych, co eliminuje niektóre koszty licencji. Jeśli wybierzesz trasę Lucene/SOLR, chciałbym umieścić WSZYSTKIE potrzebne dane bezpośrednio w indeksie, zamiast umieszczać wskaźniki z powrotem do bazy danych w indeksie. Do indeksu można dołączyć dane, których nie można przeszukiwać, na przykład w indeksie można przechowywać gotowy kod HTML lub XML i wyświetlać go jako wynik wyszukiwania. Przy takim podejściu Twoja baza danych może być wyłączona, ale nadal możesz wyświetlać wyniki wyszukiwania w trybie rozłączonym.

Nigdy nie widziałem bezpośredniego porównania wydajności między SQL Server 2008 i Lucene, ale chciałbym je zobaczyć.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PARSE() vs CAST() vs CONVERT() w SQL Server:jaka jest różnica?

  2. Czy MAMP powinien zwrócić ::1 jako IP na hoście lokalnym?

  3. Jakie zasoby są dostępne dla dostrajania wydajności bazy danych?

  4. RODBC odbcDriverConnect() Błąd połączenia

  5. Złożone sortowanie pola string - liczba - string