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

技术编号:35468746 阅读:19 留言:0更新日期:2022-11-05 16:13
本申请涉及一种数据处理方法、装置、计算机设备和存储介质,该方法包括:计算机设备调用计算服务节点接收数据库操作请求,若数据库操作请求为数据写入请求,则基于数据写入请求构建预写日志;调用存储服务节点对预写日志进行划分,得到多个预写日志片段,并对多个预写日志片段进行存储处理。本方案中,将数据库中的存储服务与计算服务隔离,降低存储服务与计算服务的耦合性,在进行数据读/写过程中,减少对数据库性能的影响,此外,本方案在对数据库进行数据写过程中只传输构建的预写日志,不传输数据,大大降低了传输数据量,在存储预写日志的过程中,对预写日志进行划分存储,提升了数据快速恢复的能力,优化了数据库的写性能。优化了数据库的写性能。优化了数据库的写性能。

【技术实现步骤摘要】
数据处理方法、装置、计算机设备和存储介质


[0001]本申请涉及计算机
,特别是涉及一种数据处理方法、装置、计算 机设备和存储介质。

技术介绍

[0002]随着互联网的飞速发展,所产生的数据量以几何的模式增长。数据量大、 数据种类多的现象对数据库的性能要求越来越高。
[0003]传统数据库的数据写入和数据存储耦合在数据库引擎中,且传统数据库在 执行写数据的过程中,需要将数据文件、日志文件、重做日志redo log等文件进 行同步数据处理。
[0004]上述传统数据库数据处理过程中涉及的数据量较大,导致数据库在数据处 理过程中耗时增大,数据处理效率较低。

技术实现思路

