存储系统的数据去重方法及装置、计算机装置及存储介质制造方法及图纸

技术编号:18710027 阅读:39 留言:0更新日期:2018-08-21 22:33
本发明专利技术实施例公开了一种存储系统的数据去重方法,该方法包括:接收内存设备发送的数据写入请求;根据该请求,将该请求所指示的数据划分为预设粒度的数据块,计算数据块的指纹;查询内存设备的热点指纹库,并判断该指纹库中是否存在所述指纹,内存设备包括:第一文件元数据库及热点指纹库;若不存在,则查询全闪存阵列的去重指纹库,并判断去重指纹库中是否存在所述指纹,全闪存阵列包括:第二文件元数据库、数据区域及去重指纹库;若去重指纹库中存在所述指纹,则确定该数据块属于重复数据,将数据区域中的所述数据块及相邻数据块所对应的指纹序列发送至内存设备的热点指纹库中,并将数据块的元数据信息存储至第二文件元数据库中。

Data De duplication method and device for storage system, computer device and storage medium

The embodiment of the invention discloses a data de-duplication method for a storage system, which comprises receiving a data writing request sent by a memory device, dividing the data indicated by the request into preset granularity data blocks, calculating the fingerprint of the data blocks, querying a hot fingerprint database of the memory device, and judging the data block according to the request. Whether the fingerprint exists in the fingerprint database or not, the memory devices include: the first file metadata database and the hot fingerprint database; if not, query the full flash array for the de-duplicated fingerprint database, and determine whether the fingerprint exists in the de-duplicated fingerprint database. The full flash array includes: the second file metadata database, the data area and the de-duplicated fingerprint. If the fingerprint exists in the de-duplicated fingerprint database, it is determined that the data block belongs to duplicate data, the fingerprint sequence corresponding to the data block and adjacent data block in the data area is sent to the hot fingerprint database of the memory device, and the metadata information of the data block is stored in the second file metadata database.

