论文部分内容阅读
人类社会进入大数据时代,电子书籍、图片和视频呈现出爆炸式的增长,电子出版物盛行,如何有效的识别、保存和传播网络上的知识资源,如何有效的组织海量的无结构数据构成能够被人利用的知识库为目前亟待解决的问题,数字图书馆成为解决这一问题关键。目前高校数字化图书馆的建设仍出于起始阶段,数字图书馆的主要业务仍以电子资源的整理、存储、检索为基础,面向用户提供资源的查询、在线浏览和下载服务,用户在利用数字图书馆获取知识的时候仍以主动查询的方式为主,但是,面对大量的系统反馈信息,往往不知道作何选择。信息推荐技术的出现改变了人类获取知识的方式,从传统的主动获取变为被动接受,基于用户特征和兴趣分析,向用户推荐其适合或者感兴趣的信息。在此背景下,本文研究基于信息推荐的高校数字图书馆系统的设计与实现,系统能够提高电子资源的整理、存储和检索,向读者提供信息的查询、浏览和下载服务,此外,在传统数字图书馆业务的基础上,实现信息推荐功能,以读者为服务核心,从借阅信息中挖掘读者的兴趣爱好,向读者推送感兴趣的电子资源。高校数字图书馆系统的需求分析阶段,对国内外现存在高校数字图书馆系统进行功能性分析,了解每一项功能对应的业务需求,对高校数字图书馆管理流程进行梳理,在需求分析的形式表述上,首先通过活动图对系统需求进行整体阐述,然后基于UML用例图对系统的主要模块进行分析,最后,基于高校数字图书馆的规模分析系统的性能指标需求。基于以上分析,我们将高校数字图书馆业务划分为:用户信息管理、电子资料管理、查询统计和信息推荐。定义电子资源的元数据,基于元数据的描述进行检索,提供高效和准确的查询。本文的元数据定义采用关系元组的形式描述电子资源。在元数据的抽取方法上,对电子文档采用基于启发式的抽取方法,这主要是因为电子文档有一定的规律性,可以制定模板进行自动化抽取;图片和视频的元数据抽取采用人工方式。从数字图书馆规模需求角度考虑,电子资源的存储和管理时采用分布式存储策略,并按照数据类型分节点存储,便于数据的检索和管理;对于元数据,以及其他定义清晰的数据,建立E-R图模型,采用关系数据库存储。在系统的设计和实现阶段,系统采用MVC分成开发框架,分别从功能组织、体系结构以及网络拓扑结构3个方面阐述了系统的架构设计。本文选择J2EE开发环境,数据库为Oracle 12C,基于JSP技术实现具有B/S结构的高校数字图书馆系统。在设计和实现部分,给出了系统整体的类图设计,然后基于流程图和序列图给出了具体功能的设计和实现细节。特别指出,在电子资料管理中,本文给出了元数据的抽取算法以及基于Lucene的全文检索功能的实现;在信息推荐功能设计和实现中,本文采用了应用较广的协同过滤推荐算法。文章最后给出了系统测试,测试的内容包括功能测试和性能测试两个方面。功能测试基于黑盒测试方法,测试了系统主要功能模块的工作情况,验证功能是否满足预期要求。在性能测试过程中,采用了模拟软件进行压力测试,分别统计了系统的响应时间、上传速率、CPU占用率等指标。测试结果表明,本文设计和实现的数字图书馆系统能够有效的存储和检索电子资源,向读者提供信息的查询、浏览和下载服务,实现信息推荐,向读者推送感兴趣的电子资源。