数据处理方法、装置、smr存储系统及存储介质

文档序号:1296031 发布日期:2020-08-07 浏览:10次 >En<

阅读说明:本技术 数据处理方法、装置、smr存储系统及存储介质 (Data processing method, data processing device, SMR storage system and storage medium ) 是由 叶敏 林鹏 林起芊 王伟 于 2019-01-30 设计创作,主要内容包括:本申请实施例提供了数据处理方法、装置、SMR存储系统及存储介质,获取数据写入指令;按照数据写入指令,在目标SMR磁盘的SMR区域中确定待写入目标数据的目标对象块;生成针对目标数据及目标对象块的目标主索引信息及目标备索引信息;将目标数据及目标备索引信息写入的目标对象块中;将目标主索引信息写入到CMR区域或其他存储介质中;在其他存储介质中写入目标数据的数据库索引信息,目标数据的数据库索引信息包括目标Unit key及目标对象块的标识。通过数据库索引信息、主索引信息及备索引信息,可以实现SMR区域中各数据块之间的数据写入顺序不受限制,增加了SMR磁盘数据存储的可操作性,数据存储效率高。(The embodiment of the application provides a data processing method, a data processing device, an SMR storage system and a storage medium, and obtains a data write-in instruction; determining a target object block to be written with target data in an SMR area of a target SMR disk according to a data writing instruction; generating target main index information and target standby index information aiming at target data and target object blocks; writing the target data and the target standby index information into a target object block; writing the target main index information into a CMR area or other storage media; and writing database index information of the target data in other storage media, wherein the database index information of the target data comprises the target Unit key and the identification of the target object block. By the aid of the database index information, the main index information and the standby index information, the data writing sequence among the data blocks in the SMR area is not limited, operability of data storage of the SMR disk is improved, and data storage efficiency is high.)

数据处理方法、装置、SMR存储系统及存储介质

技术领域

本申请涉及数据存储技术领域,特别是涉及数据处理方法、装置、SMR存储系统及存储介质。

背景技术

SMR(Shingled Magnetic Recording,叠瓦式磁记录)磁盘是一种磁盘数据存储技术,将盘片上的数据磁道部分重叠,就像屋顶上的瓦片一样,因此被称为叠瓦式磁记录技术,SMR技术可以大幅提高磁盘存储密度。但是SMR磁盘由于其特殊的存储结构形式,不支持数据随机写入与原地更新,数据存储可操作性差,数据存储效率低。

因此希望能够提高SMR磁盘数据存储的可操作性,增加数据存储效率。

发明内容

本申请实施例的目的在于提供一种数据处理方法、装置、SMR存储系统及存储介质,以实现提高SMR磁盘数据存储的可操作性,增加数据存储效率。具体技术方案如下:

第一方面,本申请实施例提供了一种数据处理方法,应用于叠瓦式磁记录SMR存储系统,所述SMR存储系统包括SMR磁盘及其他存储介质,所述SMR磁盘包括CMR区域及SMR区域,所述SMR区域逻辑划分为多个块ZONE,所述块包括对象块,所述方法包括:

获取数据写入指令,其中,所述数据写入指令包括待写入的目标数据、待写入所述目标数据的目标SMR磁盘的标识及目标单元键Unit key;

按照所述数据写入指令,在所述目标SMR磁盘的SMR区域中确定待写入所述目标数据的目标对象块;

生成针对所述目标数据及所述目标对象块的目标主索引信息及目标备索引信息;

将所述目标数据及所述目标备索引信息写入的所述目标对象块中;

将所述目标主索引信息写入到所述CMR区域或所述其他存储介质中;

在所述其他存储介质中写入所述目标数据的数据库索引信息,其中,所述目标数据的数据库索引信息包括所述目标Unit key及所述目标对象块的标识。

可选的,所述按照所述数据写入指令,在所述目标SMR磁盘的SMR区域中确定待写入所述目标数据的目标对象块,包括:

按照所述数据写入指令,在所述目标SMR磁盘的SMR区域的空闲对象块中,选取待写入所述目标数据的目标对象块。

可选的,所述按照所述数据写入指令,在所述目标SMR磁盘的SMR区域中确定待写入所述目标数据的目标对象块,包括:

按照所述目标Unit key,在所述其他存储介质中读取所述目标Unit key的数据库索引信息;

