分布式全文检索系统中索引管理及文件预处理研究

来源 :中国科学技术大学 | 被引量 : 0次 | 上传用户:Mickey123
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
信息时代,数据规模呈现爆炸式增长,非结构化信息越来越庞大。网络中的信息具有海量规模和非结构化两大特点,传统的集中式索引难以提供高效、可靠的服务,需要建立分布式全文检索系统,处理海量的非结构化信息。分布式检索系统的主要处理对象是文本数据,使用自然语言进行检索,就需要对网络上获得的各种类型的数据进行文本提取、自然语言的分词,以便建立结构化的索引。同时也需要建立分布式索引管理机制,实现索引在各节点的负载均衡、数据同步、分布式查询,并保证信息安全。本文主要研究分布式检索系统的文本提取、中英文混合分词、分布式索引管理。本文设计并实现了支持多种文件格式的文本实时提取系统。该系统包括文件实时监控、文件类型识别、编码识别与转换、文本内容提取四个模块,使用Inotify监控数据源,将发生写操作的文件加入任务队列,识别文件类型,针对文件类型采取相应的方案进行文本提取,提取Office系列文档、pdf文档、压缩文档、邮件文档、网页文档和xml文档等文件的文本内容,制成统一编码的纯文本文件。本文设计并实现了中英文分词器对中英文语料进行分词。分词器包括中文分词、英文分词、混合分词三个子分词器,均基于Trie树构造词典。处理文本时,首先调用混合分词器,若分词不成功则根据当前字符的语种分别调用中文或英文分词器。中文分词器采用折半扫描的正向增字最大匹配算法采集歧义字段,并设计了一套歧义处理机制来消歧。英文分词器结合波特词干算法与词典匹配法提取单词词根。结合三种分词器,能对中英文混合的语料文本准确高效地分词。本文设计并实现了基于Katta的分布式索引管理平台,用于管理大规模索引文件,并实现了提供给用户的搜索接口和交互页面。从Katta源码中开发出接口函数,建立了一套任务管理机制,定时合并索引,并利用Zookeeper的虚拟文件系统解决索引更新和客户端搜索之间的冲突。采用Tomcat搭建Web服务器,通过JSP/Servlet技术与客户端交互,优化了搜索算法,支持分页查询、条件查询等高级搜索,为客户端提供简洁的搜索页面,设计了一套页面缓存算法增强用户体验。将数据源挂载到Web服务器,使客户端能从结果列表的链接查看原始文件,提高了搜索性能,用户体验良好。
其他文献
在气液无滑移假设下建立了天然气超音速凝结数理模型,研究了天然气中水蒸气的超音速凝结过程,并分析了Laval喷管扩张段半扩张角对凝结的影响。结果表明凝结模型是合理的,液滴成
新皮啡肽Ⅰ(DELⅠ)在离体条件(浓度范围10-14~10-10mol/L)和活体条件(剂量范围0.5~5μg/kg)下能提高红细胞玫瑰花环形成细胞百分率(E-RFC)和红细胞C3b受体花环百分率(RBC-CR1);