[发明专利]分片数据库访问方法及数据库系统在审
申请号: | 201210496069.9 | 申请日: | 2012-11-28 |
公开(公告)号: | CN103853718A | 公开(公告)日: | 2014-06-11 |
发明(设计)人: | 郭清;胡迪;潘明国 | 申请(专利权)人: | 北京京东尚科信息技术有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 上海弼兴律师事务所 31283 | 代理人: | 薛琦;王聪 |
地址: | 100195 北京市海淀区杏石口路6*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分片 数据库 访问 方法 系统 | ||
本发明公开了一种分片数据库访问方法及数据库系统。所述分片数据库访问方法用于Mybatis和Spring构架,包括以下步骤:1、基于一数据库事务通过Spring配置文件定位待访问的数据库;2、分别为每个待访问的数据库建立一访问线程;3、Mybatis的数据库操作接口通过各个访问线程操作各个访问线程关联的待访问的数据库,收集各个访问线程的反馈数据并生成执行结果;4、Spring的事务管理接口基于所述数据库操作接口生成的执行结果检测所述数据库事务是否执行成功,并执行相应地提交和回滚。本发明还提供了一种使用所述分片数据库访问方法的数据库系统。本发明利用现有的框架,通过路由策略来实现分页数据库的操作。
技术领域
本发明涉及一种分片数据库访问方法及数据库系统,特别是涉及一种适用于Mybatis和Spring框架的分片数据库访问方法及数据库系统。
背景技术
数据库的扩展是一个永恒的话题。对于传统的关系数据库,采用的是纵向扩展(ScaleUp)的方式,即买更好的机器添加更多的资源来取得更好的性能(如硬件升级、更快更多的CPU(中央处理器)、更大的内存、更多更大的磁盘等)。关系数据库通过ScaleUp方式已在传统的企业应用环境中统治了将近三十多年。但是近年来随着数据量的暴增尤其是云计算模式的出现,这种扩展模式对于某些应用已经不太适合,这时便出现了横向扩展(ScaleOut)模式,sharding就是其中一种。
sharding是把数据库Scale Out到多个物理节点上的一种有效的方式。Shard这个词的意思是“碎片”。如果将一个数据库当作一块大玻璃,将这块玻璃打碎,那么每一小块都称为数据库的碎片。将整个数据库打碎的过程就叫做sharding,可以翻译为分片。
形式上,sharding可以简单定义为将大数据库分布到多个物理节点上的一个分区方案。每一个分区包含数据库的某一部分,称为一个shard,分区方式可以是任意的,并不局限于传统的水平分区和垂直分区。系统中需要有服务器进行查询路由转发,负责将查询转发到包含该查询所访问数据的shard或shards节点上去执行。
而目前的Mybatis系统还主要使用单数据库架构,所以采用的是纵向扩展的方式,因而很多基于Mybatis系统面临着大数据量、高并发的考验,它们非常需要应用sharding来缓解数据库的巨大压力。但是成熟的基于Mybatis的sharding框架却还没有出现。
发明内容
本发明要解决的技术问题是为了克服现有技术中的Mybatis系统不适用于sharding框架的多数据库系统的缺陷,提供一种分片数据库访问方法及其数据库系统,利用现有的Mybatis和Spring框架,通过路由策略来实现sharding数据库的操作。
本发明是通过下述技术方案来解决上述技术问题的:
本发明提供了一种分片数据库访问方法,适用于Mybatis和Spring框架,其特点是,所述分片数据库访问方法包括以下步骤:
S1、基于一数据库事务通过Spring配置文件定位待访问的数据库;
S2、分别为每个待访问的数据库建立一访问线程;
S3、Mybatis的数据库操作接口通过各个访问线程操作与各个访问线程关联的待访问的数据库,收集各个访问线程的反馈数据并生成执行结果;
S4、Spring的事务管理接口基于Mybatis的数据库操作接口生成的执行结果检测所述数据库事务是否执行成功,若是,所述Spring的事务管理接口向各个待访问的数据库提交事务,否则所述Spring的事务管理接口向各个待访问的数据库回滚事务。
本发明中利用Mybatis和Spring框架实现多数据库的访问和操作,从而实现分片数据库的事务提交和回滚。其中利用Spring进行分片数据库的事务具体提交和回滚,利用Mybatis实现对各个数据库的具体操作。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京东尚科信息技术有限公司,未经北京京东尚科信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210496069.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种治疗肾绞痛的药物及制备方法
- 下一篇:一种治疗褥疮的中药制剂及其制备方法