一种数据处理的方法和设备的制造方法

文档序号:8264970阅读:215来源:国知局
一种数据处理的方法和设备的制造方法
【技术领域】
[0001]本发明涉及数据处理领域,特别涉及一种数据处理的方法和设备。
【背景技术】
[0002]算术编码是近年来另一种非常实用的无损压缩算法。算法编码的核心思想在于将源数据中所有可能出现的被编码符号映射到一个整数集合,并赋予每个编码符号相应的出现概率(在此要求所有字符出现的概率和为I)。依照每个字符的出现概率,各字符占据[O, I]区间中的一个半开半闭的连续区间,区间长度值即概率值,同时区间之间彼此相互独立。接着按照映射表将所需编码字符串映射成一个整数序列,然后根据所需要编码的源数据中被编码符号出现的概率,逐步将源数据转变成一个对应于[0,1]区间的实数区间,并取该区间中的一个实数作为码值存储在计算机中。下次进行编码的区间是上次编码所得到的区间,而每次所有符号出现的概率比值不变。在解码的时候将该二进制码值按照逆变化还原成相应的整数序列,然后再映射回原来的字符串。例如,对于整数集空间{0,1,2, 3},出现概率分布为{0.2,0.5,0.2,0.1}。那么对应输入序列为〈210013〉的数据,编码区间依次如下:[0.7,0.9]、[0.74,0.84]、[0.74,0.76]、[0.74,0.744]、[0.7408,0.7428]、[0.7426,0.7428],最终该数据对应的码值区间为[0.7426,0.7428](最后一个字符序列对应的编码区间),该数据的码值为[0.7426,0.7428]中的一个数值。
[0003]对于待编码数据,现有算术编码中不考虑压缩是否具有收益,直接对数据进行压缩,然后存储对应的算术编码后的码值,由于某些数据对应的码值比特数较大,因此,现有技术会增大数据的存储空间。

【发明内容】

