[发明专利]基于IOURING技术的数据库WAL落盘方法及系统在审
| 申请号: | 202210117884.3 | 申请日: | 2022-02-08 |
| 公开(公告)号: | CN114490856A | 公开(公告)日: | 2022-05-13 |
| 发明(设计)人: | 梁波;贾德星;张炜刚 | 申请(专利权)人: | 山东浪潮科学研究院有限公司 |
| 主分类号: | G06F16/25 | 分类号: | G06F16/25;G06F9/50;G06F9/46 |
| 代理公司: | 济南信达专利事务所有限公司 37100 | 代理人: | 孙园园 |
| 地址: | 250100 山东省济*** | 国省代码: | 山东;37 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 基于 iouring 技术 数据库 wal 方法 系统 | ||
本发明公开了一种基于IOURING技术的数据库WAL落盘方法及系统,属于数据库技术领域,本发明要解决的技术问题为如何利用IOURING技术降低CPU消耗,提升IO性能,采用的技术方案为:该方法是通过使用生产者消费者模式处理WAL落盘,生产者为提供日志数据的事务线程;消费者为一个将日志数据真正落盘的线程,使用DIRECTIO模式打开log文件,IOURING的系统调用方式异步写入数据,并在日志数据写入成功后唤醒相应的事务线程继续处理。
技术领域
本发明涉及数据库技术领域,具体地说是一种基于IOURING技术的数据库WAL落盘方法及系统。
背景技术
WAL(Write Ahead Log)预写日志,是数据库系统中常见的一种手段,用于保证数据操作的原子性和持久性,是关系数据库系统中用于提供原子性和持久性的一系列技术。在使用WAL的数据库系统中,所有的修改在提交之前都要先写入log文件中。WAL的写入能力决定了数据库整体性能的上限,尤其是在高并发时。许多先辈在提供数据存储性能上绞尽脑汁提升磁盘的读写。
在经典的计算机体系中,外部存储设备与CPU之间的性能差距很大,因此充分利用CPU周期来优化外部存储设备的访问是一个很有效的权衡。但是,在按块寻地址的SSD存储设备上运行的最先进的LSM KV存储引擎时,发现CPU是瓶颈,而不再是存储设备。
Linux操作系统中有很多方法可以执行基于文件的IO,最古老和基本的是read和write系统调用。后来又添加了允许传入偏移量、矢量、修饰符标志的系统调用。他们相同的特征是都是同步接口。这意味着只有当数据准备就绪或者写入完成了,这些系统调用才会返回。
IOURING是Linux 5.1中引入的一套新的系统调用接口,用于支持异步IO,提供了一种可以与内核高性能交互的模式。故如何利用IOURING技术降低CPU消耗,提升IO性能是目前亟待解决的技术问题。
发明内容
本发明的技术任务是提供一种基于IOURING技术的数据库WAL落盘方法及系统,来解决如何利用IOURING技术降低CPU消耗,提升IO性能的问题。
本发明的技术任务是按以下方式实现的,一种基于IOURING技术的数据库WAL落盘方法,该方法是通过使用生产者消费者模式处理WAL落盘,生产者为提供日志数据的事务线程;消费者为一个将日志数据真正落盘的线程,使用DIRECTIO模式打开log文件,IOURING的系统调用方式异步写入数据,并在日志数据写入成功后唤醒相应的事务线程继续处理。
作为优选,日志数据的处理流程具体如下:
(一)、每次log文件切换(关闭当前文件,创建新的log文件)时,将上次的日志数据与信号量列表清除,关闭上次的log文件;其中,一个log文件(操作系统中存储WAL数据的文件)对应一个日志数据与信号量列表;
(二)、创建新的log文件以及日志数据与信号量列表;其中,创建新的log文件时,使用direct io模式打开该log文件;
(三)、数据库系统启动时,启动一个落盘线程;
(四)、从日志数据和信号量列表中按照顺序读取需要落盘的日志数据;
(五)、日志数据落盘:将数据写入存储设备;
(六)、通过信号量唤醒日志数据对应的事务线程;
(七)、判断数据库系统是否关闭:
①、若是,则落盘线程结束;
②、若否,则跳转至步骤(四)。
更优地,事务线程是在应用程序更新或插入数据库系统数据的线程,具体如下:
(1)、生成日志数据;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东浪潮科学研究院有限公司,未经山东浪潮科学研究院有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210117884.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种球团矿余热和烧结矿余热联合脱硝装置及方法
- 下一篇:直线运动台