【技术实现步骤摘要】
存储系统的数据去重方法及装置、计算机装置及存储介质
本专利技术涉及数据存储
,尤其涉及一种存储系统的数据去重方法及装置、计算机装置及存储介质。
技术介绍
数据去重又称重复数据删除(DataDeduplication),是一种应用在存储系统中的全局地识别和消除冗余数据的技术,成为近些年来存储系统研究的热点。数据去重通过计算数据块的安全哈希摘要(比如SHA1指纹)来唯一识别数据块,避免了数据的逐个字符的匹配,而且存储系统只需要简单地维护安全哈希摘要的索引表,就可以实现快速方便地识别重复数据,具有良好的可扩展性;重复的数据内容只需要记录相应的数据指针信息即可达到节省存储空间的目的;所以数据去重技术能够极大地节省存储空间从而提高存储设备的资源利用率。数据去重指纹一般使用的是SHA1哈希摘要(20个字节),如果是4TB的数据,按照4KB的数据块粒度,那就是有1G个数据块,指纹总大小20GB,如果把指纹放在内存中,这将非常消耗内存资源,如果全部放在全阵列闪存上组织索引,这样的查找速度将慢很多。故如何在内存设备及全闪存阵列之间设置数据存储策略,是提高存储系统IO性能的一个重要途径。
技术实现思路
本专利技术实施例提供了一种存储系统的数据去重方法及装置、计算机装置及存储介质,用于提高存储系统中数据去重速度和数据写入速度。本专利技术第一方面提供了一种存储系统的数据去重方法,包括:接收内存设备发送的数据写入请求;根据数据写入请求,将数据写入请求所指示的数据划分为预设粒度的数据块,并计算数据块的指纹;查询内存设备的热点指纹库,并判断热点指纹库中是否存在指纹,内存设备包括:第一文件元数据库及热点指纹库;若热点指纹库中不存在指纹,则查询全闪存阵列的去重指纹库,并判断去重指纹库中是否存在指纹,全闪存阵列包括:第二文件元数据库、数据区域及去重指纹库;若去重指纹库中存在指纹,则确定该数据块为重复数据,将数据区域中的数据块及相邻数据块所对应的指纹序列发送至内存设备的热点指纹库中,并将数据块的元数据信息存储至第二文件元数据库中,所述元数据信息包括:所述数据块在所述数据段中的顺序、所述数据块的物理存储地址及所述数据块的长度。优选的,数据区域包括多个数据容器,数据容器用于存储多个连续数据块及多个连续数据块对应的指纹序列;将数据区域中的数据块及相邻数据块所对应的指纹序列发送至内存设备的热点指纹库中,包括:将数据块所在的数据容器中的指纹序列发送至内存设备的热点指纹库中。优选的,在判断热点指纹库中是否存在所述指纹之后,该方法还包括:若热点指纹库中存在所述指纹,则确定该数据块为重复数据,并将数据块的元数据信息存储至第一文件元数据库中,所述元数据信息包括:所述数据块在所述数据段中的顺序、所述数据块的物理存储地址及所述数据块的长度。优选的,在判断去重指纹库中是否存在所述指纹之后,该方法还包括:若去重指纹库中不存在所述指纹,则对该数据块执行压缩操作,并将压缩后的数据块存储至数据容器,并更新数据容器的指纹序列,同时将压缩后数据块的元数据信息及该数据块的指纹更新至去重指纹库中,所述元数据信息包括:所述数据块压缩后的物理存储地址及所述数据块压缩后的长度。优选的,该内存设备还包括:热点数据库;在所述确定所述数据库为重复数据之后,该方法还包括:将所述数据容器中的所述数据块及相邻数据块发送至所述内存设备的热点数据库中。优选的,该方法还包括:判断所述热点数据库是否达到热点数据库的存储阈值;若达到所述热点数据库的存储阈值,则按照预设的规则淘汰出第一热点数据,并更新所述热点数据库。优选的,该方法还包括:分别判断热点指纹库及第一文件元数据库是否达到各自的存储阈值;若热点指纹库或第一文件元数据库达到各自的存储阈值,则按照预设的规则淘汰出第一热点指纹及第一元数据,并更新热点指纹库及第一文件元数据库。本专利技术第二方面提供了一种存储系统的数据去重装置,包括:接收单元,用于接收内存设备发送的数据写入请求;划分计算单元,用于根据数据写入请求,将数据写入请求所指示的数据划分为预设粒度的数据块,并计算数据块的指纹;第一查询判断单元,用于查询内存设备的热点指纹库,并判断热点指纹库中是否存在指纹,内存设备包括:第一文件元数据库及热点指纹库;第二查询判断单元,用于在热点指纹库中不存在所述指纹时,查询全闪存阵列的去重指纹库,并判断去重指纹库中是否存在所述指纹,全闪存阵列包括:第二文件元数据库、数据区域及去重指纹库;发送执行单元,用于在去重指纹库中存在指纹时,确定该数据块为重复数据,将数据区域中的该数据块及相邻数据块所对应的指纹序列发送至内存设备的热点指纹库中,并将数据块的元数据信息存储至第二文件元数据库中,并更新数据容器中的指纹序列,元数据信息包括:数据块在数据段中的顺序、数据块的物理存储地址及数据块的长度。。优选的,数据区域包括多个数据容器,数据容器用于存储多个连续数据块及多个连续数据块对应的指纹序列;发送执行单元,包括:第一发送执行模块,用于在去重指纹库中存在指纹时,确定该数据块为重复数据,将数据块所在的数据容器中的指纹序列发送至内存设备的热点指纹库中,并将数据块的元数据信息存储至第二文件元数据库中,所述元数据信息包括:数据块在数据段中的顺序、数据块的物理存储地址及数据块的长度。优选的,该装置还包括:去重单元,用于在热点指纹库中存在指纹时,确定该数据块为重复数据,并将数据块的元数据信息存储至第一文件元数据库中,所述元数据信息包括:数据块在数据段中的顺序、数据块的物理存储地址及数据块的长度。优选的,该装置还包括:存储更新单元,用于在去重指纹库中不存在所述指纹时,对该数据块执行压缩操作,并将压缩后的数据块存储至数据容器,并更新数据容器的指纹序列,同时将压缩后数据块的元数据信息及该数据块的指纹更新至去重指纹库中,所述元数据信息包括:所述数据块压缩后的物理存储地址及所述数据块压缩后的长度。优选的,该内存设备还包括:热点数据库;该装置还包括:发送单元,用于将所述数据容器中的所述数据块及相邻数据块发送至内存设备的热点数据库中。优选的,该装置还包括:第一判断单元,用于判断所述热点数据库是否达到热点数据库的存储阈值;第一淘汰单元,用于在达到所述热点数据库的存储阈值时,按照预设的规则淘汰出第一热点数据,并更新所述热点数据库。优选的,该装置还包括:第二判断单元,用于分别判断热点指纹库及第一文件元数据库是否达到各自的存储阈值;第二淘汰单元,用于在热点指纹库或第一文件元数据库达到存储阈值时,按照预设的规则淘汰出第一热点指纹及第一元数据,并更新热点指纹库及第一文件元数据库。本专利技术实施例还提供了一种计算机装置,包括处理器,该处理器在执行存储于存储器上的计算机程序时,用于实现本专利技术第一方面所述的存储系统的数据去重方法。本专利技术实施例还提供了一种可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,用于实现本专利技术第一方面所述的存储系统的数据去重方法。从以上技术方案可以看出,本专利技术实施例具有以下优点:本专利技术实施例中,存储系统的数据去重装置在接收内存设备发送的数据写入请求后,先根据写入请求,将该写入请求所指示的数据划分为数据块,计算数据块的指纹,并在内存设备的热点指纹库中查询判断,在热点指纹库中不存在该指纹时,继而在全本文档来自技高网...

