全文检索与Python

2024-06-07 07:46:40 发布

您现在位置:Python中文网/ 问答频道 /正文

有人能帮我提供一些关于支持Python的全文搜索引擎的建议吗?在

现在我们有了一个MySQL数据库,我想添加一个全文搜索引擎索引这个数据库中一些表中的文本的功能。web应用程序将使用此文本数据在数据库中搜索相应的记录。例如,在我们的customer表中索引客户名称信息,用web应用程序进行全文搜索,得到客户的MySQL记录。在

我(简要地)看过Lucene、Swish-E和MongoDB,以及其他一些产品,但我不确定在考虑以下几点时,什么是一个好的选择:

  • 我不是Java人(虽然我已经编程很久了)
  • 我们只想搜索一组相对较小的数据
  • 我们正在寻找MySQL数据库中的索引文本
  • 希望这个索引可以半实时更新。在

任何提示,提示或提示将不胜感激!在


Tags: 数据文本功能名称web信息数据库应用程序
3条回答

几个月前建造皮鲁塞纳是我最痛苦的经历之一。如果这项工程这么难建,它就不会有任何吸引力。在

由于其他一些人也有同样的渴望,我们开始https://code.google.com/a/apache-extras.org/p/pylucene-extra/收集一些操作系统、Python版本和Java运行时组合上的预构建的pylucene和jcc鸡蛋。不过,它最近不太活跃。在

Whoosh可能是个不错的选择,或者您可能想看看SphinxElasticSearch或{a4}(注意:我没有在这些方面工作)。在

或者尝试通过python访问Solr(有一些api),这可能比使用pylucene容易得多。当然,考虑到lucene仍然需要一个JVM来运行。在

由于您没有巨大的可伸缩性需求,我将重点放在简单的使用和社区支持上,而不是性能和规模。希望有帮助。在

看看Whoosh。我听说它不能很好地扩展(也许现在已经修复了),但是对于小型收藏来说,它可能是有用的。在

对于可伸缩的解决方案,请考虑将Lucene与PyLucene或Jython一起使用。在

Solr是Lucene的一个很好的包装器,它大大简化了事情。它不需要任何Java修补,您只需要配置一些XML文件。它确实作为另一个进程运行,因此这可能会使您的部署复杂化。在

我对pysolr有了很好的结果,但是实际上,由于Solr使用REST,所以您可以编写自己的python通信库,所以用xml或json发送和检索数据非常简单。在

相关问题 更多 >

    热门问题