국제 및 국내 특허문헌 검색
이 애플리케이션의 일부 콘텐츠는 현재 사용할 수 없습니다.
이 상황이 계속되면 다음 주소로 문의하십시오피드백 및 연락
1. (WO2017097071) METHOD AND APPARATUS FOR COMPRESSING AND DECOMPRESSING DATA
Document

说明书

发明名称 0001   0002   0003   0004   0005   0006   0007   0008   0009   0010   0011   0012   0013   0014   0015   0016   0017   0018   0019   0020   0021   0022   0023   0024   0025   0026   0027   0028   0029   0030   0031   0032   0033   0034   0035   0036   0037   0038   0039   0040   0041   0042   0043   0044   0045   0046   0047   0048   0049   0050   0051   0052   0053   0054   0055   0056   0057   0058   0059   0060   0061   0062   0063   0064   0065   0066   0067   0068   0069   0070   0071   0072   0073   0074   0075   0076   0077   0078   0079   0080   0081   0082   0083   0084   0085   0086   0087   0088   0089   0090   0091   0092   0093   0094   0095   0096   0097   0098   0099   0100   0101   0102   0103   0104   0105  

权利要求书

1   2   3   4   5   6   7   8   9   10   11   12   13   14   15   16   17   18   19   20   21   22   23   24  

附图

0001   0002   0003   0004   0005   0006   0007   0008   0009   0010   0011   0012  

说明书

发明名称 : 数据压缩及解压的方法及装置

技术领域

[0001]
本发明涉及计算机技术领域,具体而言,本发明涉及一种数据压缩及解压的方法及装置。

背景技术

[0002]
随着计算机技术的不断发展,在软件开发方面各种SDK(Software Development Kit,软件开发工具包)及开发方法也在不断的更新。在软件应用的过程中,通常需要通过接口传递各种类型的数据,当传输的数据量较大时,如传输数据中包含了大量的较长字符的数据名及其对应的具体数值,一方面,在数据传递后将耗费系统大量的CPU(Central Processing Unit,中央处理器)资源去解析各数据名及其对应的数值,从而影响终端的处理速度,且大量较长字符的数据名在存储时将浪费大量的终端数据存储空间;另一方面,若数据通过网络方式进行传递,将耗费大量的网络带宽,甚至发生数据被截断的情况,导致数据丢失。
[0003]
因此,需要一种对传输数据中较长字符的参数名进行压缩的方案,使包含大量较长字符的传输数据名及其对应的具体数值在接口传递的过程中实现高效的传递,达到节约网络带宽资源与系统CPU资源的目的,并实现在数据库中对传输数据进行高效的读写,从而进一步的提高用户的体验。
[0004]
发明内容
[0005]
为克服上述技术问题或者至少部分地解决上述技术问题,特提出以下技术方案:
[0006]
本发明的实施例提出了一种数据压缩的方法,包括:对原始传输数据进行分析,确定包括原始传输数据的数据结构及数据大小的数据特征信 息;根据数据特征信息,判断是否对原始传输数据进行压缩处理;当判断结果指示执行压缩处理时,基于键压缩匹配列表中预定键压缩方式,对原始传输数据中原始键值对的键进行转换生成相应的压缩键;基于压缩键生成包括相应的压缩键值对的压缩传输数据。
[0007]
本发明的另一实施例提出了一种数据解压的方法,包括:判断接收到的传输数据是否为压缩传输数据;当判断确定传输数据为压缩传输数据时,解析并提取压缩传输数据中的压缩键值对的压缩键;基于预配置的键压缩匹配列表中的预定键解压方式,对压缩键进行解压处理,以获取得到相应的原始键值对。
[0008]
本发明的实施例提出了一种数据压缩的装置,包括:第一确定模块,用于对原始传输数据进行分析,确定包括原始传输数据的数据结构及数据大小的数据特征信息;第一判断模块,用于根据数据特征信息,判断是否对原始传输数据进行压缩处理;转换模块,用于当判断结果指示执行压缩处理时,基于键压缩匹配列表中预定键压缩方式,对原始传输数据中原始键值对的键进行转换生成相应的压缩键;第一生成模块,基于压缩键生成包括相应的压缩键值对的压缩传输数据。
[0009]
本发明的另一实施例提出了一种数据解压的装置,包括:第六判断模块,用于判断接收到的传输数据是否为压缩传输数据;解析提取模块,用于当判断确定传输数据为压缩传输数据时,解析并提取压缩传输数据中的压缩键值对的压缩键;解压处理模块,基于预配置的键压缩匹配列表中的预定键解压方式,对压缩键进行解压处理,以获取得到相应的原始键值对。
[0010]
本发明的另一实施例提出了一种计算机程序,包括计算机可读代码,当所述计算机可读代码在计算设备上运行时,导致所述计算设备执行如上文所述的方法。
[0011]
本发明的另一实施例提出了一种计算机可读介质,其中存储了如上文所述的计算机程序。
[0012]
本发明的实施例中,提出了一种数据压缩及解压的方案,在服务器端通过分析原始传输数据,判断是否对原始传输数据进行压缩处理,当判断结果指示执行压缩处理时,基于键压缩匹配列表中预定键压缩方式,对原 始传输数据中原始键值对的键进行转换生成相应的压缩键,随后基于压缩键生成包括相应的压缩键值对的压缩传输数据;若传输数据通过网络方式进行传输时,通过对原始传输数据中原始键值对的键进行转换生成相应的压缩键,可在数据传输过程中节省网络带宽,避免了数据量过大时不可预期的数据丢失的情况,实现了数据的高效传输;同时,提高计算机数据处理的响应时间;在终端设备的客户端中,当判断接收到的传输数据为压缩传输数据时,解析并提取压缩传输数据中的压缩键值对的压缩键,随后基于预配置的键压缩匹配列表中的预定键解压方式,对压缩键进行解压处理,以获取得到相应的原始键值对,可准确快速地解压得到压缩键的原始值,实现了高效的获取传输数据,从而为后期高效处理接收到的传输数据提供了保障,提高了用户的体验。
[0013]
本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