按照所述目标Unit key的数据库索引信息,在所述目标SMR磁盘的SMR区域中确定待写入所述目标数据的目标对象块。

可选的,本申请实施例的数据处理方法还包括:

获取数据读取指令,其中,所述数据读取指令包括待读取数据所在的SMR磁盘的标识及所述待读取数据的Unit key;

按照所述数据读取指令,在所述其他存储介质中获取所述待读取数据的数据库索引信息;

根据所述待读取数据的数据库索引信息,确定所述待读取数据所在的对象块;

在所述待读取数据所在的对象块中读取所述待读取数据。

可选的,本申请实施例的数据处理方法还包括:

获取数据删除指令,其中,所述数据删除指令包括待删除数据所在的SMR磁盘的标识及所述待删除数据的Unit key;

按照所述数据删除指令,在所述其他存储介质中获取所述待删除数据的数据库索引信息;

根据所述待删除数据的数据库索引信息,确定所述待删除数据所在的对象块的标识;

按照所述待删除数据所在的对象块的标识,删除所述待删除数据所在的对象块的主索引信息;

删除所述待删除数据的数据库索引信息。

可选的,本申请实施例的数据处理方法还包括:

获取磁盘恢复信息,其中,所述磁盘恢复信息包括待恢复SMR磁盘的标识;

按照所述磁盘恢复信息,获取所述待恢复SMR磁盘的各主索引信息;

按照所述待恢复SMR磁盘的各主索引信息,在所述其他存储介质中恢复所述待恢复SMR磁盘的数据库索引信息。

第二方面,本申请实施例提供了一种数据处理装置,应用于SMR存储系统,所述SMR存储系统包括SMR磁盘及其他存储介质,所述SMR磁盘包括CMR区域及SMR区域,所述SMR区域逻辑划分为多个块ZONE,所述块包括对象块,所述装置包括:

写入指令获取模块,用于获取数据写入指令,其中,所述数据写入指令包括待写入的目标数据、待写入所述目标数据的目标SMR磁盘的标识及目标单元键Unit key;

目标对象块确定模块,用于按照所述数据写入指令,在所述目标SMR磁盘的SMR区域中确定待写入所述目标数据的目标对象块;

索引信息生成模块,用于生成针对所述目标数据及所述目标对象块的目标主索引信息及目标备索引信息;

第一索引信息写入模块,用于将所述目标数据及所述目标备索引信息写入的所述目标对象块中;

第二索引信息写入模块,用于将所述目标主索引信息写入到所述CMR区域或所述其他存储介质中;

第三索引信息写入模块,用于在所述其他存储介质中写入所述目标数据的数据库索引信息,其中,所述目标数据的数据库索引信息包括所述目标Unit key及所述目标对象块的标识。

可选的,所述目标对象块确定模块,具体用于:

按照所述数据写入指令,在所述目标SMR磁盘的SMR区域的空闲对象块中,选取待写入所述目标数据的目标对象块。

可选的,所述目标对象块确定模块,包括:

数据库索引信息获取子模块,用于按照所述目标Unit key,在所述其他存储介质中读取所述目标Unit key的数据库索引信息;

目标对象块确定子模块,用于按照所述目标Unit key的数据库索引信息,在所述目标SMR磁盘的SMR区域中确定待写入所述目标数据的目标对象块。

可选的,本申请实施例的数据处理装置还包括:

读取指令获取模块,用于获取数据读取指令,其中,所述数据读取指令包括待读取数据所在的SMR磁盘的标识及所述待读取数据的Unit key;

第一索引信息获取模块,用于按照所述数据读取指令,在所述其他存储介质中获取所述待读取数据的数据库索引信息;

读取位置确定模块,用于根据所述待读取数据的数据库索引信息,确定所述待读取数据所在的对象块;

数据读取模块,用于在所述待读取数据所在的对象块中读取所述待读取数据。

可选的,本申请实施例的数据处理装置还包括:

删除指令获取模块,用于获取数据删除指令,其中,所述数据删除指令包括待删除数据所在的SMR磁盘的标识及所述待删除数据的Unit key;

第二索引信息获取模块,用于按照所述数据删除指令,在所述其他存储介质中获取所述待删除数据的数据库索引信息;

