【技术实现步骤摘要】
数据处理方法、装置和计算机可读存储介质
[0001]本申请涉及计算机
,具体涉及一种数据处理方法
、
装置和计算机可读存储介质
。
技术介绍
[0002]在使用关系型数据库管理系统
(MYSQL)
的软件系统中,存在很多数据量较小的表,可以将这些表进行全量缓存
。
例如,可以采用内存存储引擎
(The Memory Storage Engine
,简称
Memory
存储引擎
)
对表数据进行全量缓存
。
[0003]在对现有技术的研究和实践过程中发现,现有的对表数据进行全量缓存的数据处理方法中,无法支持缓存数据的持久化,在数据库发生异常而重新启动时极易出现数据丢失的情况,从而使得数据处理效率较低
。
技术实现思路
[0004]本申请实施例提供一种数据处理方法
、
装置和计算机可读存储介质,可以实现在数据库发生异常而重新启动时,对数据库异常时内存中全量缓存的最新数据进行恢复,保障了全量缓存在内存中的数据的持久性,进而提升数据处理效率
。
[0005]本申请实施例提供一种数据处理方法,包括:
[0006]获取针对目标数据库的启动指令,启动所述目标数据库;
[0007]读取磁盘存储的所述目标数据库对应的目标表数据文件和内存变更日志文件,所述内存变更日志文件用于记录针对所述目标表数据文件在内存的全量缓存数据的操作信息,所述操作信 ...
【技术保护点】
【技术特征摘要】
1.
一种数据处理方法,其特征在于,包括:获取针对目标数据库的启动指令,启动所述目标数据库;读取磁盘存储的所述目标数据库对应的目标表数据文件和内存变更日志文件,所述内存变更日志文件用于记录针对所述目标表数据文件在内存的全量缓存数据的操作信息,所述操作信息包括全量缓存数据中被操作的变更数据;将所述目标表数据文件中的表数据和所述内存变更日志文件中的变更数据进行数据合并处理,得到目标表数据;基于所述目标表数据在所述内存中构建所述目标表数据文件对应的目标全量缓存数据
。2.
如权利要求1所述的数据处理方法,其特征在于,所述目标表数据文件和所述内存变更日志文件中每一行数据存在一个全局序号,所述将所述目标表数据文件中的表数据和所述内存变更日志文件中的变更数据进行数据合并处理,得到目标表数据,包括:获取所述内存变更日志文件中每一行变更数据的变更数据全局序号;根据所述变更数据全局序号对比所述表数据和所述变更数据,根据对比结果在所述变更数据中确定出未写入所述目标表数据文件的目标变更数据;将所述目标变更数据和所述表数据进行数据合并处理,得到目标表数据
。3.
如权利要求2所述的数据处理方法,其特征在于,所述将所述目标表数据文件中的表数据和所述内存变更日志文件中的变更数据进行数据合并处理,得到目标表数据之前,还包括:记录所述变更数据全局序号中最大的目标全局序号;所述基于所述目标表数据在所述内存中构建所述目标表数据文件对应的目标全量缓存数据之后,还包括:当接收到针对所述目标全量缓存数据的数据添加操作时,获取记录的最大的目标全局序号;对所述目标全局序号进行序号递增处理,得到第一目标全局序号;将所述数据添加操作对应的第一目标数据写入所述目标全量缓存数据;基于所述第一目标全局序号和所述第一目标数据更新所述内存变更日志文件
。4.
如权利要求3所述的数据处理方法,其特征在于,所述基于所述第一目标全局序号和所述第一目标数据更新所述内存变更日志文件,包括:获取所述内存变更日志文件的存储数据量;在所述存储数据量不大于预设数据量阈值时,将所述第一目标全局序号和所述第一目标数据写入所述内存变更日志文件;在所述存储数据量大于所述预设数据量阈值时,获取所述内存变更日志文件的最大文件编号;创建新的内存变更日志文件,以及对所述新的内存变更日志文件的文件编号赋值为对所述最大文件编号进行递增后的文件编号;将所述第一目标全局序号以及所述第一目标数据写入所述新的内存变更日志文件
。5.
如权利要求1所述的数据处理方法,其特征在于,所述基于所述目标表数据在所述内存中构建所述目标表数据文件对应的目标全量缓存数据之后,还包括:
响应于针...
【专利技术属性】
技术研发人员:毕鲁君,黄旭斌,陈凡,王升阳,叶章明,
申请(专利权)人:浙江正泰物联技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。