一种读取RAID的数据指针的方法、装置、设备及介质制造方法及图纸

技术编号:38105944 阅读:9 留言:0更新日期:2023-07-06 09:27
本发明专利技术提供了一种读取RAID的数据指针的方法、装置、设备及可读介质,方法包括:按照预设置的步进值将RAID中的所有条带进行分组,并将每个分组作为一个块以将RAID分成若干块;响应于接收到读取RAID中的数据指针的指令,依次读取每个块中的数据指针,并将读取到的数据指针进行存储。通过使用本发明专利技术的方案,能够解决当前读取内容在DDR中存放不连续的问题,能够解决一次性读取RAID阵列内所有数据指针导致的硬件资源冗余的问题。的硬件资源冗余的问题。的硬件资源冗余的问题。

【技术实现步骤摘要】
一种读取RAID的数据指针的方法、装置、设备及介质


[0001]本专利技术涉及计算机领域,并且更具体地涉及一种读取RAID的数据指针的方法、装置、设备及可读介质。

技术介绍

[0002]RAID技术将多个单独的物理硬盘以不同的方式组合成一个逻辑硬盘,从而提高了硬盘的读写性能和数据安全性。
[0003]在一些特殊处理场景,例如,需要把整个RAID阵列内的data_pointer(数据指针)全部读取上来时,由于RAID阵列盘数较多,且子条带个数较多,因此buffer(缓存)深度需要很大,才能一次放下整个阵列的data_pointer,这对硬件资源有一定的要求。在实际芯片中,一次读取整个阵列的data_pointer,无疑需要硬件具有较大的buffer,然而当RAID阵列的盘数较小,子条带个数较小时,较大的buffer无疑产生了资源及成本的浪费。

技术实现思路

