有人能帮我提供一些支持Python的全文搜索引擎的建议吗?
现在,我们已经有了一个MySQL数据库,我想添加一个全文搜索引擎索引的能力,其中一些文本在这个数据库中的一些表中。web应用程序将使用此文本数据搜索数据库中的相应记录。例如,在我们的customer表中索引客户名称信息,使用web应用程序进行全文搜索,以获得客户的MySQL记录。
我曾(简短地)看过Lucene、Swish-E和MongoDB,以及其他几个,但我不确定考虑以下几点对我来说是一个好的选择:
任何提示、提示或提示都将不胜感激!
发布于 2012-02-07 18:26:05
看看呜呜。我听说它不是很好的扩展(也许现在已经解决了),但是对于小型的收藏来说,它可能是有用的。
对于可伸缩的解决方案,请考虑将Lucene与PyLucene或Jython结合使用。
发布于 2012-02-07 18:56:04
几个月前建造幽门烯是我最痛苦的经历之一。该项目将不会得到任何牵引力IMHO,如果它是如此困难的建设。
由于其他一些人也有同样的渴望,我们开始使用https://code.google.com/a/apache-extras.org/p/pylucene-extra/在几个操作系统、Python和Java上收集预构建的幽门烯和jcc鸡蛋。不过,它最近并不十分活跃。
Whoosh可能是一个很好的选择,或者您可能想看看狮身人面像、ElasticSearch或HaystackSearch (请注意:我没有处理这些问题)。
或者尝试通过python访问索尔 (有一些API),这可能比使用幽门烯容易得多。当然,考虑到lucene仍然需要一个JVM来运行。
由于您没有巨大的可伸缩性需求,所以我将重点关注简单的使用和社区支持,而不是性能和规模。希望能帮上忙。
发布于 2012-02-07 19:00:12
索尔是Lucene的一个很好的包装器,它极大地简化了事情。在大多数情况下,它不需要任何Java修改,您只需配置一些XML文件。它确实作为另一个进程运行,因此这可能会使您的部署复杂化。
我在皮索尔方面取得了很好的成果,但是实际上,您可以编写自己的python通信库,因为Solr使用REST,所以用xml或json发送和检索数据非常简单。
https://stackoverflow.com/questions/9181566
复制相似问题