[英]Python file indexing and searching
我有一个大的启动文件(hdf),我需要启用搜索。 对于Java,我会使用Lucene,因为它是一个文件和文档索引引擎。 我不知道python的等价物是什么。
任何人都可以推荐我应该使用哪个库来索引大量文件以进行快速搜索? 或者是推出自己的首选方式?
我看过pylucene和lupy ,但是两个项目看起来都很不活跃且不受支持,所以我不确定是否应该依赖它们。
最后的注意事项:Woosh和pylucene似乎很有希望,但woosh仍然是alpha,所以我不确定我是否要依赖它,我在编译pylucene方面遇到了问题,并且没有实际的释放。 在我对数据进行了更多研究之后,它主要是数字和默认文本字符串,所以现在关闭索引引擎对我没用。 希望这些图书馆能够稳定下来,以后访问者会发现它们有用处。
Lupy 已退休 ,开发人员推荐使用PyLucene。 至于PyLucene,它的邮件列表活动可能很少,但它肯定是支持的。 事实上,它最近才成为官方的apache子项目 。
你可能还想看一个新的竞争者: 飞快移动 。 它与lucene类似,但是在纯python中实现。
我之前没有做过索引,但以下内容可能会有所帮助: -
至于使用HDF文件,我听说过一个名为h5py的模块。
我希望这有帮助。
我建议狮身人面像 。 它非常活跃,功能更多,看起来比Lucene更快。
一个流行的基于C ++的信息检索库,经常与Python一起使用,是Xapian http://xapian.org/
它非常快速,可以愉快地管理大量数据,但它并不像Lucene那样容易扩展。
弹性搜索可用于索引文档和按关键字搜索
Elasticsearch可以与图形db和hadoop集成以及下面的一些URL:
1) https://www.elastic.co/products/elasticsearch
2) https://towardsdatascience.com/getting-started-with-elasticsearch-in-python-c3598e718380
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.