[0014]
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
[0015]
图1为本发明中一个实施例的数据压缩的方法的流程示意图;
[0016]
图2为本发明中一个优选实施例的数据压缩的方法的流程示意图;
[0017]
图3为本发明中一个优选实施例的数据压缩的方法的流程示意图;
[0018]
图4为本发明中一个优选实施例的数据压缩的方法的流程示意图;
[0019]
图5为本发明中另一实施例的数据解压的方法的流程示意图;
[0020]
图6为本发明中另一实施例的数据压缩的装置的结构示意图;
[0021]
图7为本发明中另一优选实施例的数据压缩的装置的结构示意图;
[0022]
图8为本发明中另一优选实施例的数据压缩的装置的结构示意图;
[0023]
图9为本发明中另一优选实施例的数据压缩的装置的结构示意图;
[0024]
图10为本发明中另一实施例的数据解压的装置的结构示意图;
[0025]
图11示出了用于执行根据本发明的方法的计算设备的框图;以及
[0026]
图12示出了用于保持或者携带实现根据本发明的方法的程序代码的 存储单元示意图。

具体实施方式

[0027]
下面详细描述本发明的实施例,实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
[0028]
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
[0029]
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
[0030]
图1为本发明中一个实施例的数据压缩的方法的流程示意图。
[0031]
步骤S110:对原始传输数据进行分析,确定包括原始传输数据的数据结构及数据大小的数据特征信息;步骤S120:根据数据特征信息,判断是否对原始传输数据进行压缩处理;步骤S130:当判断结果指示执行压缩处理时,基于键压缩匹配列表中预定键压缩方式,对原始传输数据中原始键值对的键进行转换生成相应的压缩键;步骤S140:基于压缩键生成包括相应的压缩键值对的压缩传输数据。
[0032]
本发明的实施例中,提出了一种数据压缩及解压的方案,在服务器端 通过分析原始传输数据,判断是否对原始传输数据进行压缩处理,当判断结果指示执行压缩处理时,基于键压缩匹配列表中预定键压缩方式,对原始传输数据中原始键值对的键进行转换生成相应的压缩键,随后基于压缩键生成包括相应的压缩键值对的压缩传输数据;若传输数据通过网络方式进行传输时,通过对原始传输数据中原始键值对的键进行转换生成相应的压缩键,可在数据传输过程中节省网络带宽,避免了数据量过大时不可预期的数据丢失的情况,实现了数据的高效传输;同时,提高计算机数据处理的响应时间;在终端设备的客户端中,当判断接收到的传输数据为压缩传输数据时,解析并提取压缩传输数据中的压缩键值对的压缩键,随后基于预配置的键压缩匹配列表中的预定键解压方式,对压缩键进行解压处理,以获取得到相应的原始键值对,可准确快速地解压得到压缩键的原始值,实现了高效的获取传输数据,从而为后期高效处理接收到的传输数据提供了保障,提高了用户的体验。
[0033]
本发明实施例中,传输数据中数据的数据结构以键值(Key-Value)结构为例。其中,键压缩字典文件中键压缩的内容如可以以26个大写和小写英文字符以及0至9的10个数字相结合进行表示,以此方式可以组成62个不同单字符的压缩键,3844个不同的两个字符的压缩键,238328个不同的三个字符的压缩键,完全能够满足现有应用中压缩键值结构中键的使用。
[0034]
步骤S110:对原始传输数据进行分析,确定包括原始传输数据的数据结构及数据大小的数据特征信息。
[0035]
例如,在包含三组键值对结构的原始传输数据“userinfo”中,三组键值对分别为“user_id:22”、“user_id:23”及“user_id:24”,对于一组键值对“user_id:22”,其Key部分为“user_id”,Value部分为“22”,确定原始传输数据“userinfo”的数据结构为键值对结构,并计算确定原始传输数据“userinfo”中多组键值对的具体大小为30个字节。
[0036]
步骤S120:根据数据特征信息,判断是否对原始传输数据进行压缩处理。
[0037]
例如,根据原始传输数据“userinfo”的数据结构为键值对结构,且 数据大小为30个字节,判断是否对“userinfo”的原始传输数据的Key部分“user_id”进行压缩处理,判断方式在下述如图2-4所示的实施例中具体阐述。
[0038]
步骤S130:当判断结果指示执行压缩处理时,基于键压缩匹配列表中预定键压缩方式,对原始传输数据中原始键值对的键进行转换生成相应的压缩键。
[0039]
例如,当判断结果指示执行对原始传输数据“userinfo”的3组键值对的Key部分的数据“user_id”进行压缩处理时,基于键压缩匹配列表中预定键压缩方式,如“user_id”压缩后对应的值为“uid”,将原始传输数据“userinfo”的3组键值对的的键值“user_id”进行转换生成相应的压缩键“uid”。
[0040]
步骤S140:基于压缩键生成包括相应的压缩键值对的压缩传输数据。
[0041]
例如,基于压缩键“uid”生成包括相应的3组压缩键值对的压缩传输数据“uid:22”、“uid:23”及“uid:24”。
[0042]
在一优选实施例中,如图2所示,根据数据特征信息,判断是否对原始传输数据进行压缩处理的步骤,具体包括步骤S221和步骤S222。步骤S221:判断原始传输数据的数据大小与第一预定数据大小阈值的关系;步骤S222:若判断结果为原始传输数据的数据大小大于第一预定数据大小阈值时,确定对原始传输数据进行压缩处理。
[0043]
例如,第一预定数据大小阈值为20字节,根据原始传输数据“userinfo”的数据大小为30字节,判断得到原始传输数据“userinfo”的数据大小大于第一预定数据大小阈值,则确定对原始传输数据“userinfo”中三组键值对的Key部分“user_id”进行压缩处理,得到压缩后的Key部分为键压缩匹配列表中“username”对应的数据“uid”。
[0044]
在另一优选实施例中,如图3所示,根据数据特征信息,判断是否对原始传输数据进行压缩处理的步骤,具体包括步骤S323和步骤S324。步骤S323:判断原始传输数据的数据大小分别与第一预定数据大小阈值及第二预定数据大小阈值的关系,第一预定数据大小阈值大于第二预定数据大小阈值;步骤S324:若判断结果为原始传输数据的数据大小大于第二 预定数据大小阈值且小于第一预定数据大小阈值时,根据数据结构判断是否对原始传输数据进行压缩处理。
[0045]
例如,第一预定数据大小阈值为50字节,第二预定数据大小阈值为20字节,在包含多组键值对结构的用于传递客户信息的原始传输数据中,包含如下格式键值对数据:“username:tracy;age:18;username:tom;age:32;”,其中Key部分的数据分别为“username”、“age”、“username”和“age”,Value部分的数据分别为“tracy”、“18”、“tom”和“32”,用于传递客户信息的原始传输数据中,确定原始传输数据的数据结构为键值对结构,且原始传输数据的数据大小为42字节,可判断得到原始传输数据的数据大小42字节大于第二预定数据大小阈值20字节且小于第一预定数据大小阈值50字节,则继续根据数据结构判断是否对原始传输数据进行压缩处理。
[0046]
优选地(参照图3),步骤S324包括步骤S3241(图中未示出)和步骤S3242(图中未示出)。步骤S3241:统计原始传输数据中具有相同的第一键的键值对的数量与原始传输数据中包括的键值对总数量的第一比例;步骤S3242:当第一比例大于第一预定比例阈值,且第一键的字符数量大于第一预定字符数量阈值时,判断需要对原始传输数据进行压缩处理。
[0047]
例如,第一预定数据大小阈值为50字节,第二预定数据大小阈值为20字节,第一预定比例阈值为40%,第一预定字符数量阈值为15,原始传输数据中出现频率最高的键为第二键;在包含多组键值对结构的原始传输数据“username:tracy;age:18;username:tom;age:32;”中,原始传输数据的数据大小为42字节,可判断确定原始传输数据的数据大小42字节大于第二预定数据大小阈值20字节且小于第一预定数据大小阈值50字节,随后统计原始传输数据中具有相同的第一键“username”的键值对的数量为2个,具有相同的第一键“username”的键值对的数量2除以原始传输数据中包括的键值对总数量4,计算得到第一比例为50%,第一比例50%大于第一预定比例阈值40%,且在原始传输数据中第一键“username”的字符数量为16大于第一预定字符数量阈值15,判断需要对第一键“username” 进行压缩处理;随后基于键压缩匹配列表中预定键压缩方式,对原始传输数据的Key部分为“username”的键值对中的“username”进行压缩处理,得到压缩后的Key部分为“username”的键值对中的“username”的对应的压缩键为“uid”;统计原始传输数据中具有相同的键“age”的键值对的数量为2个,具有相同的键“age”的键值对的数量2除以原始传输数据中包括的键值对总数量4得到的第一比例50%,则第一比例50%大于第一预定比例阈值40%,但键“age”的字符数量为4小于第一预定字符数量阈值15,因此不对原始传输数据的Key部分为“age”的键值对中的“age”进行压缩处理。
[0048]
优选地(参照图3),步骤S324包括步骤S3243(图中未示出)、步骤S3244(图中未示出)和步骤S3245(图中未示出)。步骤S3243:判断原始传输数据中具有最长字符长度的第二键的字符数量是否大于第二预定字符数量阈值;步骤S3244:若判断第二键的字符数量大于第二预定字符数量阈值时,统计原始传输数据中全部第二键的字符数量占原始传输数据的总字符数量的第二比例;步骤S3245:当第二比例大于第二预定比例阈值时,判断需要对原始传输数据进行压缩处理。
[0049]
例如,第一预定数据大小阈值为50字节,第二预定数据大小阈值为20字节,第二预定字符数量阈值为2,第二预定比例阈值为20%,原始传输数据中具有最长字符长度的键为第二键;在包含多组键值对结构的原始传输数据中,原始传输数据的数据大小为42字节,可判断确定原始传输数据的数据大小42字节大于第二预定数据大小阈值20字节且小于第一预定数据大小阈值50字节,随后判断原始传输数据中具有最长字符长度的第二键“username”的字符数量为8大于第二预定字符数量阈值2,将原始数据中两个第二键“username”的字符数量16除以原始传输数据的总字符数量42得到第二比例38%,判断确定第二比例38%大于第二预定比例阈值20%,则判断需要对原始传输数据的Key部分为“username”的键值对中的“username”进行压缩处理,基于键压缩匹配列表中预定键压缩方式,压缩后得到Key部分为“username”的键值对中的“username”的对应的压缩键为“uid”。
[0050]
在一优选实施例中,如图4所示,该方法包括步骤S410、步骤S420、步骤S430、步骤S440和步骤S450。步骤S410:对原始传输数据进行分析,确定包括原始传输数据的数据结构及数据大小的数据特征信息;步骤S420:确定在预定时间段内原始传输数据中各个键值对中的键的历史出现频率;步骤S430:根据数据特征信息,并结合历史出现频率,判断是否对原始传输数据进行压缩处理;步骤S440:当判断结果指示执行压缩处理时,基于键压缩匹配列表中预定键压缩方式,对原始传输数据中原始键值对的键进行转换生成相应的压缩键;步骤S450:基于压缩键生成包括相应的压缩键值对的压缩传输数据。
[0051]
其中,本优选实施例中步骤S410、步骤S440和步骤S450中执行的内容与图1所示的步骤S110、步骤S130和步骤S140中执行的内容相同或相似,在此不再赘述。
[0052]
例如,在包含多组键值对结构的原始传输数据中,包含如下格式键值对数据:“username:tracy;age:18;username:tom;age:32;”,根据数据库中的近一个月的历史记录,得到在近一个月的时间段内原始传输数据中各个键值对中Key键的历史出现频率如下:“username”出现频率为一个月800次,“age”出现频率为一个月900次;根据图3的判断方法判断对原始传输数据的Key部分为“username”的键值对中的“username”进行压缩处理,不对原始传输数据的Key部分为“age”的键值对中的“age”进行压缩处理,由于“age”出现频率大于“username”出现的频率,则结合历史出现频率判断需要对原始传输数据的Key部分为“age”的键值对中的“age”进行压缩处理。
[0053]
在一优选实施例中,步骤S140还包括步骤S141(图中未示出)和步骤S142(图中未示出)。步骤S141:基于压缩键生成相应的压缩键值对,并设置相关联的压缩状态标识;步骤S142:将压缩键值对及相关联的压缩状态标识组合以生成压缩传输数据。
[0054]
例如,基于原始传输数据生成相应的压缩键值对,设置相关联的压缩状态标识,可通过压缩标识如“IsCompressed”对压缩标识状态进行设置,当压缩状态为压缩时可设置为“IsCompressed=true;”,当压缩状态为不 压缩时可设置为“IsCompressed=false;”,根据对原始传输数据的Key部分为“username”和“age”的键值对中的“username”和“age”进行压缩处理得到对应压缩键为“un”和“ag”,将压缩键值对及相关联的压缩状态标识组合以生成压缩传输数据“IsCompressed=true;un:tracy;ag:18;un:tom;ag:32;”。
[0055]
在一优选实施例中,该方法还包括步骤S150(图中未示出)和步骤S160(图中未示出)。步骤S150:基于键压缩匹配列表生成相应的键压缩字典文件;步骤S160:根据接收到的应用获取请求,将键压缩字典文件作为配置文件发送至请求方。
[0056]
例如,基于预定的键压缩匹配列表生成相应的键压缩字典文件,文件名为CompFile,文件内容为“username:un;age:ag;”,根据接收到的客户端应用获取请求,将键压缩字典文件CompFile作为配置文件发送至相应的请求方。
[0057]
图5为本发明中一个实施例的数据解压的方法的流程示意图。
[0058]
步骤S510:判断接收到的传输数据是否为压缩传输数据;步骤S520:当判断确定传输数据为压缩传输数据时,解析并提取压缩传输数据中的压缩键值对的压缩键;步骤S530:基于预配置的键压缩匹配列表中的预定键解压方式,对压缩键进行解压处理,以获取得到相应的原始键值对。
[0059]
例如,终端设备中应用APP的客户端向服务器端发送获取APP相关的数据请求后,终端设备接收到服务器端返回的传输数据,当客户端的应用APP判断接收到的传输数据为压缩传输数据时,对压缩传输数据进行数据解析并提取压缩传输数据中的压缩键值对的压缩键,基于在客户端预配置的键压缩匹配列表中的预定键解压方式,对服务器端返回传输数据中的压缩键进行解压处理,以获取得到APP传输数据中压缩键值对相应的原始键值对。
[0060]
在一优选实施例中,步骤S510还包括步骤S511(图中未示出)。步骤S511:判断传输数据中的键值对是否包括相关联的压缩状态标识。
[0061]
其中,当判断确定传输数据为压缩传输数据时,步骤S520还包括步骤S521(图中未示出)。步骤S521:当传输数据中的键值对包括相关联 的压缩状态标识,则确定传输数据为压缩传输数据;以及提取压缩传输数据中与压缩状态标识相关的压缩键值对的压缩键。
[0062]
例如,终端设备中应用APP的客户端向服务器端发送获取APP相关的数据请求后,终端设备接收到服务端返回的传输数据“IsCompressed=true;un:tracy;ag:18;un:tom;ag:32;”,应用APP的客户端对传输数据进行解析,可得到传输数据中的键值对中包括相关联的压缩状态标识“IsCompressed”,可根据传输数据中的压缩状态标识“IsCompressed=true;”判断传输数据为压缩传输数据,随后提取压缩传输数据中与压缩状态标识相关的压缩键值对的压缩键得到“un;ag;un;ag;”。
[0063]
在一优选实施例中,该方法还包括步骤S531(图中未示出)和步骤S532(图中未示出)。步骤S531:接收配置文件,配置文件中包括键压缩字典文件;步骤S532:根据键压缩字典文件配置生成本地的键压缩匹配列表。
[0064]
例如,应用APP的客户端接收到服务器端返回的配置文件中包括键压缩字典文件CompFile,内容为“username:un;age:ag;”,根据键压缩字典文件CompFile中的数据配置生成本地的键压缩匹配列表,内容为“un:username;ag:age;”;随后,基于生成的键压缩匹配列表中的预定键解压方式,对提取到的压缩键“un;ag;un;ag;”进行解压处理,得到压缩键“un;ag;un;ag;”的原始键为“username;age;username;age;”,因此可得到相应的原始键值对为“username:tracy;age:18;username:tom;age:32;”。
[0065]
图6为本发明中另一实施例的数据压缩的装置的结构示意图。
[0066]
第一确定模块610对原始传输数据进行分析,确定包括原始传输数据的数据结构及数据大小的数据特征信息;根据数据特征信息,第一判断模块620判断是否对原始传输数据进行压缩处理;当判断结果指示执行压缩处理时,基于键压缩匹配列表中预定键压缩方式,转换模块630对原始传输数据中原始键值对的键进行转换生成相应的压缩键;第一生成模块640基于压缩键生成包括相应的压缩键值对的压缩传输数据。
[0067]
本发明的实施例中,提出了一种数据压缩及解压的方案,在服务器端通过分析原始传输数据,判断是否对原始传输数据进行压缩处理,当判断 结果指示执行压缩处理时,基于键压缩匹配列表中预定键压缩方式,对原始传输数据中原始键值对的键进行转换生成相应的压缩键,随后基于压缩键生成包括相应的压缩键值对的压缩传输数据;若传输数据通过网络方式进行传输时,通过对原始传输数据中原始键值对的键进行转换生成相应的压缩键,可在数据传输过程中节省网络带宽,避免了数据量过大时不可预期的数据丢失的情况,实现了数据的高效传输;同时,提高计算机数据处理的响应时间;在终端设备的客户端中,当判断接收到的传输数据为压缩传输数据时,解析并提取压缩传输数据中的压缩键值对的压缩键,随后基于预配置的键压缩匹配列表中的预定键解压方式,对压缩键进行解压处理,以获取得到相应的原始键值对,可准确快速地解压得到压缩键的原始值,实现了高效的获取传输数据,从而为后期高效处理接收到的传输数据提供了保障,提高了用户的体验。
[0068]
本发明实施例中,传输数据中数据的数据结构以键值(Key-Value)结构为例。其中,键压缩字典文件中键压缩的内容如可以以26个大写和小写英文字符以及0至9的10个数字相结合进行表示,以此方式可以组成62个不同单字符的压缩键,3844个不同的两个字符的压缩键,238328个不同的三个字符的压缩键,完全能够满足现有应用中压缩键值结构中键的使用。
[0069]
第一确定模块610对原始传输数据进行分析,确定包括原始传输数据的数据结构及数据大小的数据特征信息。
[0070]
例如,在包含三组键值对结构的原始传输数据“userinfo”中,三组键值对分别为“user_id:22”、“user_id:23”及“user_id:24”,对于一组键值对“user_id:22”,其Key部分为“user_id”,Value部分为“22”,确定原始传输数据“userinfo”的数据结构为键值对结构,并计算确定原始传输数据“userinfo”中多组键值对的具体大小为30个字节。
[0071]
根据数据特征信息,第一判断模块620判断是否对原始传输数据进行压缩处理。
[0072]
例如,根据原始传输数据“userinfo”的数据结构为键值对结构,且数据大小为30个字节,判断是否对“userinfo”的原始传输数据的Key部 分“user_id”进行压缩处理,判断方式在下述如图2-4所示的实施例中具体阐述。
[0073]
当判断结果指示执行压缩处理时,基于键压缩匹配列表中预定键压缩方式,转换模块630对原始传输数据中原始键值对的键进行转换生成相应的压缩键。
[0074]
例如,当判断结果指示执行对原始传输数据“userinfo”的3组键值对的Key部分的数据“user_id”进行压缩处理时,基于键压缩匹配列表中预定键压缩方式,如“user_id”压缩后对应的值为“uid”,将原始传输数据“userinfo”的3组键值对的的键值“user_id”进行转换生成相应的压缩键“uid”。
[0075]
第一生成模块640基于压缩键生成包括相应的压缩键值对的压缩传输数据。
[0076]
例如,基于压缩键“uid”生成包括相应的3组压缩键值对的压缩传输数据“uid:22”、“uid:23”及“uid:24”。
[0077]
在一优选实施例中,如图7所示,第一判断模块具体包括第二判断子模块721和第二确定子模块722。第二判断子模块721判断原始传输数据的数据大小与第一预定数据大小阈值的关系;若判断结果为原始传输数据的数据大小大于第一预定数据大小阈值时,第二确定子模块722确定对原始传输数据进行压缩处理。
[0078]
例如,第一预定数据大小阈值为20字节,根据原始传输数据“userinfo”的数据大小为30字节,判断得到原始传输数据“userinfo”的数据大小大于第一预定数据大小阈值,则确定对原始传输数据“userinfo”中三组键值对的Key部分“user_id”进行压缩处理,得到压缩后的Key部分为键压缩匹配列表中“username”对应的数据“uid”。
[0079]
在另一优选实施例中,如图8所示,第一判断模块具体包括第三判断子模块823和第四判断子模块824。第三判断子模块823判断原始传输数据的数据大小分别与第一预定数据大小阈值及第二预定数据大小阈值的关系,第一预定数据大小阈值大于第二预定数据大小阈值;若判断结果为原始传输数据的数据大小大于第二预定数据大小阈值且小于第一预定数 据大小阈值时,第四判断子模块824根据数据结构判断是否对原始传输数据进行压缩处理。
[0080]
例如,第一预定数据大小阈值为50字节,第二预定数据大小阈值为20字节,在包含多组键值对结构的用于传递客户信息的原始传输数据中,包含如下格式键值对数据:“username:tracy;age:18;username:tom;age:32;”,其中Key部分的数据分别为“username”、“age”、“username”和“age”,Value部分的数据分别为“tracy”、“18”、“tom”和“32”,用于传递客户信息的原始传输数据中,确定原始传输数据的数据结构为键值对结构,且原始传输数据的数据大小为42字节,可判断得到原始传输数据的数据大小42字节大于第二预定数据大小阈值20字节且小于第一预定数据大小阈值50字节,则继续根据数据结构判断是否对原始传输数据进行压缩处理。
[0081]
优选地(参照图8),第四判断子模块包括第一统计单元(图中未示出)和第一判断单元(图中未示出)。第一统计单元统计原始传输数据中具有相同的第一键的键值对的数量与原始传输数据中包括的键值对总数量的第一比例;当第一比例大于第一预定比例阈值,且第一键的字符数量大于第一预定字符数量阈值时,第一判断单元判断需要对原始传输数据进行压缩处理。
[0082]
例如,第一预定数据大小阈值为50字节,第二预定数据大小阈值为20字节,第一预定比例阈值为40%,第一预定字符数量阈值为15,原始传输数据中出现频率最高的键为第二键;在包含多组键值对结构的原始传输数据“username:tracy;age:18;username:tom;age:32;”中,原始传输数据的数据大小为42字节,可判断确定原始传输数据的数据大小42字节大于第二预定数据大小阈值20字节且小于第一预定数据大小阈值50字节,随后统计原始传输数据中具有相同的第一键“username”的键值对的数量为2个,具有相同的第一键“username”的键值对的数量2除以原始传输数据中包括的键值对总数量4,计算得到第一比例为50%,第一比例50%大于第一预定比例阈值40%,且在原始传输数据中第一键“username”的字符数量为16大于第一预定字符数量阈值15,判断需要对第一键“username” 进行压缩处理;随后基于键压缩匹配列表中预定键压缩方式,对原始传输数据的Key部分为“username”的键值对中的“username”进行压缩处理,得到压缩后的Key部分为“username”的键值对中的“username”的对应的压缩键为“uid”;统计原始传输数据中具有相同的键“age”的键值对的数量为2个,具有相同的键“age”的键值对的数量2除以原始传输数据中包括的键值对总数量4得到的第一比例50%,则第一比例50%大于第一预定比例阈值40%,但键“age”的字符数量为4小于第一预定字符数量阈值15,因此不对原始传输数据的Key部分为“age”的键值对中的“age”进行压缩处理。
[0083]
优选地(参照图8),第四判断子模块包括第二判断单元(图中未示出)、第二统计单元(图中未示出)和第三判断单元(图中未示出)。第二判断单元判断原始传输数据中具有最长字符长度的第二键的字符数量是否大于第二预定字符数量阈值;若判断第二键的字符数量大于第二预定字符数量阈值时,第二统计单元统计原始传输数据中全部第二键的字符数量占原始传输数据的总字符数量的第二比例;当第二比例大于第二预定比例阈值时,第三判断单元判断需要对原始传输数据进行压缩处理。
[0084]
例如,第一预定数据大小阈值为50字节,第二预定数据大小阈值为20字节,第二预定字符数量阈值为2,第二预定比例阈值为20%,原始传输数据中具有最长字符长度的键为第二键;在包含多组键值对结构的原始传输数据中,原始传输数据的数据大小为42字节,可判断确定原始传输数据的数据大小42字节大于第二预定数据大小阈值20字节且小于第一预定数据大小阈值50字节,随后判断原始传输数据中具有最长字符长度的第二键“username”的字符数量为8大于第二预定字符数量阈值2,将原始数据中两个第二键“username”的字符数量16除以原始传输数据的总字符数量42得到第二比例38%,判断确定第二比例38%大于第二预定比例阈值20%,则判断需要对原始传输数据的Key部分为“username”的键值对中的“username”进行压缩处理,基于键压缩匹配列表中预定键压缩方式,压缩后得到Key部分为“username”的键值对中的“username”的对应的压缩键为“uid”。
[0085]
在一优选实施例中,如图9所示,该装置包括第一确定模块910、第三确定模块920、第一判断模块930、转换模块940和第一生成模块950。第一确定模块910对原始传输数据进行分析,确定包括原始传输数据的数据结构及数据大小的数据特征信息;第三确定模块920确定在预定时间段内原始传输数据中各个键值对中的键的历史出现频率;根据数据特征信息,并结合历史出现频率,第一判断模块930判断是否对原始传输数据进行压缩处理;当判断结果指示执行压缩处理时,基于键压缩匹配列表中预定键压缩方式,转换模块940对原始传输数据中原始键值对的键进行转换生成相应的压缩键;第一生成模块950基于压缩键生成包括相应的压缩键值对的压缩传输数据。
[0086]
其中,本优选实施例中第一确定模块910、转换模块940和第一生成模块950执行的内容与图6所示的第一确定模块610、转换模块630和第一生成模块640执行的内容相同或相似,在此不再赘述。
[0087]
例如,在包含多组键值对结构的原始传输数据中,包含如下格式键值对数据:“username:tracy;age:18;username:tom;age:32;”,根据数据库中的近一个月的历史记录,得到在近一个月的时间段内原始传输数据中各个键值对中Key键的历史出现频率如下:“username”出现频率为一个月800次,“age”出现频率为一个月900次;根据图8的判断装置判断对原始传输数据的Key部分为“username”的键值对中的“username”进行压缩处理,不对原始传输数据的Key部分为“age”的键值对中的“age”进行压缩处理,由于“age”出现频率大于“username”出现的频率,则结合历史出现频率判断需要对原始传输数据的Key部分为“age”的键值对中的“age”进行压缩处理。
[0088]
在一优选实施例中,第一生成模块还包括标识设置单元(图中未示出)和组合生成单元(图中未示出)。基于压缩键生成相应的压缩键值对,标识设置单元并设置相关联的压缩状态标识;组合生成单元将压缩键值对及相关联的压缩状态标识组合以生成压缩传输数据。
[0089]
例如,基于原始传输数据生成相应的压缩键值对,设置相关联的压缩状态标识,可通过压缩标识如“IsCompressed”对压缩标识状态进行设置, 当压缩状态为压缩时可设置为“IsCompressed=true;”,当压缩状态为不压缩时可设置为“IsCompressed=false;”,根据对原始传输数据的Key部分为“username”和“age”的键值对中的“username”和“age”进行压缩处理得到对应压缩键为“un”和“ag”,将压缩键值对及相关联的压缩状态标识组合以生成压缩传输数据“IsCompressed=true;un:tracy;ag:18;un:tom;ag:32;”。
[0090]
在一优选实施例中,该装置还包括第二生成模块(图中未示出)和发送模块(图中未示出)。第二生成模块基于键压缩匹配列表生成相应的键压缩字典文件;根据接收到的应用获取请求,发送模块将键压缩字典文件作为配置文件发送至请求方。
[0091]
例如,基于预定的键压缩匹配列表生成相应的键压缩字典文件,文件名为CompFile,文件内容为“username:un;age:ag;”,根据接收到的客户端应用获取请求,将键压缩字典文件CompFile作为配置文件发送至相应的请求方。
[0092]
图10为本发明中另一优选实施例的数据解压的装置的结构示意图。
[0093]
第六判断模块1010判断接收到的传输数据是否为压缩传输数据;当判断确定传输数据为压缩传输数据时,解析提取模块1020解析并提取压缩传输数据中的压缩键值对的压缩键;基于预配置的键压缩匹配列表中的预定键解压方式,解压处理模块1030对压缩键进行解压处理,以获取得到相应的原始键值对。
[0094]
例如,终端设备中应用APP的客户端向服务器端发送获取APP相关的数据请求后,终端设备接收到服务器端返回的传输数据,当客户端的应用APP判断接收到的传输数据为压缩传输数据时,对压缩传输数据进行数据解析并提取压缩传输数据中的压缩键值对的压缩键,基于在客户端预配置的键压缩匹配列表中的预定键解压方式,对服务器端返回传输数据中的压缩键进行解压处理,以获取得到APP传输数据中压缩键值对相应的原始键值对。
[0095]
在一优选实施例中,第六判断模块1010进一步用于判断传输数据中的键值对是否包括相关联的压缩状态标识。
[0096]
其中,当判断确定传输数据为压缩传输数据时,解析提取模块1020当传输数据中的键值对包括相关联的压缩状态标识,则确定传输数据为压缩传输数据;以及提取压缩传输数据中与压缩状态标识相关的压缩键值对的压缩键。
[0097]
例如,终端设备中应用APP的客户端向服务器端发送获取APP相关的数据请求后,终端设备接收到服务端返回的传输数据“IsCompressed=true;un:tracy;ag:18;un:tom;ag:32;”,应用APP的客户端对传输数据进行解析,可得到传输数据中的键值对中包括相关联的压缩状态标识“IsCompressed”,可根据传输数据中的压缩状态标识“IsCompressed=true;”判断传输数据为压缩传输数据,随后提取压缩传输数据中与压缩状态标识相关的压缩键值对的压缩键得到“un;ag;un;ag;”。
[0098]
在一优选实施例中,该装置还包括接收模块1031(图中未示出)和第三生成模块1032(图中未示出)。接收模块1031接收配置文件,配置文件中包括键压缩字典文件;第三生成模块1032根据键压缩字典文件配置生成本地的键压缩匹配列表。
[0099]
例如,应用APP的客户端接收到服务器端返回的配置文件中包括键压缩字典文件CompFile,内容为“username:un;age:ag;”,根据键压缩字典文件CompFile中的数据配置生成本地的键压缩匹配列表,内容为“un:username;ag:age;”;随后,基于生成的键压缩匹配列表中的预定键解压方式,对提取到的压缩键“un;ag;un;ag;”进行解压处理,得到压缩键“un;ag;un;ag;”的原始键为“username;age;username;age;”,因此可得到相应的原始键值对为“username:tracy;age:18;username:tom;age:32;”。
[0100]
本技术领域技术人员可以理解,本发明包括涉及用于执行本申请中操作中的一项或多项的设备。这些设备可以为所需的目的而专门设计和制造,或者也可以包括通用计算机中的已知设备。这些设备具有存储在其内的计算机程序,这些计算机程序选择性地激活或重构。这样的计算机程序可以被存储在设备(例如,计算机)可读介质中或者存储在适于存储电子指令并分别耦联到总线的任何类型的介质中,计算机可读介质包括但不限于任何类型的盘(包括软盘、硬盘、光盘、CD-ROM、和磁光盘)、ROM (Read-Only Memory,只读存储器)、RAM(Random Access Memory,随即存储器)、EPROM(Erasable Programmable Read-Only Memory,可擦写可编程只读存储器)、EEPROM(Electrically Erasable Programmable Read-Only Memory,电可擦可编程只读存储器)、闪存、磁性卡片或光线卡片。也就是,可读介质包括由设备(例如,计算机)以能够读的形式存储或传输信息的任何介质。
[0101]
本技术领域技术人员可以理解,可以用计算机程序指令来实现这些结构图和/或框图和/或流图中的每个框以及这些结构图和/或框图和/或流图中的框的组合。本技术领域技术人员可以理解,可以将这些计算机程序指令提供给通用计算机、专业计算机或其他可编程数据处理方法的处理器来实现,从而通过计算机或其他可编程数据处理方法的处理器来执行本发明公开的结构图和/或框图和/或流图的框或多个框中指定的方案。
[0102]
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的装置的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
[0103]
例如,图11示出了可以实现根据本发明的数据压缩/解压方法的计算设备的框图。该计算设备传统上包括处理器710和以存储器720形式的计算机程序产品或者计算机可读介质。存储器720可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。存储器720具有存储用于执行上述方法中的任何方法步骤的程序代码731的存储空间730。例如,存储程序代码的存储空间730可以存储分别用于实现上面的方法中的各种步骤的各个程序代码731。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个 或者多个计算机程序产品中。这些计算机程序产品包括诸如硬盘,紧致盘(CD)、存储卡或者软盘之类的程序代码载体。这样的计算机程序产品通常为例如图12所示的便携式或者固定存储单元。该存储单元可以具有与图11的计算设备中的存储器720类似布置的存储段或者存储空间等。程序代码可以例如以适当形式进行压缩。通常,存储单元存储有用于执行根据本发明的方法步骤的程序代码731’,即可以由例如诸如710之类的处理器读取的程序代码,当这些程序代码由计算设备运行时,导致该计算设备执行上面所描述的方法中的各个步骤。
[0104]
本技术领域技术人员可以理解,本发明中已经讨论过的各种操作、方法、流程中的步骤、措施、方案可以被交替、更改、组合或删除。进一步地,具有本发明中已经讨论过的各种操作、方法、流程中的其他步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。进一步地,现有技术中的具有与本发明中公开的各种操作、方法、流程中的步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。
[0105]
以上仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

