本发明专利技术公开了一种分布式块存储数据处理方法、装置、介质与电子设备。其中,该方法包括:引入最新持久化内存替代DRAM或SSD作为缓存,将客户端写入主设备的缓存数据写两副本,实时将主设备持久化内存缓存的数据复制到备设备持久化内存缓存上;业务IO首先写入缓存中,然后再写入日志队列,分布式缓存聚合小IO成大IO,存储到后端慢介质;对目标器上应用进行优化,引入了应用直连模式,在主备切换时,从用户空间以类似内存的方式直接操作持久化内存上的数据,提升应用加载速度。通过本发明专利技术实施例提供的技术方案,提高了数据复制备份的效率,提升数据存储性能及可靠性,在发生故障主备切换时,减少数据恢复过程及整体切换时间消耗。减少数据恢复过程及整体切换时间消耗。减少数据恢复过程及整体切换时间消耗。
【技术实现步骤摘要】
一种分布式块存储数据处理方法、装置、设备及存储介质
[0001]本专利技术涉及分布式存储系统中,块数据处理
,尤涉及一种分布式块存储数据处理方法、装置、设备及存储介质。
技术介绍
[0002]ISCSI(Internet Small Computer System Interface),Internet小型计算机系统接口,又称为IP
‑
SAN,是一种基于因特网及SCSI
‑
3协议下的存储技术。当前一般通过ISCSI技术来访问分布式存储集群目标器上的块设备,目标器通常是主备部署,通过主备的方式来提升可靠性。主设备上处理业务请求,当主设备出故障时,会切换到备设备。同时为提升性能,使用动态随机存取存储器或固态硬盘对数据进行缓存。业务数据先缓存到动态随机存取存储器或固态硬盘中,达到一定的条件后,将数据落盘存储。
[0003]专利技术人发现,在上述场景中,存在以下问题:
[0004]1)数据读写性能和数据可靠性无法有效平衡。使用动态随机存取存储器对数据进行缓存时,当主设备故障或掉电时,动态随机存取存储器的数据会丢失。使用固态硬盘进行缓存,虽能解决数据丢失问题,但固态硬盘读写速率相对较差,业务性能不好。
[0005]2)主备切换时间较久。当主设备故障,业务切换到备设备时,备设备服务从磁盘中读取数据到动态随机存取存储器,数据恢复过程及整体切换过程的时间消耗较大。
[0006]需要说明的是,在上述
技术介绍
部分公开的信息仅用于加强对本专利技术背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
技术实现思路
[0007]有鉴于此,本专利技术实施例提供了一种分布式块存储数据处理方法、装置、设备及存储介质,以解决上述技术问题。
[0008]第一方面,本专利技术实施例提供了一种分布式块存储数据处理方法,应用于包含主设备和备设备的分布式存储系统架构,其中,所述主设备和所述备设备上均部署有持久化内存,所述持久化内存中的数据用于被所述分布式存储系统架构的对应的客户端直接调用,供所述客户端进行数据读写操作,所述方法包括:
[0009]接收客户端写入所述主设备的缓存数据;
[0010]将所述缓存数据写入到所述主设备的持久化内存中,同时将所述缓存数据写入待同步日志队列中,其中,所述待同步日志队列中包含有用于写入所述备设备的持久化内存中的缓存数据;
[0011]依次将所述待同步日志队列中的缓存数据同步到所述备设备的持久化内存中;
[0012]当所述主设备的持久化内存中的缓存数据达到预设阈值时,将所述主设备的持久化内存中的数据刷盘存储;
[0013]在将所述缓存数据写入到所述主设备的持久化内存和将所述缓存数据写入待同步日志队列的过程中,基于持久化内存的高速缓存页将所述缓存数据进行IO合并,并将合
并的数据写入到对应的存储块中;
[0014]在接收到所述客户端读数据请求时,根据所述请求从所述主设备的持久化内存上读取目标数据;
[0015]在所述主设备出现异常时,所述客户端直接从所述备设备的持久化内存上读取缓存数据。
[0016]在一个实施方式中,所述依次将所述待同步日志队列中的缓存数据同步到所述备设备的持久化内存中,包括:
[0017]将所述缓存数据写入待同步日志队列中,以等待向所述备设备的持久化内存中写入所述缓存数据;
[0018]在将所述缓存数据从所述待同步日志队列中写入到所述备设备之后,所述备设备将写成功应答消息,写入到已同步日志队列中,依次发送给所述主设备。
[0019]在一个实施方式中,所述方法还包括:
[0020]在接收到客户端删除数据的请求后,主设备获取待删除数据标识将所述待删除数据标识写入到待删除日志队列中;
[0021]利用所述待删除日志队列中的标识信息依次删除所述备设备的持久化内存中的相应数据。
[0022]在一个实施方式中,所述方法还包括:
[0023]在所述备设备的持久化内存上已经删除数据之后,向所述主设备返的删除应答消息,所述删除应答消息用于表示所述备设备的持久化内存上与所述标识对应的数据已经删除。
[0024]在一个实施方式中,所述方法还包括:
[0025]判断所述备设备的持久化内存上缓存的数据是否达到预设阈值,当所述备设备的持久化内存中的缓存数据达到所述预设阈值时,将所述备设备的持久化内存中的数据刷盘存储。
[0026]第二方面,本专利技术实施例还提供一种分布式块存储数据处理装置,应用于包含主设备和备设备的分布式存储系统架构,其中,所述主设备和所述备设备上均部署有持久化内存,所述持久化内存中的数据用于被所述分布式存储系统架构的对应的客户端直接调用,供所述客户端进行数据读写操作,所述装置包括:
[0027]接收模块,用于接收客户端写入所述主设备的缓存数据;
[0028]双分模块,用于将所述缓存数据写入到所述主设备的持久化内存中,同时将所述缓存数据写入待同步日志队列中,其中,所述待同步日志队列中包含有用于写入所述备设备的持久化内存中的缓存数据;
[0029]同步模块,用于依次将所述待同步日志队列中的缓存数据同步到所述备设备的持久化内存中;
[0030]刷盘模块,用于当所述主设备的持久化内存中的缓存数据达到预设阈值时,将所述主设备的持久化内存中的数据刷盘存储;
[0031]合并模块,用于在将所述缓存数据写入到所述主设备的持久化内存和将所述缓存数据写入待同步日志队列的过程中,基于持久化内存的高速缓存页将所述缓存数据进行IO合并,并将合并的数据写入到对应的存储块中;
[0032]切换模块,用于在接收到所述客户端读数据请求时,根据所述请求从所述主设备的持久化内存上读取目标数据;
[0033]加载模块,用于在所述主设备出现异常时,所述客户端直接从所述备设备的持久化内存上读取缓存数据。
[0034]在一个实施方式中,所述同步模块,包括:
[0035]预写单元,用于将所述缓存数据写入待同步日志队列中,以等待向所述备设备的持久化内存中写入所述缓存数据;
[0036]写入单元,用于在将所述缓存数据从所述待同步日志队列中写入到所述备设备之后,所述备设备将写成功应答消息,写入到已同步日志队列中,依次发送给所述主设备。
[0037]在一个实施方式中,所述装置还包括:
[0038]预删单元,用于在接收到客户端删除数据的请求后,主设备获取待删除数据标识将所述待删除数据标识写入到待删除日志队列中;
[0039]删除单元,用于利用所述待删除日志队列中的标识信息依次删除所述备设备的持久化内存中的相应数据。
[0040]第三方面,本专利技术实施例还提供一种计算机设备,包括:存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而实现第一方面任一项所述的分布式块存储数据处理方法。
...
【技术保护点】
【技术特征摘要】
1.一种分布式块存储数据处理方法,其特征在于,应用于包含主设备和备设备的分布式存储系统架构,其中,所述主设备和所述备设备上均部署有持久化内存,所述持久化内存中的数据用于被所述分布式存储系统架构的对应的客户端直接调用,供所述客户端进行数据读写操作,所述方法包括:接收客户端写入所述主设备的缓存数据;将所述缓存数据写入到所述主设备的持久化内存中,同时将所述缓存数据写入待同步日志队列中,其中,所述待同步日志队列中包含有用于写入所述备设备的持久化内存中的缓存数据;依次将所述待同步日志队列中的缓存数据同步到所述备设备的持久化内存中;当所述主设备的持久化内存中的缓存数据达到预设阈值时,将所述主设备的持久化内存中的数据刷盘存储;在将所述缓存数据写入到所述主设备的持久化内存和将所述缓存数据写入待同步日志队列的过程中,基于持久化内存的高速缓存页将所述缓存数据进行IO合并,并将合并的数据写入到对应的存储块中;在接收到所述客户端读数据请求时,根据所述请求从所述主设备的持久化内存上读取目标数据;在所述主设备出现异常时,所述客户端直接从所述备设备的持久化内存上读取缓存数据。2.根据权利要求1所述的分布式块存储数据处理方法,其特征在于,所述依次将所述待同步日志队列中的缓存数据同步到所述备设备的持久化内存中,包括:将所述缓存数据写入待同步日志队列中,以等待向所述备设备的持久化内存中写入所述缓存数据;在将所述缓存数据从所述待同步日志队列中写入到所述备设备之后,所述备设备将写成功应答消息,写入到已同步日志队列中,依次发送给所述主设备。3.根据权利要求1所述的分布式块存储数据处理方法,其特征在于,还包括:在接收到客户端删除数据的请求后,主设备获取待删除数据标识将所述待删除数据标识写入到待删除日志队列中;利用所述待删除日志队列中的标识信息依次删除所述备设备的持久化内存中的相应数据。4.根据权利要求3所述的分布式块存储数据处理方法,其特征在于,还包括:在所述备设备的持久化内存上已经删除数据之后,向所述主设备返的删除应答消息,所述删除应答消息用于表示所述备设备的持久化内存上与所述标识对应的数据已经删除。5.根据权利要求1所述的分布式块存储数据处理方法,其特征在于,还包括:判断所述备设备的持久化内存上缓存的数据是否达到预设阈值,当所述备设备的持久化内存中的缓存数据达到所述预设阈值时,将所述备设备的持久化内存中的数据刷盘存储。6.一种分布式块存储数据处理装置,其特征在于,应用于包含主设备和备设...
【专利技术属性】
技术研发人员:吴文峰,肖露,林洁琬,黄鹄,张维杰,颜嘉伟,何彦东,陈杰,
申请(专利权)人:天翼云科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。