数据库读写方法、装置、计算机设备和存储介质制造方法及图纸

技术编号:23315110 阅读:24 留言:0更新日期:2020-02-11 17:48
本申请涉及一种数据库读写方法、装置、计算机设备和存储介质。所述方法包括:获取待处理的数据库事务;数据库事务包括至少一个任务;启动数据库事务并依次执行任务;在当前所执行的任务为读操作任务时,查询与读操作任务所指向的目标数据表对应、且在当前数据库事务的生命周期内的历史操作记录;当历史操作记录包括写操作记录时,从主数据库读取目标数据表中与任务对应的数据;当历史操作记录未包括写操作记录时,从与主数据库对应的从数据库,读取目标数据表中与任务对应的数据。采用本方法能够提高数据库的服务性能。

Database reading and writing methods, devices, computer equipment and storage media

【技术实现步骤摘要】
数据库读写方法、装置、计算机设备和存储介质
本申请涉及计算机
,特别是涉及一种数据库读写方法、装置、计算机设备和存储介质。
技术介绍
随着计算机技术的发展,日常生活中产生了大量的数据,管理这些数据需要用到数据库。在数据量很大的情况下,需要使用多个数据库来存储相同的数据,通过让主数据库处理写操作,例如新增、修改和删除操作,而从数据库处理读操作,例如查询操作,从而实现对数据库操作的读写分离。传统技术中,通常利用额外的第三方服务,比如MyCat、ProxySQL服务(一种代理服务中间件),来实现对数据库操作的读写分离。然而,利用中间件实现数据库操作的读写分离,存在对数据库操作读写分离不完全,无法实现自适应读写分离的问题,使得数据库的服务性能较低。
技术实现思路
基于此,有必要针对上述技术问题,提供一种能够提升数据库的服务性能的数据库读写方法、装置、计算机设备和存储介质。一种数据库读写方法,所述方法包括:获取待处理的数据库事务,所述数据库事务包括至少一个任务;启动所述数据库事务并依次执行所述任务本文档来自技高网...

【技术保护点】
1.一种数据库读写方法,其特征在于,所述方法包括:/n获取待处理的数据库事务,所述数据库事务包括至少一个任务;/n启动所述数据库事务并依次执行所述任务;/n在当前所执行的任务为读操作任务时,查询与所述读操作任务所指向的目标数据表对应、且在当前数据库事务的生命周期内的历史操作记录;/n当所述历史操作记录包括写操作记录时,从主数据库读取所述目标数据表中与所述任务对应的数据;/n当所述历史操作记录未包括写操作记录时,从与所述主数据库对应的从数据库,读取所述目标数据表中与所述任务对应的数据。/n

【技术特征摘要】
1.一种数据库读写方法,其特征在于,所述方法包括:
获取待处理的数据库事务,所述数据库事务包括至少一个任务;
启动所述数据库事务并依次执行所述任务;
在当前所执行的任务为读操作任务时,查询与所述读操作任务所指向的目标数据表对应、且在当前数据库事务的生命周期内的历史操作记录;
当所述历史操作记录包括写操作记录时,从主数据库读取所述目标数据表中与所述任务对应的数据;
当所述历史操作记录未包括写操作记录时,从与所述主数据库对应的从数据库,读取所述目标数据表中与所述任务对应的数据。


2.根据权利要求1所述的方法,其特征在于,所述获取待处理的数据库事务包括:
获取待执行的多个任务;
将所述多个任务中相关联的至少一个任务封装成一个数据库事务,并确定所述数据库事务对应的事务标识;
当检测到数据库事务执行指令时,根据所述数据库事务执行指令所携带的事务标识获取对应的数据库事务。


3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在当前所执行的任务为写操作任务时,从所述主数据库读取所述目标数据表中与所述任务对应的数据;所述写操作任务包括新增操作任务、修改操作任务和删除操作任务中的至少一种。


4.根据权利要求1所述的方法,其特征在于,所述当所述历史操作记录包括写操作记录时,从主数据库读取所述目标数据表中与所述任务对应的数据,包括:
当所述历史操作记录包括写操作记录时,从配置对象中获取主数据库的地址;
根据所述主数据库的地址连接所述主数据库;
从连接的所述主数据库中读取所述目标数据表,并从所述目标数据表中获取与所述任务对应的数据。


5.根据权利要求1所述的方法,其特征在于,所述当所述历史操作记录未包括写操作记录时,从与所述主数据库对应的从数据库,读取所述目标数据表中与所述任务对应的数据,包括:
当所述历史操作记录未包括写操作记录时,确定与所述主数据库对应的目标从数据库;
从所述配置对象中获取确定的所述目标从数据库的地址;
根据所述目标从数据库的地址连接所...

【专利技术属性】
技术研发人员:郑政芳
申请(专利权)人:金蝶软件中国有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1