本发明专利技术实施例公开了一种压缩、还原方法及终端。一种压缩方法包括:获取目标文件中的目标字符串,其中,所述目标字符串的大小大于预设阈值;检测备份数据库中是否存在与所述目标字符串对应的第一消息摘要值;如果没有,则通过消息摘要算法对所述目标字符串进行压缩从而得到第二消息摘要值,并将所述目标字符串与所述第二消息摘要值的对应关系存储到所述备份数据库中,其中,所述第二消息摘要值的长度小于所述目标字符串的长度;将所述目标字符串用所述第二消息摘要值替代从而得到所述目标文件的压缩文件。所述方法能够对大字符串进行压缩存储,节省存储空间,将大字符串和消息摘要值的对应关系备份存储,方便还原所述压缩文件。
【技术实现步骤摘要】
一种压缩、还原方法及终端
本专利技术涉及电子
,特别涉及一种压缩、还原方法及终端。
技术介绍
随着互联网的高速发展,每天都会产生数量庞大的数据,而其中又有很多是大字节的重复数据,在存储时浪费了存储空间,还会影响查询性能。为了节省存储空间,一般使用压缩算法对数据进行压缩存储。现有的压缩方法通过Quicklz,Snappy,zlib等算法来压缩数据,在需要用到数据时进行解压缩,以达到节省存储空间的目的,但现有的压缩算法都有一定的压缩百分比,受限于原始数据的大小,对原始数据的压缩效果较差,而且在解压缩的过程中还有可能损坏原始数据。
技术实现思路
本专利技术实施例提供一种压缩、还原方法及终端,能够用摘要值替代大字符串进行存储,节省存储空间。第一方面,本专利技术实施例提供了一种压缩方法,包括:获取目标文件中的目标字符串,其中,所述目标字符串的大小大于预设阈值;检测备份数据库中是否存在与所述目标字符串对应的第一消息摘要值;如果没有,则通过消息摘要算法对所述目标字符串进行压缩从而得到第二消息摘要值,并将所述目标字符串与所述第二消息摘要值的对应关系存储到所述备份数据库中,其中,所述第二消息摘要值的长度小于所述目标字符串的长度;将所述目标字符串用所述第二消息摘要值替代从而得到所述目标文件的压缩文件。第二方面,本专利技术实施例提供了一种还原方法,包括:获取压缩文件中的消息摘要值,其中,所述消息摘要值是通过消息摘要算法对目标字符串进行压缩得到的,所述消息摘要值的长度小于所述目标字符串的长度;从备份数据库中获取与所述消息摘要值对应的目标字符串,其中,所述目标字符串与所述消息摘要值的对应关系存储在所述备份数据库中;将所述消息摘要值用所述对应的目标字符串替代,从而得到所述压缩文件的原始文件。第三方面,本专利技术实施例提供一种终端,包括:第一获取单元,用于获取目标文件中的目标字符串,其中,所述目标字符串的大小大于预设阈值;第一检测单元,用于检测备份数据库中是否存在与所述目标字符串对应的第一消息摘要值;压缩单元,用于通过消息摘要算法对所述目标字符串进行压缩从而得到第二消息摘要值,其中,所述第二消息摘要值的长度小于所述目标字符串的长度;存储单元,将所述目标字符串与所述第二消息摘要值的对应关系存储到所述备份数据库中;替代单元,用于将所述目标字符串用所述第二消息摘要值替代从而得到所述目标文件的压缩文件。第四方面,本专利技术实施例提供一种终端,包括:第一获取单元,用于获取压缩文件中的消息摘要值,其中,所述消息摘要值是通过消息摘要算法对目标字符串进行压缩得到的,所述消息摘要值的长度小于所述目标字符串的长度;第二获取单元,用于从备份数据库中获取与所述消息摘要值对应的目标字符串,其中,所述目标字符串与所述消息摘要值的对应关系存储在所述备份数据库中;替代单元,用于将所述消息摘要值用所述对应的目标字符串替代,从而得到所述压缩文件的原始文件。本专利技术实施例,通过获取目标文件中的目标字符串,检测备份数据库中是否存在与所述目标字符串对应的第一消息摘要值,如果没有,则通过消息摘要算法对所述目标字符串进行压缩从而得到第二消息摘要值,并将所述目标字符串与所述第二消息摘要值的对应关系存储到所述备份数据库中,将所述目标字符串用所述第二消息摘要值替代从而得到所述目标文件的压缩文件,能够节省存储空间,将大字符串备份存储,方便还原所述压缩文件。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是现有技术中日志记录的示意图;图2是本专利技术实施例提供的一种压缩方法的流程图;图3是本专利技术实施例提供的压缩后的日志记录的示意图;图4是本专利技术实施例提供的另一种压缩方法的流程图;图5是本专利技术实施例提供的一种还原方法的流程图;图6是本专利技术实施例提供的一种终端的结构示意图;图7是本专利技术实施例提供的另一种终端的结构示意图;图8是本专利技术实施例提供的另一种终端的结构示意图;图9是本专利技术实施例提供的另一种终端的结构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。需要说明的是,在本专利技术实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本专利技术。在本专利技术实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。随着互联网的高速发展,每天都会有大量的数据产生。在服务器中,日志数据库中保存有和终端进行交互的日志记录,在每一条日志记录中都包含有一个UserAgent字段,用于存储终端的基本信息(例如浏览器标识、操作系统标识、浏览器语言、版本信息等),所述UserAgent字段有200多个字节大小,而一条日志记录中其他的字段加起来不到80字节。针对同一个终端,所述日志数据库中存储有多条日志记录,每一条目志记录中的UserAgent字段都是相同的,相当于所述UserAgent字段重复存储了多次,浪费了存储空间。如图1所示,图1为一条日志记录中各字段字节大小的示意图。为了解决上述问题,本专利技术实施例公开了一种压缩方法。请参阅图2,图2是本专利技术实施例提供的一种压缩方法的流程图,所述方法包括以下步骤:S201:获取目标文件中的目标字符串,其中,所述目标字符串的大小大于预设阈值。在本实施方式中,所述目标文件为需要进行压缩处理的文件,例如服务器中的日志数据库。所述目标字符串为所述目标文件中大小大于预设阈值的字符串,其中,所述预设阈值为用户根据所述目标文件的具体情况设置的或者默认的。在一具体实施例中,在服务器的日志数据库中,假设默认的预设阈值为200字节,一条日志记录中的UserAgent字段的大小超过了预设阈值200字节,那么所述UserAgent字段就为目标字符串。在本实施方式中,所述目标文件可以是已经存储好的文件,所述获取目标文件中的目标字符串具体为:定期地检测所述目标文件中是否有大小大于预设阈值的字符串,若有,则所述字符串为目标字符串,获取所述目标文件中的目标字符串;在其他实施方式中,所述目标文件可以是正在进行存储操作的文件,所述获取目标文件中的目标字符串具体为:在进行存储时,先检测所述目标文件中是否有大小大于预设阈值的字符串,若有,则所述字符串为目标字符串,获取所述目标文件中的目标字符串。S202:检测备份数据库中是否存在与所述目标字符串对应的第一消息摘要值。具体的,所述备份数据库用于存储字符串和消息摘要值的对应关系,其中,所述消息摘要值为通过消息摘要算法对所述字符串进行压缩从而得到的。在本实施方式中,检测所述备份数据库中是否存在与所述目标字符串对应的第一消息摘要值,若没有,执行步骤S203-S204的步骤,保证所述备份数据库中针本文档来自技高网...
【技术保护点】
一种压缩方法,其特征在于,包括:获取目标文件中的目标字符串,其中,所述目标字符串的大小大于预设阈值;检测备份数据库中是否存在与所述目标字符串对应的第一消息摘要值;如果没有,则通过消息摘要算法对所述目标字符串进行压缩从而得到第二消息摘要值,并将所述目标字符串与所述第二消息摘要值的对应关系存储到所述备份数据库中,其中,所述第二消息摘要值的长度小于所述目标字符串的长度;将所述目标字符串用所述第二消息摘要值替代从而得到所述目标文件的压缩文件。
【技术特征摘要】
1.一种压缩方法,其特征在于,包括:获取目标文件中的目标字符串,其中,所述目标字符串的大小大于预设阈值;检测备份数据库中是否存在与所述目标字符串对应的第一消息摘要值;如果没有,则通过消息摘要算法对所述目标字符串进行压缩从而得到第二消息摘要值,并将所述目标字符串与所述第二消息摘要值的对应关系存储到所述备份数据库中,其中,所述第二消息摘要值的长度小于所述目标字符串的长度;将所述目标字符串用所述第二消息摘要值替代从而得到所述目标文件的压缩文件。2.根据权利要求1所述的方法,其特征在于,在获取目标文件中的目标字符串之后,在通过消息摘要算法对所述目标字符串进行压缩从而得到第二消息摘要值之前,还包括:检测所述目标字符串在所述目标文件中的重复次数;通过消息摘要算法对所述目标字符串进行压缩从而得到所述第二消息摘要值具体为:在所述目标字符串的重复次数大于数量阈值的情况下,则通过消息摘要算法对所述目标字符串进行压缩从而得到所述第二消息摘要值。3.据权利要求1所述的方法,其特征在于,如果有所述第一消息摘要值,从所述备份数据库中获取与所述目标字符串对应的所述第一消息摘要值,并将所述目标字符串用所述对应的所述第一消息摘要值替代从而得到所述目标文件的压缩文件。4.根据权利要求1所述的方法,其特征在于,所述消息摘要算法包括:MD5、sha-1、RIPEMD、Haval中的任意一个。5.一种还原方法,其特征在于,包括:获取压缩文件中的消息摘要值,其中,所述消息摘要值是通过消息摘要算法对目标字符串进行压缩得到的,所述消息摘要值的长度小于所述目标字符串的长度;从备份数据库中获取与所述消息摘要值对应的目标字符串,其中,所述目标字符串与所述消息摘要值的对应关系存储在所述备份数据库中;将所述消息摘要值用所述对应的目标字符串替代,从而得到所述压缩文件的原始...
【专利技术属性】
技术研发人员:张超,
申请(专利权)人:深圳市金立通信设备有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。