Le moteur de recherche Lucene vs recherche de Base de données
Je suis en utilisant une base de données MySQL et ont été à l'aide de bases de données de recherche. Les avantages et les inconvénients des moteurs de base de données et le moteur de recherche Lucene? J'aimerais avoir des suggestions au sujet de quand et où les utiliser?
Vous devez vous connecter pour publier un commentaire.
Je vous suggère de lire Texte complet des Moteurs de Recherche vs SGBD. Un one-liner serait: Si la majeure partie de votre cas d'utilisation de la recherche plein texte, l'utilisation de Lucene. Si la majeure partie de votre cas d'utilisation de jointures et d'autres opérations relationnelles, l'utilisation d'une base de données. Vous pouvez utiliser une solution hybride pour une plus compliqué cas d'utilisation.
Utilisation de Lucene, quand vous voulez indice textuel Documents (de n'importe quelle longueur) et de recherche pour Texte dans ces documents, de retour d'une liste de classement de documents qui correspondent à la requête de la recherche. L'exemple classique est celui des moteurs de recherche, comme Google, qui utilise du texte indexeurs comme Lucene pour indexer et interroger le contenu des pages web.
Les avantages de l'utilisation de Lucene, sur une base de données comme Mysql, d'indexation et de recherche de texte sont:
Beaucoup de info utiles sur Lucene ici.
Nous avons utilisé Sql Server au travail pour faire quelques requêtes qui a utilisé de recherche de texte intégral. En cas de grandes quantités de données Sql fait une jointure interne entre jeu de résultats retournés par la recherche plein texte et le reste de la requête, qui peut être lente si la base de données est en cours d'exécution sur la faible puissance de la machine (2 go de ram et 20 GO de données). La commutation de la même requête Lucene amélioré considérablement la vitesse.
De recherche Lucene a un avantage de l'indexation. Cette post peut vous aider à comprendre lucene.