Je recommanderais d'utiliser Lucene, bien que je pense que Postgres est un excellent produit. Les algorithmes de Lucene fonctionnent très bien "hors de la boîte" pour la recherche de texte en langage naturel. En d'autres termes, lorsque vous construisez simplement la recherche la plus simple possible, il semble juste "faire la bonne chose" (c'est-à-dire, ce que votre intuition suggère qu'il devrait faire). Postgres fait très bien le RDb Mgt
C'est pour ça que ça a été conçu. Mais comparer la mise en œuvre de ce qui suit sur les deux:
Search for "google" or "yahoo" or "msn" followed by "search engine".
réutiliser maintenant le même code de requête pour effectuer la recherche suivante:
Search for "google" and "yahoo" and "msn" and "search engine".
Imaginez ce qu'il faudrait pour mettre en œuvre la requête dans NHibernate.Search par rapport Postgresql. Il ne devrait pas falloir longtemps pour vous convaincre qu'il est plus facile de construire une fonctionnalité de requête de texte flexible avec NHibernate. C'est juste plus naturellement adapté pour cela.
Une bonne réponse à cette question dépend de la façon dont vous voulez chercher et de ce que vous voulez rechercher. – Paco