[0005]基于此,有必要针对上述技术问题,提供一种能够提高数据库数据处理效 率的数据处理方法、装置、计算机设备和存储介质。
[0006]第一方面,本申请提供了一种数据处理方法,包括:
[0007]调用计算服务节点接收数据库操作请求,若数据库操作请求为数据写入请 求,则基于数据写入请求构建预写日志;
[0008]调用存储服务节点对预写日志进行划分,得到多个预写日志片段,并对多 个预写日志片段进行存储处理。
[0009]在本实施例中,将数据库中的存储服务与计算服务隔离,降低存储服务与 计算服务的耦合性,在进行数据读/写过程中,减少对数据库性能的影响,此外, 本方案中,在对数据库进行数据写过程中只传输构建的预写日志,不传输数据 本身,大大降低了传输数据量,且,在存储预写日志的过程中,对预写日志进 行划分存储,提升了数据快速恢复的能力,优化了数据库的写性能。
[0010]在其中一个可选的实施例中,存储服务节点包括多个存储节点;调用存储 服务节点对预写日志进行划分,得到多个预写日志片段,并对多个预写日志片 段进行存储处理,包括:
[0011]根据预写日志中写入数据与存储节点之间的对应关系,对预写日志进行划 分,得到与各存储节点对应的预写日志片段;
[0012]将各预写日志片段存储至对应的各存储节点中。
[0013]在本实施例中,根据数据划分规则对wal进行划分存储,减少写入存储节 点的数据量。
[0014]在其中一个可选的实施例中,存储节点包括预写日志片段文件、数据文件 和数据缓存;对多个预写日志片段进行存储处理,包括:
[0015]根据预设的排序规则,将各预写日志片段依次存储至各存储节点对应的预 写日志片段文件中;
[0016]按照预设的第一操作频率,从各预写日志片段文件中读取对应的预写日志 片段,将预写日志片段重放至各存储节点的数据文件和数据缓存中。
[0017]在本实施例中,存储服务节点可以基于本地wal segment中的wal片段实现 数据文件与数据缓存中wal片段的重放,无需跨节点,避免网络开销,也提高 了wal片段重放的效率。
[0018]在其中一个可选的实施例中,按照预设的第一操作频率,从各预写日志片 段文件中读取对应的预写日志片段,将预写日志片段重放至各存储节点的数据 文件和数据缓存中,包括:
[0019]针对每一个存储节点,按照第一操作频率,获取预写日志片段文件中第一 预写日志片段的第一序列号、数据文件中第二预写日志片段的第二序列号、数 据缓存中第三预写日志片段的第三序列号;
[0020]根据第一序列号、第二序列号以及第三序列号,将第一预写日志片段重放 至各存储节点的数据文件和数据缓存中。
[0021]在本实施例中,存储服务节点可以基于本地wal segment中的wal片段的序 列号实现数据文件与数据缓存中最新wal片段的重放,实现了数据的一致性, 且,无需跨节点,也提高了wal片段重放的效率。
[0022]在其中一个可选的实施例中,根据第一序列号、第二序列号以及第三序列 号,将第一预写日志片段重放至各存储节点的数据文件和数据缓存中,包括:
[0023]在第一序列号大于第二序列号的情况下,将第一预写日志片段文件重放至 数据文件中;
[0024]在第一序列号大于第三序列号的情况下,将第一预写日志片段文件重放至 数据缓存中。
[0025]在本实施例中,通过对数据文件和数据缓存的wal片段重放操作,可以保 证数据缓存中的wal片段为最新数据,保证数据的一致性和有效性。
[0026]在其中一个可选的实施例中,该方法还包括:
[0027]根据预设的副本数量,将当前存储节点中的预写日志片段,同步至其他存 储节点中。
[0028]在本实施例中,在接收到从节点的同步响应之后,便可向计算服务节点返 回数据写入成功的响应,不需要等到存储服务节点完成wal持久化、wal重放等 处理,提高了数据库的写性能。
[0029]在其中一个可选的实施例中,该方法还包括:
[0030]获取当前存储节点的预写日志片段的有效副本数量;
[0031]在有效副本数量小于预设的副本数量的情况下,基于有效副本数量和预设 的副本数量,计算所需副本数量;
[0032]确定所需副本数量的其他存储节点为候选存储节点,将当前存储节点的预 写日志片段同步至候选存储节点中。
[0033]在本实施例中,存储服务节点可以及时有效地管理副本数量,实现各个存 储节点
的预写日志片段的有效副本,提高了数据恢复的效率。
[0034]在其中一个可选的实施例中,该方法还包括,
[0035]在数据库操作请求为数据读取请求的情况下,调用存储服务节点根据数据 读取请求中携带的数据标识,获取与数据标识对应的数据页;
[0036]并将数据页返回至计算服务节点。
[0037]在本实施例中,存储服务节点可以基于数据标识从存储服务节点中获取对 应的数据页返回至计算服务节点,提高了数据读取的效率。
[0038]第二方面,本申请还提供了一种数据处理装置。装置包括:
[0039]计算服务模块,用于接收数据库操作请求,在数据库操作请求为数据写入 请求的情况下,基于数据写入请求构建预写日志;
[0040]存储服务模块,用于对预写日志进行划分,得到多个预写日志片段,并对 多个预写日志片段进行存储处理。
[0041]第三方面,本申请还提供了一种计算机设备。计算机设备包括存储器和处 理器,存储器存储有计算机程序,处理器执行计算机程序时实现以下第一方面 提供的方法。
[0042]第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存 储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现第一方 面提供的方法。
[0043]第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品, 包括计算机程序,该计算机程序被处理器执行时实现第一方面提供的方法。
[0044]上述数据处理方法、装置、计算机设备和存储介质,计算机设备调用计算 服务节点接收数据库操作请求,若数据库操作请求为数据写入请求,则基于数 据写入请求构建本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据处理方法,其特征在于,所述方法包括:调用计算服务节点接收数据库操作请求,若所述数据库操作请求为数据写入请求,则基于所述数据写入请求构建预写日志;调用存储服务节点对所述预写日志进行划分,得到多个预写日志片段,并对所述多个预写日志片段进行存储处理。2.根据权利要求1所述的方法,其特征在于,所述存储服务节点包括多个存储节点;所述调用存储服务节点对所述预写日志进行划分,得到多个预写日志片段,并对所述多个预写日志片段进行存储处理,包括:根据所述预写日志中写入数据与存储节点之间的对应关系,对所述预写日志进行划分,得到与各所述存储节点对应的预写日志片段;将各所述预写日志片段存储至对应的各所述存储节点中。3.根据权利要求2所述的方法,其特征在于,所述存储节点包括预写日志片段文件、数据文件和数据缓存;所述对所述多个预写日志片段进行存储处理,包括:根据预设的排序规则,将各所述预写日志片段依次存储至各所述存储节点对应的预写日志片段文件中;按照预设的第一操作频率,从各所述预写日志片段文件中读取对应的预写日志片段,将所述预写日志片段重放至各所述存储节点的数据文件和数据缓存中。4.根据权利要求3所述的方法,其特征在于,所述按照预设的第一操作频率,从各所述预写日志片段文件中读取对应的预写日志片段,将所述预写日志片段重放至各所述存储节点的数据文件和数据缓存中,包括:针对每一个所述存储节点,按照所述第一操作频率,获取所述预写日志片段文件中第一预写日志片段的第一序列号、所述数据文件中第二预写日志片段的第二序列号、所述第三数据缓存中预写日志片段的第三序列号;根据所述第一序列号、所述第二序列号以及所述第三序列号,将所述第一预写日志片段重...

【专利技术属性】
技术研发人员:狄静舒宋怀明郭庆
申请(专利权)人:曙光信息产业北京有限公司
类型:发明
国别省市:

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

1