一种基于NoSQL的医疗信息系统数据库实现方法

文档序号:6534708阅读:220来源:国知局
一种基于NoSQL的医疗信息系统数据库实现方法
【专利摘要】本发明公开了一种基于NoSQL的医疗信息系统数据库实现方法,步骤包括有:A、应用程序通过JDBC驱动连接至JDBC接口;B、JDBC接口通过Pyro调用连接至Server模块;C、Server模块对SQL进行AST解析,获取到AST结构树;D、将AST结构树进行分析,如果得到关联表则进行,如果得到单表则进行;E、对AST结构树进行转换形成执行脚本;F、通过API接口映射到NoSQL数据库。本发明能够改进现有技术的不足,实现对高性能、高可扩展性、高冗余性数据库的快速访问。
【专利说明】—种基于NoSQL的医疗信息系统数据库实现方法
【技术领域】
[0001]本发明涉及数据库【技术领域】,尤其是一种基于NoSQL的医疗信息系统数据库实现方法。
【背景技术】
[0002]传统的数据库,通常面向企业级应用。这类应用的规模,与互联网应用相比,通常规模有数量级的差别。互联网应用很容易遇到以亿/天规模增长的数据量,因此对数据存储的可扩展性,高性能,冗余能力具有较强的需求。另一方面,互联网应用通常并不强调数据的一致性,允许一定短时间的数据不一致,延迟插入等情况的出现。因此传统数据库的优势在互联网业务模型下并不明显,但传统数据库的劣势却表露无遗。
[0003]由于现在的医疗信息系统中逐步从以往的客户端架构迁移到B / S的浏览器架构,并越来越注重对公众开放,因而医疗信息系统正从以往典型的企业级应用转变为互联网应用。随着这个转变过程的深入,原先承担系统存储核心的传统数据库,越发暴露出问题,亟待解决。然而,虽然NoSQL等新兴数据库具有高性能、高可扩展性、高冗余性能特性,但其却采用与SQL完全不同的API接口,传统的应用系统迁移到NoSQL数据库上代价极大。
[0004]类似的问题现在也有一些其他的解决方式,诸如hive, shark等,提供了 SQL接口到map-reduce模型的映射。然而这些解决方案仅适合基于map-reduce的hadoop模型方案,更多的用于针对一次需要运行数个小时乃至数天的数据分析业务。对于普通的业务SQL查询,延迟过于巨大,无法使用。

【发明内容】

[0005]本发明要解决的技术问题是提供一种基于NoSQL的医疗信息系统数据库实现方法,能够解决现有技术的不足,实现对高性能、高可扩展性、高冗余性数据库的快速访问。
[0006]为解决上述技术问题,本发明所采取的技术方案如下。
[0007]—种基于NoSQL的医疗信息系统数据库实现方法,其特征在于包括以下步骤:
[0008]A、应用程序通过JDBC驱动连接至JDBC接口 ;
[0009]B、JDBC接口通过Pyro调用连接至Server模块;
[0010]C、Server模块对SQL进行AST解析,获取到AST结构树;
[0011]DjfAST结构树进行分析,如果得到关联表则进行,如果得到单表则进行;
[0012]Ejf AST结构树进行转换形成执行脚本;
[0013]F、通过API接口映射到NoSQL数据库。
[0014]采用上述技术方案所带来的有益效果在于:本发明采用NoSQL中响应速度最快的key-value类数据库为基础,弥补了他们缺乏丰富的数据操作能力的缺陷,实现了一套从SQL语句这种极端复杂的高层语义,到key-value型数据库这种极其简单的数据库实现的映射模型和方法。从而为传统应用提供透明的SQL接口,同时又基于高性能的NoSQL实现,获得高性能、高可扩展性、高冗余性、海量数据等云计算背景下所需要具备的特性。【专利附图】

【附图说明】
[0015]图1是本发明一个【具体实施方式】的流程图。
[0016]图2是本发明一个【具体实施方式】中server模块的示意图。
[0017]图3本发明一个【具体实施方式】中AST转换过程的流程图。
[0018]图4是发明一个【具体实施方式】中Cache Overlay结构的示意图。
[0019]图5是使用本发明进行样本测试的每秒响应数分布。
[0020]图6是使用本发明进行样本测试的响应延迟。
[0021]图7是使用本发明进行样本测试的响应延迟分布。
[0022]图8是使用本发明进行样本测试的每秒处理的事务数。
[0023]图9是使用本发明进行样本测试的每秒响应数分布。
[0024]图10是使用本发明进行样本测试的响应延迟。
[0025]图11是使用本发明进行样本测试的响应延迟分布。
[0026]图12是使用本发明进行样本测试的每秒处理的事务数。
【具体实施方式】
[0027]参照附图,一种基于NoSQL的医疗信息系统数据库实现方法,包括以下步骤:
[0028]A、应用程序通过JDBC驱动连接至JDBC接口 ;
[0029]B、JDBC接口通过Pyro调用连接至Server模块;
[0030]C、Server模块对SQL进行AST解析,获取到AST结构树;
[0031]D、将AST结构树进行分析,如果得到关联表则进行,如果得到单表则进行;
[0032]EJi AST结构树进行转换形成执行脚本;
[0033]F、通过API接口映射到NoSQL数据库。
[0034]Server对SQL进行AST解析,获取到AST结构树的解析过程如下:
[0035]
【权利要求】
1.一种基于NoSQL的医疗信息系统数据厍实现方法,其特征在于包括以下步骤: A、应用程序通过JDBC驱动连接至JDBC接口; B、JDBC接口通过Pyro调用连接至Server模块; C、Server模块对SQL进行AST解析,获取到AST结构树; D、将AST结构树进行分析,如果得到关联表则进行Overlay操作,如果得到单表则进行Cache操作;
AST结构树进行转换形成执行脚本; F、通过API接口映射 到NoSQL数据库。
【文档编号】G06F17/30GK103761265SQ201410000527
【公开日】2014年4月30日 申请日期:2014年1月2日 优先权日:2014年1月2日
【发明者】吕琦, 黄鹰, 胡海星 申请人:上海起维信息科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1