对象块标识确定模块,用于根据所述待删除数据的数据库索引信息,确定所述待删除数据所在的对象块的标识;

主索引信息删除模块,用于按照所述待删除数据所在的对象块的标识,删除所述待删除数据所在的对象块的主索引信息;

数据库索引信息删除模块,用于删除所述待删除数据的数据库索引信息。

可选的,本申请实施例的数据处理装置还包括:

恢复信息获取模块,用于获取磁盘恢复信息,其中,所述磁盘恢复信息包括待恢复SMR磁盘的标识;

主索引信息获取模块,用于按照所述磁盘恢复信息,获取所述待恢复SMR磁盘的各主索引信息;

数据库索引信息恢复模块,用于按照所述待恢复SMR磁盘的各主索引信息,在所述其他存储介质中恢复所述待恢复SMR磁盘的数据库索引信息。

第三方面,本申请实施例提供了一种SMR存储系统,所述SMR存储系统包括:SMR磁盘、其他存储介质及处理器,所述SMR磁盘包括CMR区域及SMR区域,所述SMR区域包括多个对象块;

所述对象块用于存储对象数据及备索引信息;

所述CMR区域用于存储主索引信息;

所述其他存储介质用于存储数据库索引信息;

所述处理器用于在运行时实现上述第一方面任一所述的数据处理方法。

第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面任一所述的数据处理方法。

本申请实施例提供的数据处理方法、装置、SMR存储系统及存储介质,获取数据写入指令,其中,数据写入指令包括待写入的目标数据、待写入目标数据的目标SMR磁盘的标识及目标单元键Unit key;按照数据写入指令,在目标SMR磁盘的SMR区域中确定待写入目标数据的目标对象块;生成针对目标数据及目标对象块的目标主索引信息及目标备索引信息;将目标数据及目标备索引信息写入的目标对象块中;将目标主索引信息写入到CMR区域或其他存储介质中;在其他存储介质中写入目标数据的数据库索引信息,其中,目标数据的数据库索引信息包括目标Unit key及目标对象块的标识。通过数据库索引信息、主索引信息及备索引信息,可以实现针对SMR区域中各数据块的数据写入,各数据块之间的数据写入顺序不受限制,增加了SMR磁盘数据存储的可操作性,数据存储效率高。当然,实施本申请的任一产品或方法并不一定需要同时达到以上的所有优点。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为相关技术中SMR磁盘的一种示意图;

图2为本申请实施例的数据处理方法的第一种示意图;

图3为本申请实施例的SMR区域中分块的一种示意图;

图4为本申请实施例的三级索引的一种示意图;

图5为本申请实施例的备索引的一种示意图;

图6为本申请实施例的主索引的一种示意图;

图7为本申请实施例的数据处理方法的第二种示意图;

图8为本申请实施例的数据处理方法的第三种示意图;

图9为本申请实施例的数据处理方法的第四种示意图;

图10为本申请实施例的数据处理方法的第五种示意图;

图11为本申请实施例的SMR存储系统的一种示意图;

图12为本申请实施例的数据处理装置的一种示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

安防行业视频数据、图片、音频数据简称流式数据,流式数据存在数据量较大、写多读少、覆盖频率快等特点;项目应用中存储流式数据时,需要处理大量新数据写入与过期数据删除问题,以及大量流式数据存储带来的硬件成本问题。叠瓦硬盘具有存储密度高的特点,非常适合安防行业使用。但是SMR磁盘由于其特殊的存储结构形式,不支持数据随机写如入与原地更新,数据存储可操作性差,数据存储效率低。

相关技术中,为了增加SMR磁盘的读写效率,采用了HM(Host Manage,主机管理)SMR技术。参见图1,HM SMR磁盘按照CMR(conventional magnetic recording,传统式磁记录)与SMR分为两个存储区域,每个区别被划分为若干个ZONE(块),CMR区域支持随机读写。对于SMR区域的ZONE,每个ZONE内仅支持顺序写,多个ZONE间支持并行写;SMR区域的每个ZONE内部都有一个WP(Write Pointer,写指针),每个写操作必须从写指针开始,写操作必须根据物理扇区大小对齐,单次读写操作不能跨越多个ZONE空间,已经写入数据的ZONE在下次复用写之前必须RESET(重置)。HM SMR磁盘暴露ZONE与WP后,应用层软件可以直接管理ZONE的完整生命周期,包括ZONE内数据顺序写入、ZONE回收重置等。

