一种基于DeviceMapper的存储系统去重优化方法技术方案

技术编号:36703503 阅读:22 留言:0更新日期:2023-03-01 09:22
本发明专利技术公开了一种基于Device Mapper的存储系统去重优化方法,重删内核模块基于Device Mapper的数据接口target_type实现重要回调函数,基于重要回调函数实现去重优化,所述去重优化方法包括:步骤1、将数据块划分为4M大小;步骤2、数据块生成哈希值;步骤3、根据哈希索引和映射情况进行数据粒度进一步划分与检测,实现去重优化。提升了虚拟化平台下存储服务器存储设备的使用效率,降低了虚拟化存储资源的消耗。耗。耗。

【技术实现步骤摘要】
一种基于Device Mapper的存储系统去重优化方法


[0001]本专利技术属于数据存储系统
,具体涉及一种基于Device Mapper的存储系统去重优化方法。

技术介绍

[0002]数据存储系统中数据存在重复的情况,如图1所示。图1中三个数据块内容是A,两个数据块的内容是B,如果数据重删软件检测到有数据重复,只存储一份数据到磁盘,其他数据块指向实际存储的位置。图1实际存储数据只有一份ABC。
[0003]从应用层到Linux IO stack看,重删技术可以部署在应用层,文件系统层,Device Mapper块设备层。应用层重删影响数据的可靠性;文件系统重删实现复杂,需要熟悉文件系统的实现;Device Mapper块设备层重删,使用Device Mapper target_type的接口,开发重删模块,实现简单,效率高。

技术实现思路

[0004]本专利技术所要解决的技术问题是针对上述现有技术的不足,提供一种基于Device Mapper的存储系统去重优化方法,数据重删技术结合其他计算机系统,减少IT基础设施的开销,通过数据去重优化,减少需要保存的数据总量,提升操作系统的整体性能,延长存储设备的生命周期。
[0005]为实现上述技术目的,本专利技术采取的技术方案为:
[0006]一种基于Device Mapper的存储系统去重优化方法,重删内核模块基于Device Mapper的数据接口target_type实现重要回调函数,基于重要回调函数实现去重优化,所述去重优化方法包括:
[0007]步骤1、将数据块划分为4M大小;
[0008]步骤2、数据块生成哈希值;
[0009]步骤3、根据哈希索引和映射情况进行数据粒度进一步划分与检测,实现去重优化。
[0010]为优化上述技术方案,采取的具体措施还包括:
[0011]上述的重删内核模块的使用方法为:编译重删内核模块,安装内核模块,创建设备使用数据重删技术。
[0012]上述的重要回调函数包括:
[0013]1)dm_ctr_fn,用来构造映射目标私有配置结构,数据块划分,元数据管理;
[0014]2)dm_dtr_fn,为回调函数的逆过程,用来析构映射目标私有配置结构;
[0015]3)dm_map_fn,为映射回调函数,用来根据映射目标私有配置结构映射请求到底层设备。
[0016]上述的步骤3中,若没有哈希索引和没有映射,则新建哈希索引和逻辑地址和物理地址的映射,设置物理地址映射标志加2,指纹标志为True,4M数据块划分4K粒度,跳转到步
骤2重复检测数据。
[0017]上述的步骤3中,若没有哈希索引和有映射,则新建哈希映射,设置物理地址指纹标志为True,物理地址映射标志加1,4M数据块划分4K粒度,跳转到步骤2重复检测数据。
[0018]上述的步骤3中,若有哈希索引和没有映射,则新建逻辑地址和物理地址的映射,物理地址映射标志加1,实现数据重删。
[0019]上述的步骤3中,若有哈希索引和有映射,则4M数据块划分4K粒度,跳转到步骤2重复检测数据。
[0020]本专利技术具有以下有益效果:
[0021]基于块页映射算法和块页指纹算法,进行4M块检测和4K页检测两次数据检测,通过哈希指纹和逻辑地址映射的对应物理地址,使用标志位标记物理地址使用,提升重删效率,提升了虚拟化平台下存储服务器存储设备的使用效率,降低了虚拟化存储资源的消耗,具体的:
[0022]1、数据块划分4M块和4K页划分
[0023]数据基于4M块划分数据块的大小,生成数据的指纹,做数据重删监测,如果检测不到重复数据,进一步把4M数据划分为1024个4K页做数据重删检测,提高数据重删检测的重删比,减小数据写入放大。
[0024]2、块设备块页指纹生成和块设备块页映射
[0025]块设备层先实现4M逻辑块和4M物理块的映射,4M物理块的指纹生成。
[0026]4M数据没有重删的数据,在4M数据内,把4M数据分为1024个4K页,实现4K逻辑页和物理页的映射,同时生成4K物理页指纹。
附图说明
[0027]图1为数据重复;
[0028]图2为重删dd