[0004]有鉴于此,本专利技术实施例的目的在于提出一种读取RAID的数据指针的方法、装置、设备及可读介质,通过使用本专利技术的技术方案,能够解决当前读取内容在DDR中存放不连续的问题,能够解决一次性读取RAID阵列内所有数据指针导致的硬件资源冗余的问题。
[0005]基于上述目的,本专利技术的实施例的一个方面提供了一种读取RAID的数据指针的方法,包括以下步骤:
[0006]按照预设置的步进值将RAID中的所有条带进行分组,并将每个分组作为一个块以将RAID分成若干块(分块);
[0007]响应于接收到读取RAID中的数据指针的指令,依次读取每个块中的数据指针,并将读取到的数据指针进行存储。
[0008]根据本专利技术的一个实施例,响应于接收到读取RAID中的数据指针的指令,依次读取每个块中的数据指针,并将读取到的数据指针进行存储包括:
[0009]响应于接收到读取RAID中的数据指针的指令,将第一块中的数据指针读取到缓存中,并将缓存中的数据指针进行存储;
[0010]响应于缓存中的数据指针存储完成,释放缓存空间并将第二块中的数据指针读取到缓存中,并将缓存中的数据指针进行存储;
[0011]响应于缓存中的数据指针存储完成,释放缓存空间并继续读取下一个块中的数据指针,直到RAID中的数据指针全部读取完成。
[0012]根据本专利技术的一个实施例,还包括:
[0013]获取条带数量、磁盘数量、数据页大小、数据页起始偏移量和指向下一个数据页的指针;
[0014]根据数据页大小和数据页起始偏移量计算第一个数据页中存储的第一个数据指针的位置;
[0015]根据第一个数据指针的位置和数据页大小计算每个数据页中存储的数据指针。
[0016]根据本专利技术的一个实施例,响应于接收到读取RAID中的数据指针的指令,依次读取每个块中的数据指针,并将读取到的数据指针进行存储包括:
[0017]响应于接收到读取RAID中的数据指针的指令,根据第一个数据页中存储的第一个数据指针的位置和步进值读取第一块中第一个磁盘的数据指针;
[0018]根据条带数量和步进值计算需要跳过的数据指针的个数,在第一块中第一个磁盘的最后一个数据指针的下一个数据指针开始跳过对应个数个数据指针,并根据步进值读取第一块中第二个磁盘的数据指针,重复本步骤直到读取完第一块中所有磁盘的数据指针。
[0019]根据本专利技术的一个实施例,响应于接收到读取RAID中的数据指针的指令,依次读取每个块中的数据指针,并将读取到的数据指针进行存储包括:
[0020]响应于第一块中的数据指针全部读取完成,将读取的数据指针进行存储并释放对应的缓存空间;
[0021]响应于缓存空间释放完成,根据第一个数据页中存储的第一个数据指针的位置和步进值计算需要跳过的数据指针的个数,并从第一个数据指针开始跳过对应个数个数据指针,并根据步进值读取第二块中第一个磁盘的数据指针;
[0022]根据条带数量和步进值计算需要跳过的数据指针的个数,在第二块中第一个磁盘的最后一个数据指针的下一个数据指针开始跳过对应个数个数据指针,并根据步进值读取第二块中第二个磁盘的数据指针,重复本步骤直到读取完第二块中所有磁盘的数据指针。
[0023]根据本专利技术的一个实施例,响应于接收到读取RAID中的数据指针的指令,依次读取每个块中的数据指针,并将读取到的数据指针进行存储包括:
[0024]响应于上一个块中的数据指针全部读取完成,将读取的数据指针进行存储并释放对应的缓存空间;
[0025]响应于缓存空间释放完成,根据第一个数据页中存储的第一个数据指针的位置、步进值和块的编号计算需要跳过的数据指针的个数,并从第一个数据指针开始跳过对应个数个数据指针,并根据步进值读取块中第一个磁盘的数据指针;
[0026]根据条带数量、步进值和块的编号计算需要跳过的数据指针的个数,在块中第一个磁盘的最后一个数据指针的下一个数据指针开始跳过对应个数个数据指针,并根据步进值读取块中第二个磁盘的数据指针,重复本步骤直到读取完块中所有磁盘的数据指针;
[0027]重复上述步骤直到RAID中所有块的数据指针读取完成。
[0028]根据本专利技术的一个实施例,还包括:
[0029]将每个块读取数据指针的过程分为6个状态,状态1为读取的部分不跨数据页,状态2为读取的部分跨数据页,状态3为读取的部分结束在数据页尾,状态4为跳过的部分不跨数据页,状态5为跳过的部分跨数据页,状态6为跳过的部分结束在数据页尾。
[0030]本专利技术的实施例的另一个方面,还提供了一种读取RAID的数据指针的装置,装置包括:
[0031]划分模块,划分模块配置为按照预设置的步进值将RAID中的所有条带进行分组,并将每个分组作为一个块以将RAID分成若干块;
[0032]读取模块,读取模块配置为响应于接收到读取RAID中的数据指针的指令,依次读取每个块中的数据指针,并将读取到的数据指针进行存储。
[0033]本专利技术的实施例的另一个方面,还提供了一种计算机设备,该计算机设备包括:
[0034]至少一个处理器;以及
[0035]存储器,存储器存储有可在处理器上运行的计算机指令,指令由处理器执行时实现上述任意一项方法的步骤。
[0036]本专利技术的实施例的另一个方面,还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现上述任意一项方法的步骤。
[0037]本专利技术具有以下有益技术效果:本专利技术实施例提供的读取RAID的数据指针的方法,通过按照预设置的步进值将RAID中的所有条带进行分组,并将每个分组作为一个块以将RAID分成若干块;响应于接收到读取RAID中的数据指针的指令,依次读取每个块中的数据指针,并将读取到的数据指针进行存储的技术方案,能够解决当前读取内容在DDR中存放不连续的问题,能够解决一次性读取RAID阵列内所有数据指针导致的硬件资源冗余的问题。
附图说明
[0038]为本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种读取RAID的数据指针的方法,其特征在于,包括以下步骤:按照预设置的步进值将RAID中的所有条带进行分组,并将每个分组作为一个块以将RAID分成若干块;响应于接收到读取RAID中的数据指针的指令,依次读取每个块中的数据指针,并将读取到的数据指针进行存储。2.根据权利要求1所述的方法,其特征在于,响应于接收到读取RAID中的数据指针的指令,依次读取每个块中的数据指针,并将读取到的数据指针进行存储包括:响应于接收到读取RAID中的数据指针的指令,将第一块中的数据指针读取到缓存中,并将缓存中的数据指针进行存储;响应于缓存中的数据指针存储完成,释放缓存空间并将第二块中的数据指针读取到缓存中,并将缓存中的数据指针进行存储;响应于缓存中的数据指针存储完成,释放缓存空间并继续读取下一个块中的数据指针,直到RAID中的数据指针全部读取完成。3.根据权利要求1所述的方法,其特征在于,还包括:获取条带数量、磁盘数量、数据页大小、数据页起始偏移量和指向下一个数据页的指针;根据数据页大小和数据页起始偏移量计算第一个数据页中存储的第一个数据指针的位置;根据第一个数据指针的位置和数据页大小计算每个数据页中存储的数据指针。4.根据权利要求3所述的方法,其特征在于,响应于接收到读取RAID中的数据指针的指令,依次读取每个块中的数据指针,并将读取到的数据指针进行存储包括:响应于接收到读取RAID中的数据指针的指令,根据第一个数据页中存储的第一个数据指针的位置和步进值读取第一块中第一个磁盘的数据指针;根据条带数量和步进值计算需要跳过的数据指针的个数,在第一块中第一个磁盘的最后一个数据指针的下一个数据指针开始跳过对应个数个数据指针,并根据步进值读取第一块中第二个磁盘的数据指针,重复本步骤直到读取完第一块中所有磁盘的数据指针。5.根据权利要求4所述的方法,其特征在于,响应于接收到读取RAID中的数据指针的指令,依次读取每个块中的数据指针,并将读取到的数据指针进行存储包括:响应于第一块中的数据指针全部读取完成,将读取的数据指针进行存储并释放对应的缓存空间;响应于缓存空间释放完成,根据第一个数据页中存储的第一个数据指针的位置和步进值计算需要跳过的数据指针的个数,并从第一个数据指针开始跳过对应个数个数据指针,并根据步进值读取第二块中第一个磁盘的数据指针;...

【专利技术属性】
技术研发人员:孙波邵海波朱雷
申请(专利权)人:山东云海国创云计算装备产业创新中心有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1