CMR区域中存储了SMR区域中各ZONE索引信息,由于SMR区域与CMR区域共用一个盘面与磁头,数据更新时务必会造成频繁的磁头移动,特别是在数据频繁更新时,降低SMR区域的整体存储性能。

有鉴于此,本申请实施例提供了一种数据处理方法,应用于SMR存储系统,上述SMR存储系统包括SMR磁盘及其他存储介质,上述SMR磁盘包括CMR区域及SMR区域,上述SMR逻辑划分为多个ZONE(块),上述块包括对象块,参见图2,所述方法包括:

S101,获取数据写入指令,其中,上述数据写入指令包括待写入的目标数据、待写入上述目标数据的目标SMR磁盘的标识及目标Unit key(单元键)。

本申请实施例的数据处理方法应用于SMR存储系统,因此可以通过SMR存储系统实现,具体可以通过SMR存储系统中的处理器实现。SMR存储系统获取数据写入指令,数据写入指令中包括待写入的目标数据、待写入目标数据的目标SMR磁盘的标识及目标Unit key。

目标SMR磁盘的标识可以为目标SMR磁盘的ID,或目标SMR磁盘的WWN(World WideName,全球唯一名字)等。其他存储介质与上述CMR区域及SMR区域采用不同的盘面及磁头,或其他存储介质不通过磁头读写。可选的,其他存储介质可以为SSD(Solid State Disk,固态硬盘)。SMR区域中的DATA ZONE(对象块)用于存储对象数据、备索引信息数据及附属数据。可选的,参见图3,SMR区域还可以包括Reserve ZONE(预备块)及META ZONE(元块),其中,Reserve ZONE在数据回收时作为中间介质使用;META ZONE用于存储备元数据信息。

参见图4,本申请实施例中采用三级索引,包括DB Index(Database Index,数据库索引)、Main Index(主索引)及Back Index(备索引)。数据库索引信息存储在上述其他存储介质中,备索引信息存储在SMR区域各对象块存储的数据后,主索引信息存储在CMR区域还可以存储在其他存储介质中。

S102,按照上述数据写入指令,在上述目标SMR磁盘的SMR区域中确定待写入目标数据的目标对象块。

SMR存储系统按照数据写入指令中目标SMR磁盘的标识,确定目前SMR磁盘,从目标SMR磁盘中的SMR区域中确定用于存储目标数据的目标对象块。SMR存储系统按照预设选取策略选取指定对象块作为目标对象块,预设选取策略可以根据实际情况进行设定。

可选的,上述按照上述数据写入指令,在上述目标SMR磁盘的SMR区域中确定待写入目标数据的目标对象块,包括:

按照上述数据写入指令,在上述目标SMR磁盘的SMR区域的空闲对象块中,选取待写入目标数据的目标对象块。

可选的,上述按照上述数据写入指令,在上述目标SMR磁盘的SMR区域中确定待写入目标数据的目标对象块,包括:

步骤一,按照上述目标Unit key,在上述其他存储介质中读取上述目标Unit key的数据库索引信息。

步骤二,按照上述目标Unit key的数据库索引信息,在上述目标SMR磁盘的SMR区域中确定待写入目标数据的目标对象块。

可选的,在上述按照上述数据写入指令,在上述目标SMR磁盘的SMR区域中确定待写入目标数据的目标对象块之前,上述方法还包括:

检测上述目标SMR磁盘是否可用,若上述目标SMR磁盘可用,执行S102,按照上述数据写入指令,在上述目标SMR磁盘的SMR区域中确定待写入目标数据的目标对象块;若上述目标SMR磁盘不可用,返回表征目标SMR磁盘不可用的信息。

S103,生成针对上述目标数据及上述目标对象块的目标主索引信息及目标备索引信息。

SMR存储系统组织生成针对目标数据及目标对象块的目标主索引信息及目标备索引信息。目标主索引信息及目标备索引信息包括目标数据的Unit key及FS data(FileSystem data,文件系统管理数据),FS data中包括目标数据所在的对象块(即目标对象块)的地址。

可选的,在上述生成针对上述目标数据及上述目标对象块的目标主索引信息及目标备索引信息之前,上述方法还包括:

