MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Recherche en texte intégral MongoDB vs Lucene ?

Sans m'aventurer dans un long sujet qui ne conviendrait probablement pas à un forum de programmation, je vais essayer de couvrir cela en gros, mais essayez quand même de couvrir les points.

La principale chose à considérer lorsque vous vous lancez dans une comparaison large est la suivante :"Comment la recherche en texte intégral du moteur de base de données relationnelle 'XYZ' se compare-t-elle à Lucene" .

Donc, si vous considérez cela et que vous avez de l'expérience avec les capacités intégrées de "texte intégral" de ces produits, alors ce sont les pommes que vous devriez comparer avec les pommes "texte intégral" de MongoDB.

En bref, MongoDB offre des fonctionnalités de texte intégral de base, peu différentes de celles que l'on trouve dans les produits relationnels. Comme mentionné dans a :) , les installations sont neuves, mais mieux que ce qu'il y avait avant, ce qui n'était rien.

Sur b :) , Lucene et ses dérivés/homologues (Solr/ElasticSearch, etc.) doivent être considérés comme un tout autre animal. Où vous avez besoin tokenisation et stemming avancés, fonctionnalités intégrées pour "More like this" et le nombre de facettes sur les recherches. Dans ces cas, le produit séparé est une nécessité requise.

Bien sûr, il existe plusieurs solutions pour indexer les données des magasins MongoDB dans Lucene, etc., et même personnaliser ce processus n'est pas difficile. Mais il s'agit de maintenir une autre partie mobile de votre infrastructure.

Je ne vois donc pas vraiment cela comme un besoin de comparer Recherche de texte MongoDB avec Lucene, car en fin de compte ils existent pour faire différentes choses, c'est juste une question de besoin pour votre candidature. Choisissez la solution qui vous convient le mieux.

La seule chose à ajouter est que la famille Lucene (et ses dérivés) sont d'excellents produits. N'hésitez pas à les essayer, au moins pour les évaluer. Les points d'avant sont qu'il y a beaucoup plus de puissance que n'importe quelle "recherche de texte de base de données standard". De plus, la courbe d'administration et d'apprentissage n'est généralement "pas aussi difficile que vous le pensez". Jouez, cela peut valoir la peine d'être mis en œuvre.