实战 | Elasticsearch打造知识库检索系统
题记
源自“死磕Elasticsearch”技术群里的讨论问题:
——我想用es做个类似于知识库的东西,所以需要索引一些pdf、word之类的文件,这个你之前有试过吗?能给个方向吗?
我的思考如下:
1、pdf、Office类的文档如何被ES索引?
更确切的说,pdf、Office类文档(word,ppt,excel等)如何导入ES中。
如图所示:
问题转嫁为:如何将Office类文档、PDF文档导入ES建立索引,并提供全文检索服务?
2、Elasticsearch支持的最大待检索字段的长度是多大?
ES5.X版本以后,keyword支持的最大长度为32766个UTF-8字符,text对字符长度没有限制。
设置ignore_above后,超过给定长度后的数据将不被索引,无法通过term精确匹配检索返回结果。
参考6.0官网解读:http://t.cn/RYlELoV
参考luncene7.1API: http://t.cn/RYWvuGl
3、Office&pdf文档存入Elastisearch注意问题清单
少废话,直接上图。
4、解析实战代码
以上仅列举核心示例代码。
5、小结
从功能和性能角度考量,建立知识库的建议如下:
1)知识库的核心是数据导入ES,导入ES的核心是各种类型文档的解析;
2)提前设定Mapping,定义好字段分词、不分词的策略;
3)对于大于1MB一个字段的存储,建议使用fvh高亮方式,在Mapping中一并设置。
参考:
[1] Java读取Office文档参考:http://t.cn/RZsiHcY
[2] Html2Md参考:http://t.cn/RYlEEoC
[3] Pdf2Html参考:http://t.cn/zWgVuFv
[4]OpenOffice参考:http://t.cn/8sGyKZd
- 实战 | Elasticsearch打造知识库检索系统
- 网络实战---亲手打造机房上网管理系统
- 最全EasySwoole+ElasticSearch打造高性能小视频服务系统(5.36G)来源于mu ke网
- 某某最全《EasySwoole+ElasticSearch打造高性能服务系统教程》
- JAVA并发编程与原理实战,缓存架构,深入Jvm虚拟机,Elasticsearch全文检索视频资源
- 【监控】数据平台运营实战之如何打造应用级别的监控系统
- SpringBoot/Netty+MUI打造聊天系统项目实战(完整)
- Vue2.0+Node.js+MongoDB全栈打造商城系统-某课网价值348元实战教程
- Spring Boot前后端 打造企业级博客系统实战分享
- 利用amWiki轻松打造知识库或技术文档系统
- C++项目实战开发打造加油站管理系统,传说中的一条龙服务
- EasySwoole+ElasticSearch打造高性能小视频服务系统(冒泡IT社区精品教程下载)
- 全文检索知识库系统方案 (一)
- ElasticSearch 文章检索系统。输入关键字可检索文章标题和内容。
- React16+React-Router4 打造电商系统实战视频教程
- 搭建ElasticSearch2.4.0分布式检索系统
- 2019最新EasySwoole+ElasticSearch打造高性能小视频服务系统
- 最新Python Flask打造一个微信小程序点餐系统项目实战(完整)
- ElasticSearch 全文检索实战
- EasySwoole+ElasticSearch打造高性能小视频服务系统