CN104636266A - 盖瓦磁记录硬盘、盖瓦磁记录硬盘写数据的方法及装置 - Google Patents
盖瓦磁记录硬盘、盖瓦磁记录硬盘写数据的方法及装置 Download PDFInfo
- Publication number
- CN104636266A CN104636266A CN201510064669.1A CN201510064669A CN104636266A CN 104636266 A CN104636266 A CN 104636266A CN 201510064669 A CN201510064669 A CN 201510064669A CN 104636266 A CN104636266 A CN 104636266A
- Authority
- CN
- China
- Prior art keywords
- data
- written
- band
- write
- hard disk
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
本发明实施例提供一种SMR硬盘、SMR硬盘写数据的方法及装置,其中,所述SMR硬盘包括多个磁轨带band,所述方法包括:接收第一写数据指令,所述第一写数据指令包括第一待写入数据和所述第一待写入数据对应的关键字,并且,所述第一写数据指令不包括所述第一待写入数据的地址;从所述多个band中选择第一目标band;将所述第一待写入数据写入所述第一目标band中;保存所述第一待写入数据对应的关键字与所述第一待写入数据写入所述第一目标band的地址之间的对应关系,以用于所述SMR硬盘根据所述第一待写入数据对应的关键字以及所述对应关系获得所述第一待写入数据。
Description
技术领域
本发明实施例涉及计算机技术,尤其涉及一种盖瓦磁记录(ShingledMagnetic Recording,简称SMR)硬盘、SMR硬盘写数据的方法及装置。
背景技术
SMR硬盘是一种采用SMR技术的大容量硬盘,能够提升硬盘的磁记录密度达1-2倍以上,可以将硬盘的单盘容量提升1-2倍以上。
与传统硬盘的磁轨(Track)排布不同,现有技术的SMR硬盘的Track是依次覆盖的,因此,SMR硬盘在写入数据时只能按照Track从小到大的顺序的方向依次顺序写入;同时,SMR硬盘中的所有Track被分组形成许多独立的磁轨带(band),每个band包含的扇区(Sector)的个数相同。这种设计可以实现band之间的随机写入,但是band内只支持顺序写入,导致现有技术的SMR硬盘在band内的写性能较差。
发明内容
本发明实施例提供一种SMR硬盘、SMR硬盘写数据的方法及装置,提高SMR硬盘的写性能。
第一方面,本发明实施例提供一种SMR硬盘写数据的方法,其中,所述SMR硬盘包括多个磁轨带band,所述方法包括:
接收第一写数据指令,所述第一写数据指令包括第一待写入数据和所述第一待写入数据对应的关键字,并且,所述第一写数据指令不包括所述第一待写入数据的地址;
从所述多个band中选择第一目标band;
将所述第一待写入数据写入所述第一目标band中;
保存所述第一待写入数据对应的关键字与所述第一待写入数据写入所述第一目标band的地址之间的对应关系,以用于所述SMR硬盘根据所述第一待写入数据对应的关键字以及所述对应关系获得所述第一待写入数据
根据第一方面,在第一方面的第一种可能的实现方式中,所述从所述多个band中选择一个第一目标band包括:
根据所述第一待写入数据的大小从所述多个band中选择一个第一目标band。
根据第一方面,在第一方面的第二种可能的实现方式中,所述从所述多个band中选择一个第一目标band包括:
从所述多个band中顺序选择一个第一目标band。
根据第一方面,在第一方面的第三种可能的实现方式中,所述第一写数据指令还包括所述第一待写入数据的属性;
所述从所述多个band中选择一个第一目标band包括:根据所述第一待写入数据的属性从所述多个band中选择一个第一目标band。
根据第一方面,在第一方面的第四种可能的实现方式中,所述方法还包括:
接收第二写数据指令,所述第二写数据指令包括第二待写入数据和所述第二待写入数据对应的关键字,并且,所述第二写数据指令不包括所述第二待写入数据的地址;
确定所述第二待写入数据对应的关键字与所述第一待写入数据对应的关键字相同;
从所述多个band中选择第二目标band,所述第二目标band不同于所述第一目标band;
将所述第二待写入数据写入所述第二目标band中;
保存所述第二待写入数据对应的关键字与所述第二待写入数据写入所述第二目标band的地址之间的对应关系;
删除所述第一待写入数据对应的关键字与所述第一待写入数据写入所述第一目标band的地址之间的对应关系;
将所述第一待写入数据标记为无效数据。
根据第一方面的第四种可能的实现方式,在第一方面的第五种可能的实现方式中,还包括:
从所述多个band中选择第三目标band;
将所述第一目标band中未标记为无效数据的数据写入所述第三目标band中;
清除所述第一目标band中的所有数据。
第二方面,本发明实施例提供一种盖瓦磁记录SMR硬盘写数据的装置,其中,所述SMR硬盘包括多个磁轨带band,所述装置包括:
接收模块,用于接收第一写数据指令,所述第一写数据指令包括第一待写入数据和所述第一待写入数据对应的关键字,并且,所述第一写数据指令不包括所述第一待写入数据的地址;
处理模块,用于从所述多个band中选择第一目标band;
写入模块,用于将所述接收模块接收到的所述第一写数据指令包括的所述第一待写入数据写入所述第一目标band中;
保存模块,用于保存所述第一待写入数据对应的关键字与所述第一待写入数据写入所述第一目标band的地址之间的对应关系,以用于所述SMR硬盘根据所述第一待写入数据对应的关键字以及所述对应关系获得所述第一待写入数据。
根据第二方面,在第二方面的第一种可能的实现方式中,所述处理模块具体用于:根据所述第一待写入数据的大小从所述多个band中选择一个第一目标band。
根据第二方面,在第二方面的第二种可能的实现方式中,所述处理模块具体用于:从所述多个band中顺序选择一个第一目标band。
根据第二方面,在第二方面的第三种可能的实现方式中,所述第一写数据指令还包括所述第一待写入数据的属性;
所述处理模块具体用于:根据所述第一待写入数据的属性从所述多个band中选择一个第一目标band。
根据第二方面,在第二方面的第四种可能的实现方式中,所述接收模块,还用于接收第二写数据指令,所述第二写数据指令包括第二待写入数据和所述第二待写入数据对应的关键字,并且,所述第二写数据指令不包括所述第二待写入数据的地址;
所述处理模块,还用于确定所述第二待写入数据对应的关键字与所述第一待写入数据对应的关键字相同;
所述处理模块,还用于从所述多个band中选择第二目标band,所述第二目标band不同于所述第一目标band;
所述写入模块,还用于将所述接收模块接收到的所述第二写数据指令包括的所述第二待写入数据写入所述第二目标band中;
所述保存模块,还用于保存所述第二待写入数据对应的关键字与所述第二待写入数据写入所述第二目标band的地址之间的对应关系;
所述保存模块,还用于删除所述第一待写入数据对应的关键字与所述第一待写入数据写入所述第一目标band的地址之间的对应关系;
所述处理模块,还用于将所述第一待写入数据标记为无效数据。
根据第二方面的第四种可能的实现方式,在第二方面的第五种可能的实现方式中,所述处理模块,还用于从所述多个band中选择第三目标band;
所述写入模块,还用于将所述第一目标band中未标记为无效数据的数据写入所述第三目标band中;
所述处理模块,还用于清除所述第一目标band中的所有数据。
第三方面,本发明实施例提供一种盖瓦磁记录SMR硬盘,其中,所述SMR硬盘包括上述第二方面任意所述的SMR硬盘写数据的装置。
采用本发明实施例提供的SMR硬盘、SMR硬盘写数据的方法及装置,SMR硬盘接收到的第一写数据指令中包括第一待写入数据和所述第一待写入数据对应的关键字,并且,所述第一写数据指令不包括所述第一待写入数据的地址,SMR硬盘在多个band中为第一待写入数据选择目标band并进行数据写入,在本发明实施例中第一写数据指令不包括所述第一待写入数据的地址,因此SMR硬盘可以自己决定存储所述第一待写入数据的目标band,在将所述第一待写入数据写入第一目标band之后再保存所述第一待写入数据对应的关键字与所述第一待写入数据写入所述第一目标band的地址之间的对应关系,以用于所述SMR硬盘根据所述第一待写入数据对应的关键字以及所述对应关系获得所述第一待写入数据。由于SMR硬盘可以自行决定保存所述第一待写入数据的第一目标band,因此SMR可以随机写入所述第一待写入数据,从而提高了写数据性能。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的SMR硬盘写数据的方法的流程图;
图2为本发明实施例提供的将待写入数据写入SMR硬盘的原理图;
图3为本发明实施例提供的将待写入数据写入SMR硬盘的另一原理图;
图4为本发明实施例提供的将待写入数据写入SMR硬盘的又一原理图;
图5A为本发明实施例提供的SMR硬盘更新数据的原理图;
图5B为本发明实施例提供的SMR硬盘更新数据的另一原理图;
图6为本发明实施例提供的盖瓦磁记录SMR硬盘写数据的装置的结构示意图;
图7为本发明实施例提供的盖瓦磁记录SMR硬盘的结构示意图;
图8为本发明实施例提供的另一种盖瓦磁记录SMR硬盘的结构示意图;
图9为本发明实施例提供的另一种SMR硬盘写数据的方法的流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
SMR硬盘是一种采用SMR技术的大容量硬盘,相比于传统硬盘,SMR硬盘的Track是依次覆盖的,因此,SMR硬盘在写入数据时只能按照Track从小到大的顺序的方向依次顺序写入;同时,SMR硬盘中的所有Track被分组形成许多独立的磁轨带(band),每个band包含的扇区(Sector)的个数相同,且各band之间是分离的,因而可以实现band之间的随机写入,但是band内只支持顺序写入,导致现有技术的SMR硬盘在band内的写性能较差。
图1为本发明实施例提供的SMR硬盘写数据的方法的流程图。所述SMR硬盘包括多个磁轨带band。如图1所示,所述方法包括:
101、接收第一写数据指令,所述第一写数据指令包括第一待写入数据和所述第一待写入数据对应的关键字,并且,所述第一写数据指令不包括所述第一待写入数据的地址;
102、从所述多个band中选择第一目标band;
103、将所述第一待写入数据写入所述第一目标band中;
104、保存所述第一待写入数据对应的关键字与所述第一待写入数据写入所述第一目标band的地址之间的对应关系。
所述方法可以应用于网络附属存储(Network Attached Storage,简称NAS)、云存储等场景。所述方法的执行主体为SMR硬盘写数据的装置,所述SMR硬盘写数据的装置设置于所述SMR硬盘。所述第一写数据指令由主机发送给SMR硬盘。所述第一待写入数据的大小由主机确定,可以是KB级的,也可以是GB级的。
现有技术的SMR硬盘(现有SMR硬盘)是一种块设备,在写入数据时,由主机决定待写入数据在现有SMR硬盘中的写入顺序及存储地址,主机在发送给现有SMR硬盘的写入指令中,携带该待写入数据及主机指定的该待写入数据在现有SMR硬盘中的存储地址,使得现有SMR硬盘写性能较差。
与现有技术的SMR硬盘写入数据的方法相比,本发明实施例提供的SMR硬盘写数据的方法,主机在发送给SMR硬盘的第一写数据指令中包括第一待写入数据和所述第一待写入数据对应的关键字,并且,所述第一写数据指令不包括所述第一待写入数据的地址,SMR硬盘在多个band中为第一待写入数据选择目标band并进行数据写入,从而由SMR硬盘自己决定主机发送的第一待写入数据的写入顺序及存储地址,提高了SMR硬盘的写性能,也提高了SMR硬盘的读性能。
在上述实施例的基础上,主机访问SMR硬盘时,主机向SMR硬盘发送读数据指令,所述读数据指令中包括所述第一待写入数据对应的关键字;所述SMR硬盘根据所述第一待写入数据对应的关键字以及所述对应关系获得所述第一待写入数据。
可选的,在上述实施例的基础上,所述从所述多个band中选择一个第一目标band的实现方式至少包括以下一种:
方式1、SMR硬盘从所述多个band中顺序选择一个第一目标band。
具体地,图2为本发明实施例提供的将待写入数据写入SMR硬盘的原理图。图2示出了某个SMR硬盘的三个band,分别为band A、band B及bandC,待写入数据1、2、3、4和5的编号也表示了各待写入数据的I/O顺序。SMR硬盘按照各待写入数据的I/O顺序(编号),依次将待写入数据1、待写入数据2、待写入数据3、待写入数据4、及待写入数据5写入到所述SMR硬盘的band A-band C。
方式2、SMR硬盘根据所述第一待写入数据的大小从所述多个band中选择一个第一目标band。
具体地,根据所述第一待写入数据的大小、及所述多个band各自的可用大小,选择第一目标band。图3为本发明实施例提供的将待写入数据写入SMR硬盘的另一原理图。图3示出了某个SMR硬盘的三个band,分别为band A、band B及band C,待写入数据1、2、3、4和5的编号也表示了各待写入数据的I/O顺序。SMR硬盘根据band A、band B及band C的可用大小,对各待写入数据进行组合以匹配到大小合适的band。
方式3、所述第一写数据指令还包括所述第一待写入数据的属性;SMR硬盘根据所述第一待写入数据的属性从所述多个band中选择一个第一目标band。其中,所述属性可以为时间属性或分区信息等,本发明并不以此为限。
具体地,图4为本发明实施例提供的将待写入数据写入SMR硬盘的又一原理图。图4示出了某个SMR硬盘的三个band,分别为band A、band B及band C,待写入数据1、2、3、4和5的编号也表示了各待写入数据的I/O顺序。其中,待写入数据1和待写入数据5的属性相同,待写入数据3和待写入数据4的属性相同,待写入数据2与其他待写入数据的属性均不同。SMR硬盘将待写入数据1和待写入数据5依次写入band A,将待写入数据3和待写入数据4依次写入band C,将待写入数据写入band B。
实际中,将待写入数据写入SMR硬盘的过程,可以根据不同的情况或业务场景在以上方式中选择。
可选的,在上述实施例的基础上,在将所述第一待写入数据写入所述第一目标band中之后,SMR硬盘更新数据的方式可以为:
接收第二写数据指令,所述第二写数据指令包括第二待写入数据和所述第二待写入数据对应的关键字,并且,所述第二写数据指令不包括所述第二待写入数据的地址;
确定所述第二待写入数据对应的关键字与所述第一待写入数据对应的关键字相同;
从所述多个band中选择第二目标band,所述第二目标band不同于所述第一目标band;
将所述第二待写入数据写入所述第二目标band中;
保存所述第二待写入数据对应的关键字与所述第二待写入数据写入所述第二目标band的地址之间的对应关系;
删除所述第一待写入数据对应的关键字与所述第一待写入数据写入所述第一目标band的地址之间的对应关系;
将所述第一待写入数据标记为无效数据。
具体地,在更新数据时,SMR硬盘为第二待写入数据(更新的数据)分配新的存储位置,将所述第二待写入数据存储到所述分配的存储位置,同时将第一待写入数据标记为无效。以将band A中数据1更新为数据1’的实现过程为例。图5A为本发明实施例提供的SMR硬盘更新数据的原理图。图5B为本发明实施例提供的SMR硬盘更新数据的另一原理图。图5A示出了在band X上分配存储地址,及将数据1’写入到band X上;图5B示出了在成功将数据1’写入到band X上之后,将band A上的数据1置为无效数据,例如通过删除(delete命令),等待回收。
上述对数据的更新过程,实际上也是在新的位置重新写入更新后的数据的过程。将待写入数据写入SMR硬盘的过程参见上述说明。
现有技术以LBA对应的大小固定的数据块为最小数据存储单元,在一个由Track n、Track n+1及Track n+2组成的band内,若主机需要对Track n上的LBA进行更新时,需要把Track n+1及Track n+2的数据读到内存中,然后再按照Track n、Track n+1及Track n+2的顺序依次写入,导致现有的SMR硬盘在band内的写性能较低。
相比于现有技术,本发明实施例中SMR硬盘更新数据的过程,不需要与内存进行数据交互,提高SMR硬盘的写性能。
随着SMR硬盘上数据的不断更新和写入,SMR硬盘的band内就会出现许多无效数据的空洞,对SMR硬盘的读取性能和空间利用率带来影响。为此,本发明实施例提供了对SMR硬盘内部的无效数据进行数据回收的方法。可选的,在上述实施例的基础上,SMR硬盘可以对所述SMR硬盘的任一band内的无效数据进行数据回收,以提高SMR硬盘的读性能和空间利用率。数据回收操作也可在SMR硬盘后台自动完成。
可选的,SMR硬盘对band A内的无效数据进行数据回收的方法,至少包括以下一种:
回收方式1、在band内进行回收:将所述band A内的所有未标记为无效数据的数据拷贝到所述SMR硬盘的预先配置的存储区域或内存中;将所述band A内的数据全部清除;将所述SMR硬盘的预先配置的存储区域或内存中的数据写入到所述band A。
回收方式2、在band间进行回收:从所述多个band中选择第三目标band;将所述第一目标band中未标记为无效数据的数据写入所述第三目标band中;清除所述第一目标band中的所有数据。
图6为本发明实施例提供的盖瓦磁记录SMR硬盘写数据的装置的结构示意图。所述SMR硬盘包括多个磁轨带band。如图6所示,本实施例提供的SMR硬盘写数据的装置600,包括:
接收模块601,用于接收第一写数据指令,所述第一写数据指令包括第一待写入数据和所述第一待写入数据对应的关键字,并且,所述第一写数据指令不包括所述第一待写入数据的地址;
处理模块602,用于从所述多个band中选择第一目标band;
写入模块603,用于将所述接收模块601接收到的所述第一写数据指令包括的所述第一待写入数据写入所述第一目标band中;
保存模块604,用于保存所述第一待写入数据对应的关键字与所述第一待写入数据写入所述第一目标band的地址之间的对应关系,以用于所述SMR硬盘根据所述第一待写入数据对应的关键字以及所述对应关系获得所述第一待写入数据。
本实施例提供的SMR硬盘写数据的装置600,可以用于执行图1所示SMR硬盘写数据的方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
可选的,所述处理模块602具体用于:根据所述第一待写入数据的大小从所述多个band中选择一个第一目标band。
可选的,所述处理模块602具体用于:从所述多个band中顺序选择一个第一目标band。
可选的,所述第一写数据指令还包括所述第一待写入数据的属性;
所述处理模块602具体用于:根据所述第一待写入数据的属性从所述多个band中选择一个第一目标band。
可选的,所述接收模块601,还用于接收第二写数据指令,所述第二写数据指令包括第二待写入数据和所述第二待写入数据对应的关键字,并且,所述第二写数据指令不包括所述第二待写入数据的地址;
所述处理模块602,还用于确定所述第二待写入数据对应的关键字与所述第一待写入数据对应的关键字相同;
所述处理模块602,还用于从所述多个band中选择第二目标band,所述第二目标band不同于所述第一目标band;
所述写入模块603,还用于将所述接收模块接收到的所述第二写数据指令包括的所述第二待写入数据写入所述第二目标band中;
所述保存模块604,还用于保存所述第二待写入数据对应的关键字与所述第二待写入数据写入所述第二目标band的地址之间的对应关系;
所述保存模块604,还用于删除所述第一待写入数据对应的关键字与所述第一待写入数据写入所述第一目标band的地址之间的对应关系;
所述处理模块602,还用于将所述第一待写入数据标记为无效数据。
进一步,所述处理模块602,还用于从所述多个band中选择第三目标band;
所述写入模块603,还用于将所述第一目标band中未标记为无效数据的数据写入所述第三目标band中;
所述处理模块602,还用于清除所述第一目标band中的所有数据。
图7为本发明实施例提供的盖瓦磁记录SMR硬盘的结构示意图。如图7所示,本发明实施例提供的SMR硬盘700包括:SMR硬盘写数据的装置701,其中,所述SMR硬盘写数据的装置701可以采用图6所示SMR硬盘写数据的装置。
图8是本发明实施例提供的一种SMR硬盘的硬件结构示意图。如图8所示,所述SMR硬盘主要包括处理器518、缓存516、通信总线(简称总线)514、读/写数据通道515和存储介质60。其中,存储介质60包括多个band。处理器518、缓存516以及读/写数据通道(Read/Write data channel)515通过通信总线514完成相互间的通信。
处理器518可能是一个中央处理器CPU,或者是特定集成电路ASIC(Application Specific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。在本发明实施例中,处理器518可以用于接收来自主机的各种数据处理请求,例如读数据请求、写数据请求、修改数据请求等等。其中,主机可以是服务器或台式计算机等终端设备。在主机内部,安装有操作***以及其他应用程序。举例来说,处理器518可用于执行图1所示的SMR硬盘写数据的方法,以及图2-图5B任一所示的实施方式。
缓存516用于缓存从主机接收的数据或从SMR硬盘的band中读取的数据。缓存520可以是RAM、ROM、闪存(Flash memory)或固态存储器(SolidState Disk,SSD)等各种可以存储数据的非短暂性的(non-transitory)机器可读介质,在此不做限定。
另外,缓存516还用于保存图6或图7所示的盖瓦磁记录硬盘写数据的装置。
读/写数据通道515用于将处理器518发出的电信号转化为磁信号,并将磁信号发送给band,以实现将数据写入band或者从band中读取数据。
现有的SMR硬盘在写入数据时,由主机决定待写入数据在现有SMR硬盘中的写入顺序及存储地址,主机在发送给现有SMR硬盘的写入指令中,携带该待写入数据及主机指定的该待写入数据在现有SMR硬盘中的存储地址,使得现有SMR硬盘执行写入指令时只能按照主机指定的存储地址存储数据,其存储方式不够灵活,导致写性能较差。
与现有技术的SMR硬盘写入数据的方法相比,本发明实施例提供的SMR硬盘写数据的方法,主机在发送给SMR硬盘的第一写数据指令中包括第一待写入数据和所述第一待写入数据对应的关键字,并且,所述第一写数据指令不包括所述第一待写入数据的地址,SMR硬盘在多个band中为第一待写入数据选择目标band并进行数据写入,从而由SMR硬盘自己决定主机发送的第一待写入数据的写入顺序及存储地址,提高了SMR硬盘的写性能。写入之后再保存所述第一待写入数据对应的关键字与所述第一待写入数据写入所述第一目标band的地址之间的对应关系,以方便后续读取数据。
另外,在实际应用中,主机发送给SMR硬盘的写数据请求中除了携带待写入数据之外,还可以携带所述待写入数据的属性信息。所述属性信息可以是主机的标识或主机中运行的应用程序的标识或用户的标识或文件的标识或时间信息等。具体的,用户可以在主机中配置需要的属性信息。通常情况下,用户可以配置一个属性信息,也就是主机发送的写数据请求中可以携带一个属性信息。
其中,所述主机的标识用于标识发送数据处理请求的主机,来自同一个主机的数据处理请求中携带的所述标识相同。
所述主机中运行的应用程序的标识,用于标识触发所述数据处理请求的应用程序,来自同一个应用程序的数据处理请求中携带的所述标识相同。
所述用户的标识,用于标识触发所述数据处理请求的用户,来自同一个用户的数据处理请求中携带的所述标识相同。
所述文件的标识,用于标识所述数据处理请求对应的文件,例如,如果所述数据处理请求是读数据请求,所述数据处理请求对应的文件是指待读取的数据所在的文件;如果所述数据处理请求是写数据请求,所述数据处理请求对应的文件是指待写入的数据将要写入的文件。
所述时间信息是指主机发送所述数据处理请求的时间,可以是时刻,也可以是代表一段时间的字符串,本实施例不对所述时间信息的形式做任何限定。
所述SMR硬盘接收写数据请求之后,可以根据所述写数据请求中携带的属性信息,将属性信息相同的待写入数据写入同一个band中。
为此,请参考图9,图9是本发明实施例提供的一种SMR硬盘写数据的方法,所述方法可以应用在图8所示的SMR硬盘中,由处理器518执行。所述方法包括如下步骤。
在步骤S901中,接收写数据请求,所述写数据请求包括待写入数据,所述待写入数据对应的key以及所述待写入数据的属性信息。
在步骤S902中,根据所述属性信息以及属性信息与band之间的对应关系,确定目标band。
在本实施例中,属性信息与band之间具有对应关系。一种可选的实施方式是,所述对应关系是在所述SMR硬盘初始化的时候建立的,也就是说预先规定每个band应该存储什么属性信息的数据。将所述预先建立的对应关系保存下来之后可以根据所述待写入数据的属性信息以及所述对应关系,确定所述待写入数据将要写入的band。另一种可选的实施方式是,也可以不预先确定每个band应该存储什么属性信息的数据,待一个band第一次写入数据之后,将所述数据的属性信息确定为所述band的属性,并保存属性信息与band之间的对应关系。后续如果再接收其他待写入数据,则可以根据所述待写入数据的属性信息以及所述对应关系,确定所述待写入数据将要写入的band。
以所述属性信息是主机的标识为例,所述属性信息与band之间的对应关系可以如下表所示:
当所述待写入数据对应的主机的标识是0000a时,选择编号0的band;当所述待写入数据对应的主机的标识是0000b时,选择编号1的band;依此类推。
在步骤S903中,将所述待写入数据写入所述目标band中。
在步骤S904中,保存所述待写入数据对应的key与所述待写入数据写入所述目标band的地址之间的对应关系。
由于所述写数据请求中没有携带所述待写入数据的地址,因此在将所述待写入数据写入目标band之后,需要记录写入的地址与所述key之间的对应关系,以用于后续根据所述key以及所述待写入数据对应的key与所述待写入数据写入所述目标band的地址之间的对应关系读取所述待写入数据。本实施例在接收写数据请求时,可以根据待写入数据的属性信息,以及属性信息与band之间的对应关系选择目标band,将所述待写入数据写入所述目标band中。由此,可以将具有相同属性的待写入数据存储同一个band中。
由于具有相同属性的数据(即,前面描述的待写入数据)被同时读取的可能性较高,因此将具有相同属性的数据存储同一个band中,读取数据的时候可以从同一个band中顺序地将数据出来,与将相同属性的数据随机地保存在不同band中相比,本发明实施例的读性能更高。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (24)
1.一种盖瓦磁记录SMR硬盘写数据的方法,其特征在于,所述SMR硬盘包括多个磁轨带band,所述方法包括:
接收第一写数据指令,所述第一写数据指令包括第一待写入数据和所述第一待写入数据对应的关键字,并且,所述第一写数据指令不包括所述第一待写入数据的地址;
从所述多个band中选择第一目标band;
将所述第一待写入数据写入所述第一目标band中;
保存所述第一待写入数据对应的关键字与所述第一待写入数据写入所述第一目标band的地址之间的对应关系,以用于所述SMR硬盘根据所述第一待写入数据对应的关键字以及所述对应关系获得所述第一待写入数据。
2.根据权利要求1所述的方法,其特征在于,所述从所述多个band中选择一个第一目标band包括:
根据所述第一待写入数据的大小从所述多个band中选择一个第一目标band。
3.根据权利要求1所述的方法,其特征在于,所述从所述多个band中选择一个第一目标band包括:
从所述多个band中顺序选择一个第一目标band。
4.根据权利要求1所述的方法,其特征在于,所述第一写数据指令还包括所述第一待写入数据的属性;
所述从所述多个band中选择一个第一目标band包括:根据所述第一待写入数据的属性从所述多个band中选择一个第一目标band。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收第二写数据指令,所述第二写数据指令包括第二待写入数据和所述第二待写入数据对应的关键字,并且,所述第二写数据指令不包括所述第二待写入数据的地址;
确定所述第二待写入数据对应的关键字与所述第一待写入数据对应的关键字相同;
从所述多个band中选择第二目标band,所述第二目标band不同于所述第一目标band;
将所述第二待写入数据写入所述第二目标band中;
保存所述第二待写入数据对应的关键字与所述第二待写入数据写入所述第二目标band的地址之间的对应关系;
删除所述第一待写入数据对应的关键字与所述第一待写入数据写入所述第一目标band的地址之间的对应关系;
将所述第一待写入数据标记为无效数据。
6.根据权利要求5所述的方法,其特征在于,还包括:
从所述多个band中选择第三目标band;
将所述第一目标band中未标记为无效数据的数据写入所述第三目标band中;
清除所述第一目标band中的所有数据。
7.一种盖瓦磁记录SMR硬盘写数据的装置,其特征在于,所述SMR硬盘包括多个磁轨带band,所述装置包括:
接收模块,用于接收第一写数据指令,所述第一写数据指令包括第一待写入数据和所述第一待写入数据对应的关键字,并且,所述第一写数据指令不包括所述第一待写入数据的地址;
处理模块,用于从所述多个band中选择第一目标band;
写入模块,用于将所述接收模块接收到的所述第一写数据指令包括的所述第一待写入数据写入所述第一目标band中;
保存模块,用于保存所述第一待写入数据对应的关键字与所述第一待写入数据写入所述第一目标band的地址之间的对应关系,以用于所述SMR硬盘根据所述第一待写入数据对应的关键字以及所述对应关系获得所述第一待写入数据。
8.根据权利要求7所述的装置,其特征在于,所述处理模块具体用于:根据所述第一待写入数据的大小从所述多个band中选择一个第一目标band。
9.根据权利要求7所述的装置,其特征在于,所述处理模块具体用于:从所述多个band中顺序选择一个第一目标band。
10.根据权利要求7所述的装置,其特征在于,所述第一写数据指令还包括所述第一待写入数据的属性;
所述处理模块具体用于:根据所述第一待写入数据的属性从所述多个band中选择一个第一目标band。
11.根据权利要求7所述的装置,其特征在于,
所述接收模块,还用于接收第二写数据指令,所述第二写数据指令包括第二待写入数据和所述第二待写入数据对应的关键字,并且,所述第二写数据指令不包括所述第二待写入数据的地址;
所述处理模块,还用于确定所述第二待写入数据对应的关键字与所述第一待写入数据对应的关键字相同;
所述处理模块,还用于从所述多个band中选择第二目标band,所述第二目标band不同于所述第一目标band;
所述写入模块,还用于将所述接收模块接收到的所述第二写数据指令包括的所述第二待写入数据写入所述第二目标band中;
所述保存模块,还用于保存所述第二待写入数据对应的关键字与所述第二待写入数据写入所述第二目标band的地址之间的对应关系;
所述保存模块,还用于删除所述第一待写入数据对应的关键字与所述第一待写入数据写入所述第一目标band的地址之间的对应关系;
所述处理模块,还用于将所述第一待写入数据标记为无效数据。
12.根据权利要求11所述的装置,其特征在于,
所述处理模块,还用于从所述多个band中选择第三目标band;
所述写入模块,还用于将所述第一目标band中未标记为无效数据的数据写入所述第三目标band中;
所述处理模块,还用于清除所述第一目标band中的所有数据。
13.一种盖瓦磁记录SMR硬盘,其特征在于,包括如权利要求7-12任一所述的SMR硬盘写数据的装置。
14.一种盖瓦磁记录SMR硬盘写数据的方法,其特征在于,所述SMR硬盘包括多个磁轨带band,所述方法包括:
接收写数据请求,所述写数据请求包括待写入数据,所述待写入数据对应的关键字以及所述待写入数据的属性信息;
根据所述待写入数据的属性信息以及band与属性信息之间的对应关系,从所述多个band中确定目标band;
将所述待写入数据写入所述目标band中;
保存所述待写入数据对应的关键字与所述待写入数据写入所述目标band的地址之间的对应关系。
15.根据权利要求14所述的方法,其特征在于,所述方法还包括:预先建立所述band与属性信息之间的对应关系。
16.根据权利要求14或15所述的方法,其特征在于,所述待写入数据的属性信息至少包括以下信息中的任意一项:主机的标识,主机中运行的应用程序的标识,用户的标识,文件的标识和时间信息。
17.一种盖瓦磁记录SMR硬盘,其特征在于,所述SMR硬盘包括处理器和存储介质,所述存储介质包括多个band;
所述处理器,用于接收第一写数据指令,所述第一写数据指令包括第一待写入数据和所述第一待写入数据对应的关键字,并且,所述第一写数据指令不包括所述第一待写入数据的地址;
从所述多个band中选择第一目标band;
将所述第一待写入数据写入所述第一目标band中;
保存所述第一待写入数据对应的关键字与所述第一待写入数据写入所述第一目标band的地址之间的对应关系,以用于所述SMR硬盘根据所述第一待写入数据对应的关键字以及所述对应关系获得所述第一待写入数据。
18.根据权利要求17所述的硬盘,其特征在于,
所述处理器,具体用于根据所述第一待写入数据的大小从所述多个band中选择一个第一目标band。
19.根据权利要求17所述的硬盘,其特征在于,
所述处理器,具体用于从所述多个band中顺序选择一个第一目标band。
20.根据权利要求17所述的硬盘,其特征在于,
所述处理器,还用于接收第二写数据指令,所述第二写数据指令包括第二待写入数据和所述第二待写入数据对应的关键字,并且,所述第二写数据指令不包括所述第二待写入数据的地址;
确定所述第二待写入数据对应的关键字与所述第一待写入数据对应的关键字相同;
从所述多个band中选择第二目标band,所述第二目标band不同于所述第一目标band;
将所述第二待写入数据写入所述第二目标band中;
保存所述第二待写入数据对应的关键字与所述第二待写入数据写入所述第二目标band的地址之间的对应关系;
删除所述第一待写入数据对应的关键字与所述第一待写入数据写入所述第一目标band的地址之间的对应关系;
将所述第一待写入数据标记为无效数据。
21.根据权利要求20所述的硬盘,其特征在于,
所述处理器,还用于从所述多个band中选择第三目标band;
将所述第一目标band中未标记为无效数据的数据写入所述第三目标band中;
清除所述第一目标band中的所有数据。
22.一种盖瓦磁记录SMR硬盘,其特征在于,所述SMR硬盘包括处理器和存储介质,所述存储介质包括多个band;
所述处理器,用于接收写数据请求,所述写数据请求包括待写入数据,所述待写入数据对应的关键字以及所述待写入数据的属性信息;
根据所述待写入数据的属性信息以及band与属性信息之间的对应关系,从所述多个band中确定目标band;
将所述待写入数据写入所述目标band中;
保存所述待写入数据对应的关键字与所述待写入数据写入所述目标band的地址之间的对应关系。
23.根据权利要求22所述的硬盘,其特征在于,
所述处理器,还用于预先建立所述band与属性信息之间的对应关系。
24.根据权利要求22或23所述的硬盘,其特征在于,所述待写入数据的属性信息至少包括以下信息中的任意一项:主机的标识,主机中运行的应用程序的标识,用户的标识,文件的标识和时间信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510064669.1A CN104636266B (zh) | 2014-05-09 | 2015-02-05 | 盖瓦磁记录硬盘、盖瓦磁记录硬盘写数据的方法及装置 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2014101957405 | 2014-05-09 | ||
CN201410195740.5A CN103955433A (zh) | 2014-05-09 | 2014-05-09 | 盖瓦磁记录硬盘、盖瓦磁记录硬盘写数据的方法及装置 |
CN201510064669.1A CN104636266B (zh) | 2014-05-09 | 2015-02-05 | 盖瓦磁记录硬盘、盖瓦磁记录硬盘写数据的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104636266A true CN104636266A (zh) | 2015-05-20 |
CN104636266B CN104636266B (zh) | 2016-03-30 |
Family
ID=51332708
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410195740.5A Pending CN103955433A (zh) | 2014-05-09 | 2014-05-09 | 盖瓦磁记录硬盘、盖瓦磁记录硬盘写数据的方法及装置 |
CN201510064669.1A Active CN104636266B (zh) | 2014-05-09 | 2015-02-05 | 盖瓦磁记录硬盘、盖瓦磁记录硬盘写数据的方法及装置 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410195740.5A Pending CN103955433A (zh) | 2014-05-09 | 2014-05-09 | 盖瓦磁记录硬盘、盖瓦磁记录硬盘写数据的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN103955433A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105491101A (zh) * | 2015-11-17 | 2016-04-13 | 华为技术有限公司 | 数据的处理方法和装置 |
CN105808163A (zh) * | 2016-02-29 | 2016-07-27 | 华为技术有限公司 | 一种访问叠瓦式磁记录smr硬盘的方法及服务器 |
CN108021513A (zh) * | 2016-11-02 | 2018-05-11 | 杭州海康威视数字技术股份有限公司 | 一种数据存储方法及装置 |
CN114579049A (zh) * | 2022-02-14 | 2022-06-03 | 阿里巴巴(中国)有限公司 | 存储数据的调整方法、装置、电子设备和存储介质 |
US11681444B2 (en) | 2020-03-30 | 2023-06-20 | Beijing Baidu Netcom Science Technology Co., Ltd. | Shingled magnetic disk management method for data isolation by space files, apparatus, and electronic device |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104461390B (zh) * | 2014-12-05 | 2017-10-24 | 华为技术有限公司 | 将数据写入叠瓦状磁记录smr硬盘的方法及装置 |
CN106293497B (zh) * | 2015-05-27 | 2019-03-19 | 华为技术有限公司 | 瓦记录感知文件***中垃圾数据的回收方法和装置 |
CN105677243B (zh) * | 2015-12-31 | 2018-12-28 | 华为技术有限公司 | 数据写入装置及方法 |
CN107315533A (zh) * | 2016-04-26 | 2017-11-03 | 杭州海康威视数字技术股份有限公司 | 一种数据存储方法及装置 |
CN106201355B (zh) * | 2016-07-12 | 2018-12-11 | 腾讯科技(深圳)有限公司 | 数据处理方法和装置以及存储*** |
CN108255408B (zh) * | 2016-12-28 | 2021-03-23 | 中国电信股份有限公司 | 数据存储方法以及*** |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103093781A (zh) * | 2011-09-30 | 2013-05-08 | Lsi公司 | 用于磁记录***中轨道间干扰消减的基于硬件的方法和装置 |
US8593748B1 (en) * | 2012-06-04 | 2013-11-26 | HGST Netherlands B.V. | Shingled magnetic recording disk drive with compensation for the effect of far track erasure (FTE) on adjacent data bands |
US20130342929A1 (en) * | 2012-06-21 | 2013-12-26 | HGST Netherlands B.V. | Method of compensating for repeatable runout error |
US20140098438A1 (en) * | 2012-10-10 | 2014-04-10 | Seagate Technology Llc | Partial write system |
US8699162B1 (en) * | 2012-11-18 | 2014-04-15 | HGST Netherlands B.V. | Shingled magnetic recording disk drive with multiple data zones containing different numbers of error-correction-code sectors |
-
2014
- 2014-05-09 CN CN201410195740.5A patent/CN103955433A/zh active Pending
-
2015
- 2015-02-05 CN CN201510064669.1A patent/CN104636266B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103093781A (zh) * | 2011-09-30 | 2013-05-08 | Lsi公司 | 用于磁记录***中轨道间干扰消减的基于硬件的方法和装置 |
US8593748B1 (en) * | 2012-06-04 | 2013-11-26 | HGST Netherlands B.V. | Shingled magnetic recording disk drive with compensation for the effect of far track erasure (FTE) on adjacent data bands |
US20130342929A1 (en) * | 2012-06-21 | 2013-12-26 | HGST Netherlands B.V. | Method of compensating for repeatable runout error |
US20140098438A1 (en) * | 2012-10-10 | 2014-04-10 | Seagate Technology Llc | Partial write system |
US8699162B1 (en) * | 2012-11-18 | 2014-04-15 | HGST Netherlands B.V. | Shingled magnetic recording disk drive with multiple data zones containing different numbers of error-correction-code sectors |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105491101B (zh) * | 2015-11-17 | 2018-09-21 | 华为技术有限公司 | 数据的处理方法和装置 |
CN105491101A (zh) * | 2015-11-17 | 2016-04-13 | 华为技术有限公司 | 数据的处理方法和装置 |
CN111666044B (zh) * | 2016-02-29 | 2021-11-30 | 华为技术有限公司 | 一种访问叠瓦式磁记录smr硬盘的方法及服务器 |
WO2017148242A1 (zh) * | 2016-02-29 | 2017-09-08 | 华为技术有限公司 | 一种访问叠瓦式磁记录smr硬盘的方法及服务器 |
US10714141B2 (en) | 2016-02-29 | 2020-07-14 | Huawei Technologies Co., Ltd. | Method for accessing shingled magnetic recording SMR disk, and server |
CN111666044A (zh) * | 2016-02-29 | 2020-09-15 | 华为技术有限公司 | 一种访问叠瓦式磁记录smr硬盘的方法及服务器 |
CN105808163B (zh) * | 2016-02-29 | 2021-05-18 | 华为技术有限公司 | 一种访问叠瓦式磁记录smr硬盘的方法及服务器 |
CN105808163A (zh) * | 2016-02-29 | 2016-07-27 | 华为技术有限公司 | 一种访问叠瓦式磁记录smr硬盘的方法及服务器 |
US11270734B2 (en) | 2016-02-29 | 2022-03-08 | Huawei Technologies Co., Ltd. | Method for accessing shingled magnetic recording SMR disk, and server |
CN108021513A (zh) * | 2016-11-02 | 2018-05-11 | 杭州海康威视数字技术股份有限公司 | 一种数据存储方法及装置 |
CN108021513B (zh) * | 2016-11-02 | 2021-09-10 | 杭州海康威视数字技术股份有限公司 | 一种数据存储方法及装置 |
US11681444B2 (en) | 2020-03-30 | 2023-06-20 | Beijing Baidu Netcom Science Technology Co., Ltd. | Shingled magnetic disk management method for data isolation by space files, apparatus, and electronic device |
CN114579049A (zh) * | 2022-02-14 | 2022-06-03 | 阿里巴巴(中国)有限公司 | 存储数据的调整方法、装置、电子设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN104636266B (zh) | 2016-03-30 |
CN103955433A (zh) | 2014-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104636266B (zh) | 盖瓦磁记录硬盘、盖瓦磁记录硬盘写数据的方法及装置 | |
CN108647151B (zh) | 一种全闪***元数据落盘方法、装置、设备及存储介质 | |
CN104461390A (zh) | 将数据写入叠瓦状磁记录smr硬盘的方法及装置 | |
US20180203637A1 (en) | Storage control apparatus and storage control program medium | |
CN107239412B (zh) | 基于Thin-LUN的存储空间配置方法、数据写入方法及存储设备 | |
US10365845B1 (en) | Mapped raid restripe for improved drive utilization | |
US9940331B1 (en) | Proactive scavenging of file system snaps | |
CN104407935A (zh) | 快照回滚方法和存储设备 | |
CN106201652B (zh) | 一种数据处理方法及虚拟机 | |
US9983826B2 (en) | Data storage device deferred secure delete | |
CN102722340A (zh) | 数据处理方法、装置及*** | |
US10572335B2 (en) | Metadata recovery method and apparatus | |
US20130262799A1 (en) | Control method and storage device | |
CN103558998A (zh) | 一种数据操作的方法和设备 | |
CN111007985A (zh) | 一种存储***空间回收的兼容处理方法、***及设备 | |
US11287996B2 (en) | Method, device and computer program product for storing data | |
CN107798063B (zh) | 快照处理方法和快照处理装置 | |
US10042570B2 (en) | Tape backup and restore in a disk storage environment with intelligent data placement | |
CN104462148A (zh) | 一种数据存储管理方法及装置 | |
US10235089B2 (en) | Storage control device, method and storage system to backup data using allocation information | |
CN108334457B (zh) | 一种io处理方法及装置 | |
CN110990301A (zh) | 多plane存储介质的顺序读方法及相关装置 | |
CN103064926B (zh) | 数据处理方法和装置 | |
CN105573862B (zh) | 一种恢复文件***的方法和设备 | |
US9665292B2 (en) | System and method for providing consistent metadata for RAID solutions |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |