一种数据处理方法及装置制造方法及图纸

技术编号:19933856 阅读:33 留言:0更新日期:2018-12-29 04:25
本申请公开了一种数据处理方法,包括:获取已提交事务对应的数据库表的数据表名、插入事务ID、删除事务ID、命令ID,通过数据字典获取数据库表的物理文件列表,然后,针对每一个物理文件,打开数据库表对应的表文件,解析表文件中的文件块,获得最新命令ID,然后遍历表文件中的所有文件块,若文件块的元组的元组头结构中的命令ID为最新命令ID,则根据对应的插入事务ID和删除事务ID修改删除标志位,当已提交事务对应的所有数据库表均执行完上述操作,则完成针对已提交事务的回滚操作。如此,实现了将数据库中的数据还原到事务更新之前的状态,避免误操作对数据库中数据造成无法恢复的损坏。本申请还公开了一种数据处理装置。

【技术实现步骤摘要】
一种数据处理方法及装置
本申请涉及数据处理领域,尤其涉及一种数据处理方法及装置。
技术介绍
随着互联网技术的不断发展,数据呈爆炸增长趋势。在一些情况下,可以通过数据库实现数据管理。以关系型数据库为例,其可以用于存储数据,并在需要使用时读取数据。为了维护数据库中的数据,数据库一般会提供提交(commit)和回滚(rollback)功能。其中,执行commit操作可以使得由该事务所作的更改会变得对他人可见并且能够保证在崩溃发生时仍能维持该更改。执行rollback操作即回滚当前事务,如此使得针对该事务所作的所有更新都被抛弃。其中,rollback只能在一个事务执行失败后运行,其运行结果为取消当前事务已经完成的数据操作。若一个事务执行完成并且执行了commit操作,则rollback是无法撤销上一次操作的。然而,数据库的更新大量依赖数据库管理员(DataBaseAdministrator,DBA)的操作,DBA手动操作的过程中有很大可能性由于失误写错结构化查询语言(StructuredQueryLanguage,SQL)语句或者选错数据库表,如此可以导致事务错误更新。当执行commit操作本文档来自技高网...

【技术保护点】
1.一种数据处理方法,其特征在于,所述方法包括:响应于针对已提交事务的回滚请求,获取与所述已提交事务对应的数据库表的数据表名以及对应的插入事务ID、删除事务ID、命令ID;通过数据字典获取与所述数据表名对应的表ID以及对应于所述数据库表的物理文件列表;所述物理文件列表为所述数据库表的表文件的列表;根据所述物理文件列表,打开数据库表对应的表文件,解析表文件中的文件块,获得最新命令ID;遍历所述表文件中的所有文件块,若所述文件块的元组的元组头结构中的命令ID为最新命令ID,则根据对应的插入事务ID和删除事务ID修改删除标志位。

【技术特征摘要】
1.一种数据处理方法,其特征在于,所述方法包括:响应于针对已提交事务的回滚请求,获取与所述已提交事务对应的数据库表的数据表名以及对应的插入事务ID、删除事务ID、命令ID;通过数据字典获取与所述数据表名对应的表ID以及对应于所述数据库表的物理文件列表;所述物理文件列表为所述数据库表的表文件的列表;根据所述物理文件列表,打开数据库表对应的表文件,解析表文件中的文件块,获得最新命令ID;遍历所述表文件中的所有文件块,若所述文件块的元组的元组头结构中的命令ID为最新命令ID,则根据对应的插入事务ID和删除事务ID修改删除标志位。2.根据权利要求1所述的方法,其特征在于,在所述根据对应的插入事务ID和删除事务ID修改删除标志位之后,还包括:更新命令ID。3.根据权利要求1所述的方法,其特征在于,所述根据对应的插入事务ID和删除事务ID修改删除标志位包括:若所述插入事务ID不为空,则置所述元组的删除标志位为1;若所述删除事务ID不为空,则置所述元组的删除标志位为空。4.根据权利要求3所述的方法,其特征在于,所述方法还包括:若所述删除事务ID不为空,则置所述删除ID为空。5.根据权利要求1所述的方法,其特征在于,所述已提交事务对应的数据库表为多个时;所述遍历所述表文件中的所有文件块包括:遍历所述多个数据库表的表文件中的所有文件块。6.根据权利...

【专利技术属性】
技术研发人员:孙京本李佩刘如意刘清林
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南,41

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

1