Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

SQL Server 2008 Volltextsuche (FTS) im Vergleich zu Lucene.NET

SQL Server FTS wird für eine kleine Bereitstellung einfacher zu verwalten sein. Da FTS in die DB integriert ist, übernimmt das RDBMS die Aktualisierung des Index automatisch. Der Nachteil hier ist, dass Sie keine offensichtliche Skalierungslösung haben, außer DBs zu replizieren. Wenn Sie also nicht skalieren müssen, ist SQL Server FTS wahrscheinlich „sicherer“. Politisch gesehen werden sich die meisten Shops mit einer reinen SQL Server-Lösung wohler fühlen.

Auf der Lucene-Seite würde ich SOLR dem reinen Lucene vorziehen. Bei beiden Lösungen müssen Sie selbst mehr Arbeit leisten, um den Index zu aktualisieren, wenn sich die Daten ändern, und die Daten selbst dem SOLR/Lucene-Index zuordnen. Die Vorteile sind, dass Sie einfach skalieren können, indem Sie zusätzliche Indizes hinzufügen. Sie könnten diese Indizes auf sehr schlanken Linux-Servern ausführen, wodurch einige Lizenzkosten entfallen. Wenn Sie die Lucene/SOLR-Route wählen, würde ich darauf abzielen, ALLE Daten, die Sie benötigen, direkt in den Index einzufügen, anstatt Zeiger zurück auf die DB im Index zu setzen. Sie können Daten in den Index aufnehmen, die nicht durchsuchbar sind, sodass Sie beispielsweise vorgefertigtes HTML oder XML im Index speichern und als Suchergebnis bereitstellen können. Bei diesem Ansatz könnte Ihre DB ausfallen, aber Sie können trotzdem Suchergebnisse in einem getrennten Modus bereitstellen.

Ich habe noch nie einen direkten Leistungsvergleich zwischen SQL Server 2008 und Lucene gesehen, würde aber gerne einen sehen.