【技术保护点】
1.一种存储系统的数据去重方法,所述存储系统包括内存设备及全闪存阵列,其特征在于,包括:接收所述内存设备发送的数据写入请求;根据所述数据写入请求,将所述数据写入请求所指示的数据划分为预设粒度的数据块,并计算所述数据块的指纹;查询所述内存设备的热点指纹库,并判断所述热点指纹库中是否存在所述指纹,所述内存设备包括:第一文件元数据库及所述热点指纹库;若所述热点指纹库中不存在所述指纹,则查询所述全闪存阵列的去重指纹库,并判断所述去重指纹库中是否存在所述指纹,所述全闪存阵列包括:第二文件元数据库、数据区域及所述去重指纹库;若所述去重指纹库中存在所述指纹,则确定所述数据块为重复数据,将所述数据区域中的所述数据块及相邻数据块所对应的指纹序列发送至所述内存设备的热点指纹库中,并将所述数据块的元数据信息存储至所述第二文件元数据库中,所述元数据信息包括:所述数据块在所述数据段中的顺序、所述数据块的物理存储地址及所述数据块的长度。

【技术特征摘要】
1.一种存储系统的数据去重方法,所述存储系统包括内存设备及全闪存阵列,其特征在于,包括:接收所述内存设备发送的数据写入请求;根据所述数据写入请求,将所述数据写入请求所指示的数据划分为预设粒度的数据块,并计算所述数据块的指纹;查询所述内存设备的热点指纹库,并判断所述热点指纹库中是否存在所述指纹,所述内存设备包括:第一文件元数据库及所述热点指纹库;若所述热点指纹库中不存在所述指纹,则查询所述全闪存阵列的去重指纹库,并判断所述去重指纹库中是否存在所述指纹,所述全闪存阵列包括:第二文件元数据库、数据区域及所述去重指纹库;若所述去重指纹库中存在所述指纹,则确定所述数据块为重复数据,将所述数据区域中的所述数据块及相邻数据块所对应的指纹序列发送至所述内存设备的热点指纹库中,并将所述数据块的元数据信息存储至所述第二文件元数据库中,所述元数据信息包括:所述数据块在所述数据段中的顺序、所述数据块的物理存储地址及所述数据块的长度。2.根据权利要求1所述的方法,其特征在于,所述数据区域包括多个数据容器,所述数据容器用于存储多个连续数据块及所述多个连续数据块对应的指纹序列;所述将所述数据区域中的所述数据块及相邻数据块所对应的指纹序列发送至所述内存设备的热点指纹库中,包括:将所述数据块所在的数据容器中的所述指纹序列发送至所述内存设备的热点指纹库中。3.根据权利要求1所述的方法,其特征在于,在判断所述热点指纹库中是否存在所述指纹之后,所述方法还包括:若所述热点指纹库中存在所述指纹,则确定所述数据块为重复数据,并将所述数据块的元数据信息存储至所述第一文件元数据库中,所述元数据信息包括:所述数据块在所述数据段中的顺序、所述数据块的物理存储地址及所述数据块的长度。4.根据权利要求2所述的方法,其特征在于,在判断所述去重指纹库中是否存在所述指纹之后,所述方法还包括:若所述去重指纹库中不存在所述指纹,则对所述数据块执行压缩操作,并将压缩后的数据块存储至所述数据容器,并更新所述数据容器的指纹序列,同时将压缩后数据块的元数据信息及所述数据块的指纹更新至所述去重指纹库中,所述元数据信息包括:所述数据块压缩后的物理存储地址及所述数据块压缩后的长度。5.根据权利要求2所述的方法,其特征在于,所述内存设备还包括:热点数据库;在所述确定所述数据块为重复数据之后,所述方法还包括:将所述数据容器中的所述数据块及相邻数据块发送至所述内存设备的热点数据库中。6.根据权利要求5所述的方法,其特征在于,所述方法还包括:判断所述热点数据库是否达到热点数据库的存储阈值;若达到所述热点数据库的存储阈值,则按照预设的规则淘汰出第一热点数据,并更新所述热点数据库。7.根据权利要求1至6中任一项所述的方法,其特征在于,所述方法还包括:分别判断所述热点指纹库及所述第一文件元数据库是否达到各自的存储阈值;若所述热点指纹库或所述第一文件元数据库达到各自的存储阈值,则按照预设的规则淘汰出第一热点指纹及第一元数据,并更新所述热点指纹库及所述第一文件元数据库。8.一种存储系统的数据去重装置,所述存储系统包括内存设备及全闪存阵列,其特征在于,包括:接收单元,用于接收所述内存设备发送的数据写入请求;划分计算单元,用于根据所述数据写入请求,将所述数据写入请求所指示的数据划分为预设粒度的数据块,并计算所述数据块的指纹;第一查询判断单元,用于查询...

【专利技术属性】
技术研发人员:夏文古亮
申请(专利权)人:深信服科技股份有限公司
类型:发明
国别省市:广东,44

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

1