[0004]本发明实施例提供一种数据处理的方法和设备,该方法能够减小数据的存储空间。
[0005]第一方面,提供了一种数据处理的方法,包括:采用算术编码算法对数据进行编码,得到码值区间;在该码值区间内存在与该数据对应的码值时,根据该码值区间获取该码值;将该码值的比特数与该数据的比特数的进行比较,以获取比较结果;根据该比较结果进行存储操作。
[0006]结合第一方面,在第一种可能的实现方式中,该比较结果为该码值的比特数小于该数据的比特数,其中,该根据该比较结果进行存储操作,包括:根据该比较结果,存储该码值。
[0007]结合第一方面,在第二种可能的实现方式中,该比较结果为该码值的比特数大于或等于该数据的比特数,其中,该根据该比较结果进行存储操作,包括:根据该比较结果,存储该数据。
[0008]结合第一种可能的实现方式,在第三种可能的实现方式中,还包括:根据该码值进行该数据的应用操作,该应用操作包括等值比较、排列和模糊查询中的至少一种。
[0009]结合第三种可能的实现方式,在第四种可能的实现方式中,该数据为标识ID类字符串,该应用操作包括等值比较,该根据该码值进行该数据的应用操作,包括:在该码值与待比较的码值相等时,确定该数据与该待比较的码值对应的数据为相同数据。
[0010]结合第三种可能的实现方式,在第五种可能的实现方式中,该数据为ID类字符串或为字段的字母字符串,该应用操作包括排列,该根据该码值进行该数据的应用操作,包括:根据该码值的大小,确定该码值在待排列码值中的位置,该码值的位置用于表示该数据在与该待排列的码值对应的数据中的位置。
[0011]结合第三种可能的实现方式,在第六种可能的实现方式中,该应用操作包括模糊查询,该根据该码值进行该数据的应用操作,包括:根据该码值是否在所需模糊查询的前缀字符串的编码区间中,确定该数据是否包括该前缀字符串,其中,在该码值在所需模糊查询的前缀字符串的编码区间中时,该数据包括该前缀字符串,在该码值不在所需模糊查询的前缀字符串的编码区间中时,该数据不包括该前缀字符串。
[0012]结合第一方面、第一至第六种可能的实现方式中的任一种可能的实现方式,在第七种可能的实现方式中,该采用算术编码算法对数据进行编码,得到码值区间,包括:采用算术编码算法对该数据进行编码,得到编码区间;对该数据的编码区间进行重扩展,得到重扩展后的编码区间;根据该重扩展后的编码区间,采用算术编码算法继续对该数据进行编码,得到码值区间。
[0013]结合第七种可能的实现方式,在第八种可能的实现方式中,该对该数据的编码区间进行重扩展,得到重扩展后的编码区间,包括:当满足以下条件中的至少一个时,对该数据的编码区间进行重扩展,得到重扩展后的编码区间,并记录相应重扩展字符位置:已完成编码的该数据的字符个数达到字符个数阈值,和该数据的编码区间的长度小于区间阈值。
[0014]结合第一方面、第一至第八种可能的实现方式中的任一种可能的实现方式,在第九种可能的实现方式中,在该码值区间内存在与该数据对应的码值时,根据该码值区间获取该码值之前,还包括:确定该码值区间内是否存在与该数据对应的合适的码值。
[0015]结合第九种可能的实现方式,在第十种可能的实现方式中,还包括:在该码值区间内不存在与该数据对应的合适的码值时,存储该数据。
[0016]第二方面,提供了一种数据处理的方法,包括:采用算术编码算法对数据进行编码,得到编码区间;对该数据的编码区间进行重扩展,得到重扩展后的编码区间;根据该重扩展后的编码区间,采用算术编码算法继续对该数据进行编码,得到码值区间;根据该码值区间获取该码值;存储该码值。
[0017]结合第二方面,在第一种可能的实现方式中,该对该数据的编码区间进行重扩展,得到重扩展后的编码区间,包括:当满足以下条件中的至少一个时,对该数据的编码区间进行重扩展,得到重扩展后的编码区间,并记录相应重扩展字符位置:已完成编码的该数据的字符个数达到字符个数阈值,和该数据的编码区间的长度小于区间阈值。
[0018]第三方面,提供了一种数据处理的方法,包括:获取数据的码值和重扩展字符位置;采用算术编码算法对数据的码值进行解码,得到解码区间;根据该重扩展字符位置,对该数据的解码区间进行重缩放,得到重缩放的解码区间;根据该重缩放的解码区间,采用算术编码算法继续对该数据进行解码,得到该数据。
[0019]结合第三方面,在第一种可能的实现方式中,该根据重扩展字符位置,对该数据的解码区间进行重缩放,得到重缩放的解码区间,包括:根据重扩展字符位置,确定重缩放字符位置,其中该重扩展字符位置与该重缩放字符位置相倒置;根据重缩放字符位置对该数据的解码区间进行重缩放,得到重缩放的解码区间。
[0020]第四方面,提供了一种数据处理的方法,包括:采用算术编码算法对数据进行编码,得到码值区间;根据该码值区间获取该码值;存储该码值;根据该码值进行该数据的应用操作,该应用操作包括等值比较、排列和模糊查询中的至少一种。
[0021]结合第四方面,在第一种可能的实现方式中,该数据为ID类字符串,该应用操作包括等值比较,该根据该码值进行该数据的应用操作,包括在该码值与待比较的码值相等时,确定该数据与该待比较的码值对应的数据为相同数据。
[0022]结合第四方面,在第二种可能的实现方式中,该数据为ID类字符串或为字段的字母字符串,该应用操作包括排列,该根据该码值进行该数据的应用操作,包括:根据该码值的大小,确定该码值在待排列码值中的位置,该码值的位置用于表示该数据在与该待排列的码值对应的数据中的位置。
[0023]结合第四方面,在第三种可能的实现方式中,该应用操作包括模,该根据该码值进行该数据的应用操作,包括:根据该码值是否在所需模糊查询的前缀字符串的编码区间中,确定该数据是否包括该前缀字符串,其中,在该码值在所需模糊查询的前缀字符串的编码区间中时,该数据包括该前缀字符串在该码值不在所需模糊查询的前缀字符串的编码区间中时,该数据不包括该前缀字符串。
[0024]第五方面,提供了一种数据处理的设备,包括:编码单元,用于采用算术编码算法对数据进行编码,得到码值区间;获取单元,用于在该码值区间内存在与该数据对应的码值时,根据该码值区间获取该码值;比较单元,用于将该码值的比特数与该数据的比特数的进行比较,以获取比较结果;第一存储单元,用于根据该比较结果进行存储操作。
[0025]结合第五方面,在第一种可能的实现方式中,该比较结果为该码值的比特数小于该数据的比特数,其中,该第一存储单元根据该比较结果,存储该码值。
[0026]结合第五方面,在第二种可能的实现方式中,该比较结果为该码值的比特数大于或等于该数据的比特数,其中,该第一存储单元根据该比较结果,存储该数据。
[0027]结合第五方面的第一种可能的实现方式,在第三种可能的实现方式中,还包括:应用单元,用于根据该码值进行该数据的应用操作,该应用操作包括等值比较、排列和模糊查询中的至少一种。
[0028]结合第五方面的第三种可能的实现方式,在第四种可能的实现方式中,该数据为ID类字符串,该应用操作包括等值比较,该应用单元在该码值与待比较的码值相等时,确定该数据与该待比较的码值对应的数据为相同数据。
[0029]结合第五方面的第三种可能的实现方式,在第六种可能的实现方式中,该数据为ID类字符串或为字段的字母字符串,该应用操作包括排列,该应用单元根据该码值的大小,确定该码值在待排列码值中的位置,该码值的位置用于表示该数据在与该待排列的码值对应的数据中的位置。
[0030]结合第五方面的第三种可能的实现方式,在第八种可能的实现方式中,该应用操作包括模糊查询,该应用单元根据该码值是否在所需模糊查询的前缀字符串的编码区间中确定该数据是否包括该前缀字符串,其中,在该码值在所需模糊查询的前缀字符串的编码区间中时,该数据包括该前缀字符串,在该码值不在所需模糊查询的前缀字符串的编码区间中时,该数据不包括该前缀字符串。
[0031]结合第五方面、第五方面的第一至第九种可能的实现方式中的任一种可能的实现方式,在第十种可能的实现方式中,该编码单元采用算术编码算法对该数据进行编码,得到编码区间;对该数据的编码区间进行重扩展,得到重扩展后的编码区间;根据该重扩展后的编码区间,采用算术编码算法继续对该数据进行编码,得到码值区间。
[0032]结合第五方面的第十种可能的实现方式,在第十一种可能的实现方式中,该编码单元当满足以下条件中的至少一个时,对该数据的编码区间进行重扩展,得到重扩展后的编码区间,并记录相应重扩展字符位置:已完成编码的该数据的字符个数达到字符个数阈值,和该数据的编码区间的长度小于区间阈值。
[0033]结合第五方面、第五方面的第一至第^^一种可能的实现方式中的任一种可能的实现方式,在第十二种可能的实现方式中,还包括:确定单元,用于在该获取单元获取该码值之前,确定该码值区间内是否存在与该数据对应的合适的码值。
[0034]结合第五方面的第十二种可能的实现方式,在第十三种可能的实现方式中,还包括:第二存储单元,用于在该码值区间内不存在与该数据对应的合适的码值时,存储该数据。
[0035]第六方面,提供了一种数据处理的设备,包括:第一编码单元,用于采用算术编码算法对数据进行编码,得到编码区间;扩展单元,用于对该数据的编码区间进行重扩展,得到重扩展后的编码区间;第二编码单元,用于根据该重扩展后的编码区间,采用算术编码算法继续对该数据进行编码,得到码值区间。获取单元,用于根据该码值区间获取该码值;存储单元,用于存储该码值。
[0036]结合第六方面,在第一种可能的实现方式中,该扩展单元当满足以下条件中的至少一个时,对该数据的编码区间进行重扩展,得到重扩展后的编码区间,并记录相应重扩展字符位置:已完成编码的该数据的字符个数达到字符个数阈值,和该数据的编码区间的长度小于区间阈值。
[0037]第七方面,提供了一种数据处理的设备,包括:第一获取单元,用于获取数据的码值和重扩展字符位置;第一解码单元,用于采用算术编码算法对数据的码值进行解码,得到解码区间;缩放单元,用于根据该重扩展字符位置,对该数据的解码区间进行重缩放,得到重缩放的解码区间;第二解码单元,用于根据该重缩放的解码区间,采用算术编码算法继续对该数据进行解码,得到该数据。
[0038]结合第七方面,在第一种可能的实现方式中,该缩放单元根据重扩展字符位置,确定重缩放字符位置,其中该重扩展字符位置与该重缩放字符位置相倒置;根据重缩放字符位置对该数据的解码区间进行重缩放,得到重缩放的解码区间。
[0039]第八方面,提供了一种数据处理的设备,包括:编码单元,用于采用算术编码算法对数据进行编码,得到码值区间;获取单元,用于根据该码值区间获取该码值;存储单元,用于存储该码值;应用单元,用于根据该码值进行该数据的应用操作,该应用操作包括等值比较、排列和模糊查询中的至少一种。
[0040]结合第八方面,在第一种可能的实现方式中,该数据为ID类字符串,该应用操作包括等值比较,该应用单元在该码值与待比较的码值相等时,确定该数据与该待比较的码值对应的数据为相同数据。
[0041]结合第八方面,在第三种可能的实现方式中,该数据为ID类字符串或为字段的字母字符串,该应用操作包括排列,该应用单元根据该码值的大小,确定该码值在待排列码值中的位置,该码值的位置用于表示该数据在与该待排列的码值对应的数据中的位置。
[0042]结合第八方面,在第五种可能的实现方式中,该应用操作包括模糊查询,该应用单元根据该码值是否在所需模糊查询的前缀字符串的编码区间中,确定该数据是否包括该前缀字符串,其中,在该码值在所需模糊查询的前缀字符串的编码区间中时,该数据包括该前缀字符串,在该码值不在所需模糊查询的前缀字符串的编码区间中时,该数据不包括该前缀字符串。
[0043]基于上述技术方案,本发明实施例通过采用算术编码算法对数据进行编码,得到码值区间。在码值区间内存在与数据对应的码值时,根据码值区间获取码值;将码值的比特数与数据的比特数的进行比较,以获取比较结果;根据比较结果进行存储操作。本发明实施例能够减小数据的存储空间。
【附图说明】
[0044]为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0045]图1是根据本发明一个实施例的用于数据压缩的方法的示意性流程图。
[0046]图2是根据本发明一个实施例的字段排序示意图。
[0047]图3是根据本发明一个实施例的模糊查询示意图。
[0048]图4是根据本发明另一实施例的数据处理的方法的示意性流程图。
[0049]图5是根据本发明另一实施例的数据处理的方法的示意性流程图。
[0050]图6是根据本发明另一实施例的数据处理的方法的示意性流程图。
[0051]图7是根据本发明另一实施例的数据处理的方法的示意性流程图。
[0052]图8是根据本发明另一实施例的数据处理的方法的示意性流程图。
[0053]图9是根据本发明另一实施例的数据处理的方法的示意性流程图。
[0054]图10是根据本发明另一实施例的数据处理的方法的示意性流程图。
[0055]图11是根据本发明另一实施例的数据处理的方法的示意性流程图。
[0056]图12是根据本发明一个实施例的数据处理的设备的示意框图。
[0057]图13是根据本发明另一实施例的数据处理的设备的示意框图。
[0058]图14是根据本发明另一实施例的数据处理的设备的示意框图。
[0059]图15是根据本发明另一实施例的数据处理的设备的示意框图。
[0060]图16是根据本发明另一实施例的数据处理的设备的示意框图。
[0061]图17是根据本发明另一实施例的数据处理的设备的示意框图。
[0062]图18是根据本发明另一实施例的数据处理的设备的示意框图。
[0063]图19是根据本发明另一实施例的数据处理的设备的示意框图。
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1