计算目标数据的校验值。其中,若计算得到的校验值与接收到的目标数据的校验值相同,表明目标数据完整,执行S103,生成针对上述目标数据及上述目标对象块的目标主索引信息及目标备索引信息。若计算得到的校验值与接收到的目标数据的校验值不同,表明目标数据在传输过程中出现了问题,返回表征目标数据传输错误的信息。

S104,将上述目标数据及上述目标备索引信息写入的上述目标对象块中。

SMR存储系统将目标数据写入到目标对象块中,并目标对象块中的目标数据后写入目标备索引信息。可选的,如图5所示,备索引信息存储在对象块数据的后面,紧跟每个对象块存储。

S105,将上述目标主索引信息写入到上述CMR区域或上述其他存储介质中。

在主索引信息存储在CMR区域中时,SMR存储系统将目标主索引信息写入到CMR区域中,可选的,如图6所示,主索引信息采用连续存储的形式,便于随机IO合并处理,减少磁盘磁头移动。在主索引信息存储在其他存储介质中时,SMR存储系统将目标主索引信息写入到其他存储介质中;当主索引信息存储在CMR区域存储在其他存储介质中时,可以减少数据更新时SMR磁盘磁头的移动,从而增加SMR区域的整体存储性能。

S106,在上述其他存储介质中写入上述目标数据的数据库索引信息,其中,上述目标数据的数据库索引信息包括上述目标Unit key及上述目标对象块的标识。

SMR存储系统将目标数据的数据库索引信息写入到其他存储介质中。

在本申请实施例中,通过数据库索引信息、主索引信息及备索引信息,可以实现针对SMR区域中各数据块的数据写入,各数据块之间的数据写入顺序不受限制,增加了SMR磁盘数据存储的可操作性,数据存储效率高。数据库索引信息、主索引信息与备元数据分别存储在不同的介质上,充分保证索引信息部署读写高效性与数据安全性。主索引信息简化存储且用于随机更新场景,备索引信息全量存储且紧跟对象数据存储,充分提升整个系统的存储性能。

可选的,上述数据处理方法还包括:

S201,获取数据读取指令,其中,上述数据读取指令包括待读取数据所在的SMR磁盘的标识及上述待读取数据的Unit key。

SMR存储系统获取数据读取指令,数据读取指令中包括待读取数据所在的SMR磁盘的标识及上述待读取数据的Unit key。

S202,按照上述数据读取指令,在上述其他存储介质中获取上述待读取数据的数据库索引信息。

SMR存储系统按照数据读取指令中待读取数据的Unit key,在其他存储介质中获取上述待读取数据的数据库索引信息。

S203,根据上述待读取数据的数据库索引信息,确定上述待读取数据所在的对象块。

按照上述待读取数据的数据库索引信息中对象块的标识,确定待读取数据所在的对象块。

S204,在上述待读取数据所在的对象块中读取上述待读取数据。

SMR存储系统在待读取数据所在的对象块中读取上述待读取数据。

在本申请实施例中,通过其他存储介质中的数据库索引信息获取待读取数据所在的对象块,SMR磁盘中磁头可以直接从该对象块中读取数据,而不用读取主索引信息或备索引信息,SMR磁盘数据读取可操作性强,增加了数据读取效率。

可选的,读取待读取数据的过程具体可以如图7所示。获取数据记录的数据库信息(即获取其他存储介质中待读取数据的数据库索引信息),获取数据写入的位置与校验值信息,然后读取指定位置的数据信息并计算校验值,校验值一致即将获取到的数据信息返回给用户。用户数据读取流程只需要经过数据库索引信息,无需其他索引信息的参与,其中,object data指待读取数据,object id指对象块的标识。

可选的,上述数据处理方法还包括:

S301,获取数据删除指令,其中,上述数据删除指令包括待删除数据所在的SMR磁盘的标识及上述待删除数据的Unit key。

S302,按照上述数据删除指令,在上述其他存储介质中获取上述待删除数据的数据库索引信息。

S303,根据上述待删除数据的数据库索引信息,确定上述待删除数据所在的对象块的标识。

SMR存储系统确定待删除数据所在的对象块的标识,例如,对象块的object id等。

S304,按照上述待删除数据所在的对象块的标识,删除上述待删除数据所在的对象块的主索引信息。