权利要求书

[权利要求 1]
一种数据压缩的方法,包括: 对原始传输数据进行分析,确定包括所述原始传输数据的数据结构及数据大小的数据特征信息; 根据所述数据特征信息,判断是否对所述原始传输数据进行压缩处理; 当判断结果指示执行压缩处理时,基于键压缩匹配列表中预定键压缩方式,对所述原始传输数据中原始键值对的键进行转换生成相应的压缩键; 基于所述压缩键生成包括相应的压缩键值对的压缩传输数据。
[权利要求 2]
根据权利要求1所述的数据压缩的方法,其中,根据所述数据特征信息,判断是否对所述原始传输数据进行压缩处理,包括: 判断所述原始传输数据的数据大小与第一预定数据大小阈值的关系; 若判断结果为所述原始传输数据的数据大小大于第一预定数据大小阈值时,确定对所述原始传输数据进行压缩处理。
[权利要求 3]
根据权利要求1所述的数据压缩的方法,其中,根据所述数据特征信息,判断是否对所述原始传输数据进行压缩处理,包括: 判断所述原始传输数据的数据大小分别与第一预定数据大小阈值及第二预定数据大小阈值的关系,所述第一预定数据大小阈值大于第二预定数据大小阈值; 若判断结果为所述原始传输数据的数据大小大于所述第二预定数据大小阈值且小于所述第一预定数据大小阈值时,根据所述数据结构判断是否对所述原始传输数据进行压缩处理。
[权利要求 4]
根据权利要求3所述的数据压缩的方法,其中,根据所述数据结构判断是否对所述原始传输数据进行压缩处理,具体包括: 统计所述原始传输数据中具有相同的第一键的键值对的数量与所述原始传输数据中包括的键值对总数量的第一比例; 当所述第一比例大于第一预定比例阈值,且所述第一键的字符数量大 于第一预定字符数量阈值时,判断需要对所述原始传输数据进行压缩处理。
[权利要求 5]
根据权利要求3所述的数据压缩的方法,其中,根据所述数据结构判断是否对所述原始传输数据进行压缩处理,具体包括: 判断所述原始传输数据中具有最长字符长度的第二键的字符数量是否大于第二预定字符数量阈值; 若判断所述第二键的字符数量大于所述第二预定字符数量阈值时,统计所述原始传输数据中全部第二键的字符数量占所述原始传输数据的总字符数量的第二比例; 当所述第二比例大于第二预定比例阈值时,判断需要对所述原始传输数据进行压缩处理。
[权利要求 6]
根据权利要求1所述的数据压缩的方法,还包括: 确定在预定时间段内所述原始传输数据中各个键值对的键的历史出现频率; 其中,根据所述数据特征信息,判断是否对所述原始传输数据进行压缩处理,包括: 根据所述数据特征信息,并结合所述历史出现频率,判断是否对所述原始传输数据进行压缩处理。
[权利要求 7]
根据权利要求1所述的数据压缩的方法,其中,基于所述压缩键生成包括相应的压缩键值对的压缩传输数据的步骤进一步包括: 基于所述压缩键生成相应的压缩键值对,并设置相关联的压缩状态标识; 将所述压缩键值对及相关联的所述压缩状态标识组合以生成压缩传输数据。
[权利要求 8]
根据权利要求1所述的数据压缩的方法,还包括: 基于所述键压缩匹配列表生成相应的键压缩字典文件; 根据接收到的应用获取请求,将所述键压缩字典文件作为配置文件发送至请求方。
[权利要求 9]
一种数据解压的方法,包括: 判断接收到的传输数据是否为压缩传输数据; 当判断确定所述传输数据为压缩传输数据时,解析并提取所述压缩传输数据中的压缩键值对的压缩键; 基于预配置的键压缩匹配列表中的预定键解压方式,对所述压缩键进行解压处理,以获取得到相应的原始键值对。
[权利要求 10]
根据权利要求9所述的数据解压的方法,其中,判断接收到的传输数据是否为压缩传输数据的步骤进一步包括: 判断传输数据中的键值对是否包括相关联的压缩状态标识; 其中,当判断确定所述传输数据为压缩传输数据时,解析并提取所述压缩传输数据中的压缩键值对的压缩键的步骤进一步包括: 当所述传输数据中的键值对包括相关联的压缩状态标识,则确定所述传输数据为压缩传输数据;以及提取所述压缩传输数据中与所述压缩状态标识相关的压缩键值对的压缩键。
[权利要求 11]
根据权利要求9或10所述的数据解压的方法,还包括: 接收配置文件,所述配置文件中包括键压缩字典文件; 根据所述键压缩字典文件配置生成本地的所述键压缩匹配列表。
[权利要求 12]
一种数据压缩的装置,包括: 第一确定模块,用于对原始传输数据进行分析,确定包括所述原始传输数据的数据结构及数据大小的数据特征信息; 第一判断模块,用于根据所述数据特征信息,判断是否对所述原始传输数据进行压缩处理; 转换模块,用于当判断结果指示执行压缩处理时,基于键压缩匹配列表中预定键压缩方式,对所述原始传输数据中原始键值对的键进行转换生成相应的压缩键; 第一生成模块,基于所述压缩键生成包括相应的压缩键值对的压缩传输数据。
[权利要求 13]
根据权利要求12所述的数据压缩的装置,其中,所述第一判断模块具体包括: 第二判断子模块,用于判断所述原始传输数据的数据大小与第一预定 数据大小阈值的关系; 第二确定子模块,用于若判断结果为所述原始传输数据的数据大小大于第一预定数据大小阈值时,确定对所述原始传输数据进行压缩处理。
[权利要求 14]
根据权利要求12所述的数据压缩的装置,其中,所述第一判断模块包括: 第三判断子模块,用于判断所述原始传输数据的数据大小分别与第一预定数据大小阈值及第二预定数据大小阈值的关系,所述第一预定数据大小阈值大于第二预定数据大小阈值; 第四判断子模块,用于若判断结果为所述原始传输数据的数据大小大于所述第二预定数据大小阈值且小于所述第一预定数据大小阈值时,根据所述数据结构判断是否对所述原始传输数据进行压缩处理。
[权利要求 15]
根据权利要求14所述的数据压缩的装置,其中,所述第四判断子模块具体包括: 第一统计单元,用于统计所述原始传输数据中具有相同的第一键的键值对的数量与所述原始传输数据中包括的键值对总数量的第一比例; 第一判断单元,用于当所述第一比例大于第一预定比例阈值,且所述第一键的字符数量大于第一预定字符数量阈值时,判断需要对所述原始传输数据进行压缩处理。
[权利要求 16]
根据权利要求14所述的数据压缩的装置,其中,所述第四判断子模块具体包括: 第二判断单元,用于判断所述原始传输数据中具有最长字符长度的第二键的字符数量是否大于第二预定字符数量阈值; 第二统计单元,用于若判断所述第二键的字符数量大于所述第二预定字符数量阈值时,统计所述原始传输数据中全部第二键的字符数量占所述原始传输数据的总字符数量的第二比例; 第三判断单元,用于当所述第二比例大于第二预定比例阈值时,判断需要对所述原始传输数据进行压缩处理。
[权利要求 17]
根据权利要求12所述的数据压缩的装置,还包括: 第三确定模块,用于确定在预定时间段内所述原始传输数据中各个键 值对的键的历史出现频率; 其中,第一判断模块具体用于根据所述数据特征信息,并结合所述历史出现频率,判断是否对所述原始传输数据进行压缩处理。
[权利要求 18]
根据权利要求12所述的数据压缩的装置,其中,第一生成模块包括:标识设置单元,用于基于所述压缩键生成相应的压缩键值对,并设置相关联的压缩状态标识; 组合生成单元,用于将所述压缩键值对及相关联的所述压缩状态标识组合以生成压缩传输数据。
[权利要求 19]
根据权利要求12所述的数据压缩的装置,还包括: 第二生成模块,用于基于所述键压缩匹配列表生成相应的键压缩字典文件; 发送模块,用于根据接收到的应用获取请求,将所述键压缩字典文件作为配置文件发送至请求方。
[权利要求 20]
一种数据解压的装置,包括: 第六判断模块,用于判断接收到的传输数据是否为压缩传输数据; 解析提取模块,用于当判断确定所述传输数据为压缩传输数据时,解析并提取所述压缩传输数据中的压缩键值对的压缩键; 解压处理模块,基于预配置的键压缩匹配列表中的预定键解压方式,对所述压缩键进行解压处理,以获取得到相应的原始键值对。
[权利要求 21]
根据权利要求20所述的数据解压的装置,其中,所述第六判断模块进一步用于判断传输数据中的键值对是否包括相关联的压缩状态标识; 其中,所述解析提取模块进一步用于当所述传输数据中的键值对包括相关联的压缩状态标识,则确定所述传输数据为压缩传输数据;以及提取所述压缩传输数据中与所述压缩状态标识相关的压缩键值对的压缩键。
[权利要求 22]
根据权利要求20或21所述的数据解压的装置,还包括: 接收模块,用于接收配置文件,所述配置文件中包括键压缩字典文件; 第三生成模块,用于根据所述键压缩字典文件配置生成本地的所述键压缩匹配列表。
[权利要求 23]
一种计算机程序,包括计算机可读代码,当所述计算机可读代码在计算设备上运行时,导致所述计算设备执行根据权利要求1-11中的任一项权利要求所述的方法。
[权利要求 24]
一种计算机可读介质,其中存储了如权利要求23所述的计算机程序。

附图

[ 图 0001]  
[ 图 0002]  
[ 图 0003]  
[ 图 0004]  
[ 图 0005]  
[ 图 0006]  
[ 图 0007]  
[ 图 0008]  
[ 图 0009]  
[ 图 0010]  
[ 图 0011]  
[ 图 0012]