不使用快照的首次数据同步方法、系统、设备及存储介质与流程
- 国知局
- 2024-11-06 14:37:15
本发明属于数据容灾备份,涉及一种不使用快照的首次数据同步方法、系统、设备及存储介质。
背景技术:
1、实时同步指的是数据在创建或修改后立即被复制到另一个位置或系统的过程。这种同步可以是在同一网络中,也可以是跨网络或跨地理位置进行。实时同步的目的是确保数据的一致性和可用性,即使在原始数据源发生故障时也能快速恢复。
2、首次数据同步是实时同步方案中的第一个步骤,其目的是将生产端的初始数据完整的同步到服务端中。在首次数据同步的过程中,生产端仍在不断地产生io,数据会不停的更新,为了保证同步数据的一致性,通常会采用快照技术来进行首次数据同步,然而快照文件势必会占用生产端一定的存储空间,同时并不是所有场景的磁盘类型都支持快照功能。而现有技术中,在实时同步下不使用快照的首次数据同步技术又几乎没有。
3、因此,如何帮助客户在没有快照功能的情况下完成首次数据同步,且节约生产端的存储空间,是当前急需解决的技术问题。
技术实现思路
1、本发明为了解决上述背景技术中的技术问题,提供一种不使用快照的首次数据同步方法、系统、设备及存储介质。
2、本发明解决上述技术问题的技术方案如下:
3、第一个方面,提供了一种不使用快照的首次数据同步方法,所述方法,包括步骤:
4、在内存创建磁盘的首次同步表,首次同步表的元素与磁盘的数据块一一对应,元素记录数据块的首次同步进行状态;
5、在io过滤驱动中设置首次同步线程、io阻塞线程和io下发线程;
6、当首次同步线程正在执行且产生了对磁盘的写io请求时,判断写目标数据块数据是否完成同步,若是,则由io下发线程下发该写io请求;若否,则io阻塞线程获得写io请求,并阻止写io请求下发;
7、根据写io请求,io阻塞线程从磁盘读取写目标数据块数据,再发送读取的数据,执行过程中即时更新首次同步表上对应元素的首次同步进度状态并将写io请求转移给io下发线程;
8、io下发线程轮询首次同步表,若查询到写目标数据块首次同步完毕,则发送并下发写io请求。
9、第二个方面,提供了一种不使用快照的首次数据同步系统,所述系统包括:
10、创建首次同步表模块,用于在内存创建磁盘的首次同步表,首次同步表的元素与磁盘的数据块一一对应,元素记录数据块的首次同步进行状态;
11、设置线程模块,用于在io过滤驱动中设首次同步线程、io阻塞线程和io下发线程;
12、阻塞写io请求模块,用于当首次同步线程正在执行且产生了对磁盘的写io请求时,判断写目标数据块数据是否完成同步,若是,则由io下发线程下发该写io请求;若否,则io阻塞线程获得写io请求,并阻止写io请求下发;
13、发送写目标数据模块,用于根据写io请求,io阻塞线程从磁盘读取写目标数据块数据,再发送读取的数据,执行过程中即时更新首次同步表上对应元素的首次同步进度状态并将写io请求转移给io下发线程;
14、轮询及下发写io请求模块,用于io下发线程轮询首次同步表,若查询到写目标数据块首次同步完毕,则发送并下发写io请求。
15、第三个方面,提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一项所述的不使用快照的首次数据同步方法。
16、第四个方面,提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述不使用快照的首次数据同步方法。
17、本发明的有益效果是:
18、首次同步任务一旦开启,首次同步线程便依次读取磁盘上的各个数据块,不过由于首次同步是一个耗时的过程,在此期间生产端势必有新的io请求产生,修改磁盘上的数据,此时通过引入io阻塞线程和io下发线程,对新的写io请求进行提前处理,并在首次同步表做好记录、按时下发已经处理了的写io请求,在不使用快照的情况下,实现了首次同步,保证了首次同步期间的数据一致性,减少占用生产端储存空间。
技术特征:1.一种不使用快照的首次数据同步方法,其特征在于,所述方法,包括步骤:
2.根据权利要求1所述的不使用快照的首次数据同步方法,其特征在于,所述当首次同步线程正在执行且产生了对磁盘的写io请求时,判断写目标数据块数据是否完成同步步骤,还包括:
3.根据权利要求1所述的不使用快照的首次数据同步方法,其特征在于,所述根据写io请求,io阻塞线程从磁盘读取写目标数据块数据,再发送读取的数据,执行过程中即时更新首次同步表上对应元素的首次同步进度状态并将写io请求转移给io下发线程步骤,还包括:
4.根据权利要求3所述的不使用快照的首次数据同步方法,其特征在于,所述当io阻塞线程读取写目标数据块数据完毕,io阻塞线程将读取到的数据封装插入发送队列,然后将首次同步表上对应元素的首次同步进度状态即时调整为首次同步完毕步骤,还包括:
5.根据权利要求1所述的不使用快照的首次数据同步方法,其特征在于,还包括:
6.一种不使用快照的首次数据同步系统,其特征在于,所述系统包括:
7.根据权利要求6所述的不使用快照的首次数据同步系统,其特征在于,所述发送写目标数据模块,还包括:
8.根据权利要求6所述的不使用快照的首次数据同步系统,其特征在于,所述系统还包括:
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至5中任一项所述的不使用快照的首次数据同步方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至5任一项所述的不使用快照的首次数据同步方法。
技术总结本发明涉及一种不使用快照的首次数据同步方法、系统、设备及存储介质,属于数据容灾备份技术领域。所述方法包括步骤:创建磁盘的首次同步表;在IO过滤驱动中设首次同步线程、IO阻塞线程和IO下发线程;当首次同步线程执行且系统产生磁盘写请求时,IO阻塞线程拦截写请求,从磁盘读取目标数据块,同时更新首次同步表的进度状态;IO下发线程检查首次同步表,一旦确认数据块同步完成,则释放写请求。所述系统包括:创建首次同步表模块;设置线程模块;阻塞写IO请求模块;发送写目标数据模块;轮询及下发写IO请求模块。本发明在不使用快照的情况下,实现了首次同步,保证了首次同步期间的数据一致性,减少占用生产端储存空间。技术研发人员:黄传波,洪杰鑫,王东,杨亮,杨咏雪,周钰寒受保护的技术使用者:成都云祺科技有限公司技术研发日:技术公布日:2024/11/4本文地址:https://www.jishuxx.com/zhuanli/20241106/323139.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表