公开/公告号CN104123347A
专利类型发明专利
公开/公告日2014-10-29
原文格式PDF
申请/专利权人 北京思特奇信息技术股份有限公司;
申请/专利号CN201410317516.9
发明设计人 朱云章;
申请日2014-07-04
分类号G06F17/30;G06F11/14;
代理机构北京轻创知识产权代理有限公司;
代理人杨立
地址 100086 北京市海淀区中关村南大街6号中电信息大厦16层
入库时间 2023-12-17 01:39:31
法律状态公告日
法律状态信息
法律状态
2018-01-09
授权
授权
2014-12-03
实质审查的生效 IPC(主分类):G06F17/30 申请日:20140704
实质审查的生效
2014-10-29
公开
公开
技术领域
本发明涉及BOSS系统领域,特别是涉及一种应用于BOSS系统的数据重 删方法及系统。
背景技术
随着运营商业务的迅速发展,业务支撑压力越来越大,其中业务数据的 存储在时间空间上均面临较大压力,主要体现在空间越来越紧张,月备时间 越来越长,如果长此以往,将会产生添加存储也不能解决的问题。
造成存储空间紧张,月备时间冗长的主要原因如下:
1)模块间冗余数据巨大
如预处理入口、出口、错单、剔重,各环节间计费关键要素重复频率极 高。
2)模块内冗余数据巨大
一个环节内的某些字段只能有几个取值范围,字段重复频率极高。
3)历史话单有一定的保存周期,占用较大存储空间
可知boss系统存储的主要问题有两点:一是历史话单不能轻易删除; 二是历史话单重复率极高。
针对上述问题,本发明提出了一种应用于BOSS系统的数据重删方法及 系统。
发明内容
本发明所要解决的技术问题是提供一种应用于BOSS系统的数据重删方 法及系统,用于解决BOSS系统中冗余数据多、存储空间使用率低的技术问 题。
本发明解决上述技术问题的技术方案如下:一种应用于BOSS系统的数 据重删方法,包括:
步骤1,将BOSS系统产生的业务文件载入预设的重删机制,并在该重删 机制中基于文件级重删方式或内存级重删方式处理载入的业务文件,生成重 删数据文件;
步骤2,采用定长方式或滑块方式将重删数据文件划分为若干个数据块;
步骤3,对每个划分好的数据块进行哈希运算,产生相应的哈希值;
步骤4,选定或新增一个数据块,并将其对应的哈希值与其他所有数据 块对应的哈希值进行比较,若出现相同的哈希值,则删除该数据块,否则存 储该数据块。
对应地,本发明的技术方案还包括一种应用于BOSS系统的数据重删系 统,包括:
预处理模块,其用于将BOSS系统产生的业务文件载入预设的重删机制, 并在该重删机制中基于文件级重删方式或内存级重删方式处理载入的业务 文件,生成重删数据文件;
分块模块,其用于采用定长方式或滑块方式将预处理后的重删数据文件 划分为若干个数据块;
运算模块,其用于对每个划分好的数据块进行哈希运算,产生相应的哈 希值;
重删判断模块,其用于选定或新增一个数据块,并将其对应的哈希值与 其他所有数据块对应的哈希值进行比较,若出现相同的哈希值,则删除该数 据块,否则存储该数据块。
本发明的有益效果是:本发明采用文件级重删方式和内存级重删方式将 重删机制引入BOSS系统,大大降低了BOSS系统的存储空间使用率,同时需 要月备的数据量也将大大降低,即缩短了月备时间,可以给运营商在存储硬 件投入上减低很大一笔开支。
附图说明
图1为本发明所述应用于BOSS系统的数据重删方法的流程示意图;
图2为本发明所述应用于BOSS系统的数据重删系统的结构示意图;
图3为实施例中采用文件级重删方式对重删数据文件进行预处理的示意 图;
图4为实施例中采用内存级重删方式对重删数据文件进行预处理的示意 图;
图5为实施例中重删算法设计思路示意图;
图6为实施例中采用定长方式分块的示意图;
图7为实施例中采用滑块方式分块的示意图;
图8为实施例中重删机制的存储结构示意图;
图9为实施例中重删数据池的数据结构示意图;
图10为实施例中进行数据重删的效果示意图。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本 发明,并非用于限定本发明的范围。
如图1所示,本实施例给出了一种应用于BOSS系统的数据重删方法, 包括:
步骤1,将BOSS系统产生的业务文件载入预设的重删机制,并在该重删 机制中基于文件级重删方式或内存级重删方式处理载入的业务文件,生成重 删数据文件;
步骤2,采用定长方式或滑块方式将重删数据文件划分为若干个数据块;
步骤3,对每个划分好的数据块进行哈希运算,产生相应的哈希值;
步骤4,选定或新增一个数据块,并将其对应的哈希值与其他所有数据 块对应的哈希值进行比较,若出现相同的哈希值,则删除该数据块,否则存 储该数据块;
步骤5,存储数据块时,将数据块存储至重删机制管理的重删数据池中, 当新增有数据块时,调用重删数据池中所有数据块的哈希值与新增的数据块 的哈希值进行比较。
如图2所示,对应上述步骤,本实施例还给出了相应的应用于BOSS系 统的数据重删系统,包括以下模块:
预处理模块,其用于将BOSS系统产生的业务文件载入预设的重删机制, 并在该重删机制中基于文件级重删方式或内存级重删方式处理载入的业务 文件,生成重删数据文件;
分块模块,其用于采用定长方式或滑块方式将预处理后的重删数据文件 划分为若干个数据块;
运算模块,其用于对每个划分好的数据块进行哈希运算,产生相应的哈 希值;
重删判断模块,其用于选定或新增一个数据块,并将其对应的哈希值与 其他所有数据块对应的哈希值进行比较,若出现相同的哈希值,则删除该数 据块,否则存储该数据块;
存储配置模块,其用于存储数据块时,将数据块存储至重删机制管理的 重删数据池中,当新增有数据块时,调用重删数据池中所有数据块的哈希值 与新增的数据块的哈希值进行比较。
基于上述的应用于BOSS系统的数据重删方法及系统的基本技术方案, 其具体的实施过程如下所述。
一、业务文件的载入
本实施例的技术方案应用于BOSS系统,即是使用相应的重删机制将 BOSS系统生成的原始业务文件(包括话单文件和错单文件等)按相应的规则 分隔、编码、存储,实现数据重删。具体地,即是将BOSS系统产生的业务 载入预设的重删机制中,将业务文件作为重删机制的入口文件进行重删,以 便生成重删数据文件。
二、业务文件的重删预处理
本实施例采用基于文件级重删方式或内存级重删方式对业务文件进行 预处理。
1)文件级重删方式
如图3所示,基于文件级重删方式处理载入的业务文件具体包括:在 BOSS系统产生的业务文件落地后,再将落地的业务文件载入至预设的重删机 制中,经重删机制处理生成重删数据文件。BOSS系统的各子系统产生的业务 文件都会对应产生落地文件,如预处理和剔重子系统产生的落地话单和落地 错单都作为重删机制的入口文件,由重删机制对这些文件进行重删,生成重 删数据文件。
可知,文件级重删方式是在BOSS系统产生落地文件后对进行重删,再 滤除落地文件,只保留重删后的元数据,对重删前文件的管理则由重删机制 实现。文件重删方式属于离线重删方式,对BOSS系统的业务处理模块影响 极小,但中间过程使用了存储空间。
2)内存级重删方式
如图4所示,基于内存级重删方式处理载入的业务文件具体包括:在 BOSS系统的业务处理模块中嵌入重删接口,在BOSS系统产生的业务文件落 地前,通过该重删接口调用重删机制处理业务文件,生成重删数据文件。
不同于文件级重删,采用内存级重删方式,即在话单等业务文件落地之 前进行重删,话单文件和错单文件在落地时已经过重删,再以元数据文件方 式存在。该方式实现了在线重删,最后落地文件将以元数据方式存放,在重 删过程中未使用存储空间,但是该方式对性能要求较高,会对现有业务处理 模块造成冲击。
三、重删数据文件的预处理
本实施例主要采用定长方式或滑块方式将预处理后的重删数据文件划 分为若干个数据块。
1)定长方式
采用定长方式将预处理后的重删数据文件划分为若干个数据块具体包 括:事先定义好每个数据块的大小,将入口文件按定义好的大小进行划分。
2)滑块方式
采用滑块方式将预处理后的重删数据文件划分为若干个数据块具体包 括:根据指纹算法和滑动窗口把入口文件进行固定大小的分块,且每一个数 据块的大小和滑动窗口大小一样,并且数据块的起点和终点分别就是滑动窗 口的起点和终点。
四、重删算法设计
基于划分好的数据块,如图5所示,本实施例的重删算法设计思路为: 利用哈希算法将数据块与现有已存储的数据块进行比较,得出存储键值key, 如果该数据块是重复数据,则文件元数据只需记录键值key,如果是新数据块, 元数据记录键值key的同时,还要将数据块落地到物理存储(重删数据池),供 下次键值的计算。
如图6所示,对于采用定长方式划分的数据块,按上述重删算法设计思 路,具体的重删过程为:使用MD5算法对每个划分好的数据块进行哈希计算 得到一个指纹值key;把得到的key值与现有的key值进行对比,假如找到匹 配的值,说明是重复数据,则删除此key值代表的数据块,并且存储指向该 数据块的指针,否则说明是新数据块,直接存储。
如图7所示,对于采用滑块方式划分的数据块,按上述重删算法设计思 路,具体的重删过程为:采用MD5哈希算法把得到的数据块进行哈希映射, 得到哈希值,并与现有的哈希值逐一比较;如果找到相同的哈希值,就删除 掉此数据块,否则就存储该数据块,并且添加其哈希值到哈希表中。滑块算 法有一个特点就是:因为每一个块都是根据滑动窗口的位置划分的,所以会 留下一些数据碎片。
五、数据块存储
如图8所示,所述重删机制设有大小可调配的多个重删数据池,且每个 重删数据池中均设有一个独立的数据重删区,且每个重删数据池的数据重删 区中存储的数据块均不相同。
如图9所示,示意了重删数据池的数据结构组织,其中重删池头数据中 记录了:
1)重删池的ID;
2)重删数据区唯一数据块(每块由一个hashkey表示)个数;
3)每个唯一数据块长度;
4)重删池共重删文件数;
5)重删池是否压缩;
6)重删池各部分偏移位置;
该数据结构组织中最重要的就是唯一数据区和文件数据区,唯一数据区 相当于数据库,文件数据区相当于还原函数。文件数据区结构为:
1)文件全路径;
2)文件属性;
3)文件被重删后的块数;
4)每个重删块的还原hashkey。
根据上述实施过程,如图10所示,原始数据最后得到的只是“ABCDE”, 再加上一些控制元数据及可将数据组织管理,大大降低了存储空间。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明 的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发 明的保护范围之内。
机译: 具有用于管理由此记录的数据流的再现的数据结构的记录介质以及记录和重删方法和装置
机译: 具有用于管理由此记录的数据流的再现的数据结构的记录介质以及记录和重删方法和装置
机译: 一种具有速率兼容删余卷积码(rcpc)和自动重复的数据块的传输方法