sql >> Database >  >> RDS >> Sqlserver

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

SQL Server FTS wordt gemakkelijker te beheren voor een kleine implementatie. Omdat FTS is geïntegreerd met de DB, zorgt het RDBMS ervoor dat de index automatisch wordt bijgewerkt. Het nadeel hier is dat je geen duidelijke schaaloplossing hebt, behalve het repliceren van DB's. Dus als u niet hoeft te schalen, is SQL Server FTS waarschijnlijk "veiliger". Politiek gezien zullen de meeste winkels zich meer op hun gemak voelen met een pure SQL Server-oplossing.

Aan de kant van Lucene zou ik SOLR verkiezen boven rechtstreekse Lucene. Met beide oplossingen moet u zelf meer werk doen om de index bij te werken wanneer de gegevens veranderen, en ook zelf gegevens toewijzen aan de SOLR/Lucene-index. De voordelen zijn dat u eenvoudig kunt schalen door extra indexen toe te voegen. Je zou deze indexen op zeer slanke Linux-servers kunnen draaien, wat een aantal licentiekosten elimineert. Als je de Lucene/SOLR-route neemt, zou ik ernaar streven om ALLE gegevens die je nodig hebt rechtstreeks in de index te plaatsen, in plaats van verwijzingen terug te plaatsen naar de DB in de index. U kunt gegevens in de index opnemen die niet doorzoekbaar zijn, dus u kunt bijvoorbeeld vooraf gebouwde HTML of XML in de index hebben opgeslagen en deze als zoekresultaat weergeven. Met deze aanpak kan uw database niet werken, maar u kunt nog steeds zoekresultaten weergeven in een niet-verbonden modus.

Ik heb nog nooit een rechtstreekse prestatievergelijking gezien tussen SQL Server 2008 en Lucene, maar zou er graag een zien.



  1. Weinig verbeterpunten in PostgreSQL 9.4

  2. MySQL LIKE werkt niet met â

  3. Threading en SqlFileStream. Het proces heeft geen toegang tot het opgegeven bestand omdat het is geopend in een andere transactie

  4. Vermijd het invoegen van 'null'-waarden in de databasetabel via JPA