论文部分内容阅读
随着大数据时代的到来,海量数据每时每刻都在涌现并快速增长,并且数据种类极为丰富。随着时间的流逝,这样的海量异构数据在顷刻间便会成为历史数据而积累。在众多行业中,对于历史数据的查询业务量正在日趋增长,因此海量异构历史数据查询平台的开发已成为各大软件公司的新兴开发目标。在该混合查询平台之上,本索引管理系统的开发可有效地对该查询平台中各类索引进行管理和维护,从而提升海量异构历史数据的查询效率。本项目来源于本人在实习期间参与的混合数据查询平台的开发项目,该项目目标是对公司数据库产品进行功能扩展,以支持海量异构数据的查询。期间本人借助索引机制提出了对海量异构历史数据查询的效率提升方案,即索引管理系统,本项目主要包括以下四部分内容。索引管理系统的原理分析。对索引技术、DB2和MongoDB数据库中的索引类型及用法、Hybrid架构等技术进行了原理介绍与分析,并对JSONVal()这一混合查询函数进行了说明,并对索引建立与维护相关技术进行了整体分析。索引管理系统的设计与开发。本文首先对混合索引的建立过程进行设计,然后逐一对五大功能模块进行设计,其包括:SQL解析模块、索引分析模块、索引建立模块、Queryset管理模块及索引维护模块。通过模块间的交互与合作,实现了对用户查询语句的解析、对索引类型的分析、对不同数据库中不同种类索引的建立、对Queryset的管理,以及对当前系统索引的维护等功能。本系统采用Java编程语言进行系统实现,并选取DB2和MongoDB数据库实现异构数据的持久化。此外,用户还可通过控制台界面对系统的各个功能进行操控。索引管理系统的应用场景设计与开发。医生工作站是将本系统结合了医疗场景的应用开发。在该场景中,可采用含有业务意义的查询语句,通过SQL及SQL-like的方式进行混合查询,并管理和维护该场景下的索引。索引管理系统的性能测试。在医疗场景下,借助于场景中的具体查询业务及相关数据,对索引系统进行性能测试,测试结果表明索引管理系统可大幅提高数据查询效率,从而验证了该索引管理系统的有效性。本项目开发于IBM中国开发中心完成,该项目来源真实,意义深远。最终,本系统与医疗场景的结合验证了其性能和有效性,得到了实习公司的认可。