[发明专利]一种在数据节点上回放日志的方法、数据节点及系统在审
| 申请号: | 202010615640.9 | 申请日: | 2020-06-30 |
| 公开(公告)号: | CN113868028A | 公开(公告)日: | 2021-12-31 |
| 发明(设计)人: | 张琼;李绪立;李鹤婷;姚戈勇;胡翔 | 申请(专利权)人: | 华为技术有限公司 |
| 主分类号: | G06F11/20 | 分类号: | G06F11/20 |
| 代理公司: | 深圳市深佳知识产权代理事务所(普通合伙) 44285 | 代理人: | 聂秀娜 |
| 地址: | 518129 广东*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 数据 节点 回放 日志 方法 系统 | ||
本申请实施例公开了一种在数据节点上回放日志的方法、数据节点及数据库系统。方法用于提高日志的回放速度。本申请实施例方法包括:数据节点获取多个日志,多个日志包括至少一个事务提交日志和至少一个页操作日志;至少一个页操作日志由多个线程中的第一线程回放,包含对同一页的操作的所有页面操作日志的回放由同一第二线程进行,所以线程间无需同步日志的回放进度;第一线程回放事务提交日志的过程与至少一个第二线程回放至少一个页面操作日志的过程是独立的,所以线程间也无需同步日志的回放进度,因此可以进一步加快回放速度。
技术领域
本申请实施例涉及数据库技术领域,尤其涉及一种在数据节点上回放日志的方法、数据节点及系统。
背景技术
为了保障服务器的正常运行,通常会在服务器中建立至少两个数据节点,一个数据节点作为主机,其他的数据节点作为备机。正常情况下,由主机提供数据业务,备机通过回放主机中事务的日志来保障与主机间的数据一致性。当主机故障或因其他原因关闭后,备机会升为主机,即由备机提供数据业务。
然而,若备机上存在未回放完的日志,则备机需要先回放完所有日志,才能提供数据业务。所以为了使得备机能够尽快提供数据服务,备机会将待回放的日志随机分配给多个线程,以通过多个线程并行回放日志来提高日志的回放速度。
在现有的回放日志的方法中,一个事务对应的所有日志回放完,才能回放下一个事务对应的日志,所以日志的回放速度仍不够快。
发明内容
本申请实施例提供了一种在数据节点上回放日志的方法、数据节点及数据库系统,该方法能够加快日志的回放速度。
本申请第一方面提供了一种在数据节点上回放日志的方法,其特征在于,数据节点上运行有多个线程;方法包括:
数据节点获取多个日志,多个日志包括至少一个事务提交日志和至少一个页操作日志,至少一个事务提交日志中的每个事务提交日志均包含事务提交操作,至少一个页操作日志中的每个页操作日志均包含对一个页的一个或多个操作。具体地,页操作日志中可以仅包含对特定页中一个行的插入操作;页操作日志中除了包含对特定页中一个行的插入操作外,还可以包含对该特定页中另一个行的删除操作;页操作日志中可以包含对特定页中两个行的插入操作,以及该特定页中一个行的删除操作。
数据节点通过多个线程中的第一线程回放至少一个事务提交日志,通常情况下,第一线程按照事务提交日志的日志序列号LSN依次回放至少一个事务提交日志。数据节点通过多个线程中的至少一个第二线程回放至少一个页操作日志,至少一个页操作日志中包含对同一页的操作的所有页操作日志由同一第二线程进行回放。其中,同一第二线程可以回放包含对不同页的操作的页操作日志。第一线程回放至少一个事务提交日志的过程与至少一个第二线程回放至少一个页操作日志的过程是独立的。
由于包含对同一页的操作的所有页面操作日志的回放由同一第二线程进行,所以线程间无需同步日志的回放进度,相比于包含对同一页的操作的所有页面操作日志的回放由多个第二线程进行,能够加快日志的回放速度;第一线程回放事务提交日志的过程与任一第二线程回放页面操作日志的过程是独立的,所以即使当前事务对应的事务提交日志未回放完成,也可以回放下一个事务对应的页面操作日志,因此可以进一步加快回放速度。
在一种实现方式下,数据节点获取多个日志包括:从缓冲区中获取至少一个事务提交日志和至少一个操作日志;数据节点以页为粒度解析至少一个操作日志,以得到至少一个页操作日志,至少一个操作日志中的每个操作日志均包含对一个或多个页的操作;至少一个页操作日志包括第一页操作日志,第一页操作日志的日志序列号LSN与解析得到第一页操作日志的操作日志的LSN相同。
相比于从数据存储器中读取日志,从缓冲区中读取多个日志可以减少数据存储器的输入/输出I/O次数,能够加快日志读取速度,从而加快日志回放的速度;并且该实现方式提供了获取页操作日志的一种可行方案。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010615640.9/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