dedup示意图;
[0029]图3为dd

dedup重删流程图。
具体实施方式
[0030]以下结合附图对本专利技术的实施例作进一步详细描述。
[0031]一种基于Device Mapper的存储系统去重优化方法,重删内核模块基于Device Mapper的数据接口target_type实现重要回调函数,基于重要回调函数实现去重优化;
[0032]所述重要回调函数包括:
[0033]1)dm_ctr_fn
[0034]用来构造映射目标私有配置结构,数据块划分,元数据管理;
[0035]2)dm_dtr_fn
[0036]回调函数的逆过程,用来析构映射目标私有配置结构;
[0037]3)dm_map_fn
[0038]映射回调函数,用来根据映射目标私有配置结构映射请求到底层设备;
[0039]如图2所示,重删内核模块使用方法如下:
[0040]S101:编译重删内核模块。
[0041]进入到代码存储目录文件执行make,生成内核模块dd

dedup.ko,其中dd表示重复数据删除。
[0042]S102:安装内核模块
[0043]insmod安装内核模块insmod dd

dedup.ko,lsmod查看内核模块是否已经加载到内核lsmod|grep dd

dedup。
[0044]device mapper的数据重删技术加载到内核的同时数据重删生效。
[0045]S103:创建2GB的临时设备
[0046]dd if=/dev/zero of=/data/dedup bs=512count=4000000
[0047]S104:将循环设备加到此设备
[0048]losetup/dev/loop3/data/dedup
[0049]S105:创建dd

dedup_device设备使用数据重删技术
[0050]echo 0 20000dd

dedup/dev/loop3 0|dmsetup create dd

dedup_device,创建了一个新设备/dev/mapper/dd

dedup_device(查看/dev/mapper/下有dd

dedup_device设备,/dev/mapper/dd

dedup_device可以被格式之后挂载使用重删技术)
[本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于Device Mapper的存储系统去重优化方法,重删内核模块基于Device Mapper的数据接口target_type实现重要回调函数,基于重要回调函数实现去重优化,其特征在于,所述去重优化方法包括:步骤1、将数据块划分为4M大小;步骤2、数据块生成哈希值;步骤3、根据哈希索引和映射情况进行数据粒度进一步划分与检测,实现去重优化。2.根据权利要求1所述的一种基于Device Mapper的存储系统去重优化方法,其特征在于,所述重删内核模块的使用方法为:编译重删内核模块,安装内核模块,创建设备使用数据重删技术。3.根据权利要求1所述的一种基于Device Mapper的存储系统去重优化方法,其特征在于,所述重要回调函数包括:1)dm_ctr_fn,用来构造映射目标私有配置结构,数据块划分,元数据管理;2)dm_dtr_fn,为回调函数的逆过程,用来析构映射目标私有配置结构;3)dm_map_fn,为映射回调函数,用来根据映射目标私有配置结构映射请求到底层设备。4.根据...

【专利技术属性】
技术研发人员:王举利张磊杨经纬陈相如常利民
申请(专利权)人:中电信数智科技有限公司
类型:发明
国别省市:

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

1