[发明专利]一种数据页处理方法、装置及系统在审
申请号: | 202010956140.1 | 申请日: | 2020-09-11 |
公开(公告)号: | CN112100141A | 公开(公告)日: | 2020-12-18 |
发明(设计)人: | 王天宇 | 申请(专利权)人: | 北京金山云网络技术有限公司 |
主分类号: | G06F16/172 | 分类号: | G06F16/172;G06F16/18;G06F16/23;G06F16/27 |
代理公司: | 北京华夏泰和知识产权代理有限公司 11662 | 代理人: | 沈园园 |
地址: | 100085 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 处理 方法 装置 系统 | ||
本申请涉及一种数据页处理方法、装置及系统。该技术方案中,当出现热点数据,主节点频繁更新数据页时,不必等待所有从节点均完成对数据页的当前变更,只要所有从节点均至少缓存了上一次持久化的数据页,主节点就可持久化当前变更后的数据页了。这样,将主节点对当前变更后数据页的持久化与所有从节点完成该数据页的当前变更解耦,使得即便出现热点数据更新,主节点的检查点事件也可以持续推进,执行数据页持久化操作,后续对数据页的更新也可正常执行,避免数据库发生异常。
技术领域
本申请涉及数据库技术领域,尤其涉及一种数据页处理方法、装置及系统。
背景技术
在数据库应用中,采用计算存储分离架构,多个计算节点共享存储层数据。为了应对巨大的数据访问量的问题,计算节点通常会采用主从复制(Primary-Replica)的架构。主节点负责数据的写入,从节点通过从存储层获取重做日志RedoLog的方式同步主节点的数据更新。目前,主节点对于更新后的数据页Page,需要在所有从节点完成对该数据页的更新后才能执行持久化操作。
但是,当出现对同一数据页的频繁修改时,组从节点之间多次同步修改对应的重做日志,从节点不断应用重做日志同步数据页变更。由于主从节点之间存在同步延迟,当修改频繁时,持久化条件一直无法满足,主节点就不能对更新后的数据页进行持久化,这样,主节点的检查点CheckPoint事件推进异常。并且,从节点由于不断应用重做日志同步数据页更新,强制缓存队列Force_Cache_List链表持续增加,页面淘汰机制失效,严重消耗从节点大量内存。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本申请实施例提供了一种数据页处理方法、装置及系统。
根据本申请实施例的一个方面,提供了一种数据页持久化方法,包括:
接收从节点发送的第一应用日志序号,所述第一应用日志序号由所述从节点应用第一数据页对应的第一重做日志后得到;
从所有所述从节点发送的第一应用日志序号中确定最小应用日志序号;
当确定所述最小应用日志序号大于或等于上一次数据页持久化操作对应的第一持久化日志序号时,将当前变更操作后的第二数据页标识为可持久化。
可选的,所述方法还包括:
当进行对数据页的第一变更操作后,得到第一数据页,将所述第一变更操作对应的第一重做日志写入存储层;
生成第一通知消息,所述通知消息包括所述第一重做日志在所述存储层中的第一偏移量;
将所述第一通知消息发送到所述从节点,由所述从节点根据所述第一偏移量从所述存储层读取所述第一重做日志,对所述第一重做日志进行应用后得到所述第一数据页,生成第一应用日志序号,并将所述第一数据页加入到所述从节点的强制缓存队列。
可选的,所述方法还包括:
当对所述第二数据页的持久化操作执行完毕后,生成包括所述第二数据页对应的数据页标识及第二持久化日志序号的数据页淘汰指令;
将所述数据页淘汰指令发送到所述从节点。
可选的,所述将当前变更操作后的第二数据页标识为可持久化,包括:
将所述第二数据页对应的持久化标识置为有效;
所述方法还包括:
当对所述第二数据页的持久化操作执行完毕后,将所述持久化标识清零。
根据本申请实施例的另一个方面,提供了一种数据页处理方法,包括:
接收主节点对第二数据页持久化操作后发送的数据页淘汰指令,所述数据页淘汰指令包括第二数据页对应的数据页标识及第二持久化日志序号;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京金山云网络技术有限公司,未经北京金山云网络技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010956140.1/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置