本文向您展示了ES如何全文搜索word和PDF文档。内容简洁易懂,一定会让你眼前一亮。希望通过这篇文章的详细介绍,你能有所收获。
对word和PDF文档进行ES全文搜索。您可以使用插件提取文档的内容,将它们导入es,然后搜索它们。有几个插件。
几个内容提取插件的比较:
https://ambar . cloud/blog/2017/10/24/摄取-文档-进入-es/
一、ambar 官方对ES文件内容提取插件的总结。
1、Ingest Attachment Plugin。
官网。
最简单的解决方案,就是ElasticSearch的官方插件。几乎可以从所有文档类型中提取内容。附件无法微调,这就是为什么它是不能处理大文件.
2、Apache Tika。
官网。
Apache Tika是从文件中提取内容的事实标准。粗略地说,Tika是开源库的组合,用于提取文件内容并将其合并到一个库中。它是开源的,有REST API。您必须有在服务器上设置和配置的经验。您还应该注意到,Tika在某些类型的PDF(带有图像的PDF)中工作不太好,REST API的运行速度比直接的Java调用慢得多,即使在本地主机上也是如此。
那么,你安装了Tika,下一步怎么办?您需要创建某种包装:
下载文件。
调用Tika提取文件内容。
将解析后的内容提交给弹性搜索。
为了让ElasticSearch快速搜索大文件,您必须自己调整它们。综上所述,Tika是一个很好的解决方案,但是需要大量的代码编写和微调,尤其是对于边缘情况:对于Tika来说,就是怪异的PDF和OCR。
3、FsCrawler
官网。
对于那些想通过本地文件系统和SSH索引文档的人来说,FsCrawler是一个“又快又脏”的开源解决方案。它将对您的文件系统进行爬网,为新文件编制索引,更新现有文件并删除旧文件。FsCrawler是用Java编写的,需要一些额外的工作来安装和配置它。它支持定时抓取(例如,每15分钟一次),并且有一些用于文件提交和计划管理的基本API。FsCrawler内部使用Tika。一般来说,你可以使用FsCrawler作为Tika和ElasticSearch之间的粘合剂。
4、Ambar
官网。
它可以很好地处理大文件(100 MB)。
它从PDF中提取内容(即使嵌入的图像格式不佳),并对图像进行光学字符识别。
它为用户提供了易于使用的REST API和WEB UI。
部署非常容易(感谢Docker)
它是根据FairSource 1 v0.9许可的开源软件。
开箱即用,为用户提供分析和即时搜索体验。
以上内容是ES如何对word和PDF文档进行全文搜索的。你学到什么知识或技能了吗?如果你想学习更多的技能或丰富你的知识储备,请关注行业信息渠道。
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/55819.html