S305,删除上述待删除数据的数据库索引信息。

在本申请实施例中,在删除待删除数据时,仅需删除待删除数据所在对象块的主索引信息及待删除数据的数据库索引信息即可,不必清空待删除数据所在的数据块,数据删除效率高。

可选的,删除待删除数据的过程具体可以如图8所示。首先需要获取数据记录的数据库信息(即获取其他存储介质中待删除数据的数据库索引信息),获取数据写入的位置,然后删除对应数据的Main Index信息与数据库信息即可,无需操作Back Index。

可选的,上述数据处理方法还包括:

S401,获取磁盘恢复信息,其中,上述磁盘恢复信息包括待恢复SMR磁盘的标识。

S402,按照上述磁盘恢复信息,获取上述待恢复SMR磁盘的各主索引信息。

S403,按照上述待恢复SMR磁盘的各主索引信息,在上述其他存储介质中恢复上述待恢复SMR磁盘的数据库索引信息。

可选的,磁盘恢复的过程具体可以如图9所示。当SMR磁盘发生漂移或者索引信息数据损坏或丢失后,需要从SMR磁盘上重建数据库索引信息。重建索引信息仅需要扫描每个Object的Main Index信息,由于Main Index集中存储,可以快速重建磁盘的数据库索引信息。

可选的,上述数据处理方法还包括:

S501,获取格式化指令,其中,上述格式化指令中包括对象块大小及索引信息块大小。

格式化指令用于将指定SMR磁盘进行格式化。SMR存储系统在获取到格式化指令后,触发执行将各SMR磁盘进行格式化。可选的,格式化指令中还可以包括待格式化的SMR磁盘的标识,SMR存储系统可以根据待格式化的SMR磁盘的标识,选取指定的SMR磁盘进行格式化操作。

S502,按照上述格式化指令,计算元数据信息并下盘。

SMR存储系统按照格式化指令中包括对象块大小及索引信息块大小,计算待格式化的SMR磁盘的块划分情况并下盘。

S503,初始化各对象块的主索引信息并下盘。

直接计算每个对象块对应的主索引信息,主索引信息主要记录每个对象块的元数据信息;主索引信息区存储区可以是SMR盘的CMR区域、也可以是其它存储介质如SSD。

S505,初始化块使用位图。

每个对象块在文件系统中都对应唯一的块使用位图信息,格式化磁盘时将每个块的位图清空。

S506,初始化上述其他存储介质。

按照SMR磁盘的标识,初始化其他上述其他存储介质中该SMR磁盘对应的信息。

可选的,磁盘初始化的过程具体可以如图10所示。获取格式化参数(可以通过解析格式化指令获取格式化参数),格式化参数包括对象块大小、索引信息块大小信息。然后直接计算元数据信息并下盘,计算Main Index信息并下盘,初始化块使用位图,初始化数据库索引信息。

本申请实施例还提供了一种SMR存储系统,参见图11,上述SMR存储系统包括:SMR磁盘、其他存储介质及处理器,上述SMR磁盘包括CMR区域及SMR区域,上述SMR区域包括多个对象块;

对象块用于存储对象数据及备索引信息;

CMR区域用于存储主索引信息;

其他存储介质用于存储数据库索引信息;

处理器用于在运行时执行上述任一上述的数据处理方法。

其他存储介质与上述CMR区域及SMR区域采用不同的盘面及磁头,或其他存储介质不通过磁头读写。可选的,其他存储介质可以为SSD(Solid State Disk,固态硬盘)。SMR区域中的DATA ZONE(对象块)用于存储对象数据、备索引信息数据及附属数据。可选的,参见图3,SMR区域还可以包括Reserve ZONE(预备块)及META ZONE(元块),其中,Reserve ZONE在数据回收时作为中间介质使用;META ZONE用于存储备元数据信息。

参见图4,本申请实施例中采用三级索引信息,包括DB Index(Database Index,数据库索引信息)、Main Index(主索引信息)及Back Index(备索引信息)。上述数据库索引信息存储在上述其他存储介质中,上述备索引信息存储在SMR区域各对象块存储的数据后,上述主索引信息存储在CMR区域还可以存储在其他存储介质中。

