PostgreSQL全文搜索与NHibernate.Search通过Lucene.Net

时间:2009-01-20 12:45:08

标签: nhibernate postgresql full-text-search lucene

我正在考虑是否为我当前的项目选择NHibernate.Search或PostgreSQL的嵌入式全文搜索支持。

我们正在使用,正如您已经猜到的那样,在.NET平台上使用带有NHibernate ORM的PostgreSQL RDBMS。您对上述全文引擎有什么经验?我应该注意哪些陷阱?

1 个答案:

答案 0 :(得分:2)

我建议使用Lucene,不过我觉得Postgres是一款很棒的产品。 Lucene的算法在自然语言文本搜索方面非常“开箱即用”。换句话说,当你构建最简单的搜索时,它似乎只是“做正确的事”(也就是说,你的直觉会表明它应该做什么)。

Postgres做得非常好。这就是它的设计目标。但比较以下两者的实现:

Search for "google" or "yahoo" or "msn" followed by "search engine".

现在重复使用相同的查询代码来执行以下搜索:

Search for "google" and "yahoo" and "msn" and "search engine". 

想象一下在NHibernate.Search和Postgresql中实现查询需要什么。不用花很长时间就能说服自己用NHibernate构建灵活的文本查询功能更容易。它更适合它。