在本申请实施例中,通过数据库索引信息、主索引信息及备索引信息,可以实现针对SMR区域中各数据块的数据写入,各数据块之间的数据写入顺序不受限制,增加了SMR磁盘数据存储的可操作性,数据存储效率高。数据库索引信息、主索引信息与备元数据分别存储在不同的介质上,充分保证索引信息部署读写高效性与数据安全性。主索引信息简化存储且用于随机更新场景,备索引信息全量存储且紧跟对象数据存储,充分提升整个系统的存储性能。

上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

本申请实施例还提供了一种数据处理装置,应用于叠瓦式磁记录SMR存储系统,上述SMR存储系统包括SMR磁盘及其他存储介质,上述SMR磁盘包括CMR区域及SMR区域,上述SMR区域逻辑划分为多个块ZONE,上述块包括对象块,参见图12,上述装置包括:

写入指令获取模块1201,用于获取数据写入指令,其中,上述数据写入指令包括待写入的目标数据、待写入上述目标数据的目标SMR磁盘的标识及目标单元键Unit key;

目标对象块确定模块1202,用于按照上述数据写入指令,在上述目标SMR磁盘的SMR区域中确定待写入上述目标数据的目标对象块;

索引信息生成模块1203,用于生成针对上述目标数据及上述目标对象块的目标主索引信息及目标备索引信息;

第一索引信息写入模块1204,用于将上述目标数据及上述目标备索引信息写入的上述目标对象块中;

第二索引信息写入模块1205,用于将上述目标主索引信息写入到上述CMR区域或上述其他存储介质中;

第三索引信息写入模块1206,用于在上述其他存储介质中写入上述目标数据的数据库索引信息,其中,上述目标数据的数据库索引信息包括上述目标Unit key及上述目标对象块的标识。

可选的,上述目标对象块确定模块1202,具体用于:

按照上述数据写入指令,在上述目标SMR磁盘的SMR区域的空闲对象块中,选取待写入上述目标数据的目标对象块。

可选的,上述目标对象块确定模块1202,包括:

数据库索引信息获取子模块,用于按照上述目标Unit key,在上述其他存储介质中读取上述目标Unit key的数据库索引信息;

目标对象块确定子模块,用于按照上述目标Unit key的数据库索引信息,在上述目标SMR磁盘的SMR区域中确定待写入上述目标数据的目标对象块。

可选的,本申请实施例的数据处理装置还包括:

读取指令获取模块,用于获取数据读取指令,其中,上述数据读取指令包括待读取数据所在的SMR磁盘的标识及上述待读取数据的Unit key;

第一索引信息获取模块,用于按照上述数据读取指令,在上述其他存储介质中获取上述待读取数据的数据库索引信息;

读取位置确定模块,用于根据上述待读取数据的数据库索引信息,确定上述待读取数据所在的对象块;

数据读取模块,用于在上述待读取数据所在的对象块中读取上述待读取数据。

可选的,本申请实施例的数据处理装置还包括:

删除指令获取模块,用于获取数据删除指令,其中,上述数据删除指令包括待删除数据所在的SMR磁盘的标识及上述待删除数据的Unit key;

第二索引信息获取模块,用于按照上述数据删除指令,在上述其他存储介质中获取上述待删除数据的数据库索引信息;

对象块标识确定模块,用于根据上述待删除数据的数据库索引信息,确定上述待删除数据所在的对象块的标识;

主索引信息删除模块,用于按照上述待删除数据所在的对象块的标识,删除上述待删除数据所在的对象块的主索引信息;

数据库索引信息删除模块,用于删除上述待删除数据的数据库索引信息。

可选的,本申请实施例的数据处理装置还包括:

恢复信息获取模块,用于获取磁盘恢复信息,其中,上述磁盘恢复信息包括待恢复SMR磁盘的标识;

主索引信息获取模块,用于按照上述磁盘恢复信息,获取上述待恢复SMR磁盘的各主索引信息;

数据库索引信息恢复模块,用于按照上述待恢复SMR磁盘的各主索引信息,在上述其他存储介质中恢复上述待恢复SMR磁盘的数据库索引信息。

本申请实施例还提供了一种计算机可读存储介质,上述计算机可读存储介质内存储有计算机程序,上述计算机程序被处理器执行时实现上述任一数据处理方法。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、系统及存储介质的实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上所述仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本申请的保护范围内。

23页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:快取存储器及快取存储器的管理方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类