CN104579360B - 一种数据处理的方法和设备 - Google Patents

一种数据处理的方法和设备 Download PDF

Info

Publication number
CN104579360B
CN104579360B CN201510059809.6A CN201510059809A CN104579360B CN 104579360 B CN104579360 B CN 104579360B CN 201510059809 A CN201510059809 A CN 201510059809A CN 104579360 B CN104579360 B CN 104579360B
Authority
CN
China
Prior art keywords
data
code value
section
coding
character string
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201510059809.6A
Other languages
English (en)
Other versions
CN104579360A (zh
Inventor
朱金伟
严龙
周庆庆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201510059809.6A priority Critical patent/CN104579360B/zh
Publication of CN104579360A publication Critical patent/CN104579360A/zh
Priority to EP16746065.8A priority patent/EP3244540A4/en
Priority to PCT/CN2016/070805 priority patent/WO2016124070A1/zh
Priority to US15/668,335 priority patent/US9998145B2/en
Application granted granted Critical
Publication of CN104579360B publication Critical patent/CN104579360B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • H03M7/4006Conversion to or from arithmetic code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2468Fuzzy queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/06Arrangements for sorting, selecting, merging, or comparing data on individual record carriers
    • G06F7/08Sorting, i.e. grouping record carriers in numerical or other ordered sequence according to the classification of at least some of the information they carry
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/60General implementation details not specific to a particular type of compression
    • H03M7/6064Selection of Compressor
    • H03M7/6082Selection strategies

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Automation & Control Theory (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本发明实施例提供了一种数据处理的方法和设备,该方法包括采用算术编码算法对数据进行编码,得到码值区间;在码值区间内存在与数据对应的码值时,根据码值区间获取码值;将码值的比特数与数据的比特数的进行比较,以获取比较结果;根据比较结果进行存储操作。本发明实施例能够减小数据的存储空间。

Description

一种数据处理的方法和设备
技术领域
本发明涉及数据处理领域,特别涉及一种数据处理的方法和设备。
背景技术
算术编码是近年来另一种非常实用的无损压缩算法。算法编码的核心思想在于将源数据中所有可能出现的被编码符号映射到一个整数集合,并赋予每个编码符号相应的出现概率(在此要求所有字符出现的概率和为1)。依照每个字符的出现概率,各字符占据[0,1]区间中的一个半开半闭的连续区间,区间长度值即概率值,同时区间之间彼此相互独立。接着按照映射表将所需编码字符串映射成一个整数序列,然后根据所需要编码的源数据中被编码符号出现的概率,逐步将源数据转变成一个对应于[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]中的一个数值。
对于待编码数据,现有算术编码中不考虑压缩是否具有收益,直接对数据进行压缩,然后存储对应的算术编码后的码值,由于某些数据对应的码值比特数较大,因此,现有技术会增大数据的存储空间。
发明内容
本发明实施例提供一种数据处理的方法和设备,该方法能够减小数据的存储空间。
第一方面,提供了一种数据处理的方法,包括:采用算术编码算法对数据进行编码,得到码值区间;在该码值区间内存在与该数据对应的码值时,根据该码值区间获取该码值;将该码值的比特数与该数据的比特数的进行比较,以获取比较结果;根据该比较结果进行存储操作。
结合第一方面,在第一种可能的实现方式中,该比较结果为该码值的比特数小于该数据的比特数,其中,该根据该比较结果进行存储操作,包括:根据该比较结果,存储该码值。
结合第一方面,在第二种可能的实现方式中,该比较结果为该码值的比特数大于或等于该数据的比特数,其中,该根据该比较结果进行存储操作,包括:根据该比较结果,存储该数据。
结合第一种可能的实现方式,在第三种可能的实现方式中,还包括:根据该码值进行该数据的应用操作,该应用操作包括等值比较、排列和模糊查询中的至少一种。
结合第三种可能的实现方式,在第四种可能的实现方式中,该数据为标识ID类字符串,该应用操作包括等值比较,该根据该码值进行该数据的应用操作,包括:在该码值与待比较的码值相等时,确定该数据与该待比较的码值对应的数据为相同数据。
结合第三种可能的实现方式,在第五种可能的实现方式中,该数据为ID类字符串或为字段的字母字符串,该应用操作包括排列,该根据该码值进行该数据的应用操作,包括:根据该码值的大小,确定该码值在待排列码值中的位置,该码值的位置用于表示该数据在与该待排列的码值对应的数据中的位置。
结合第三种可能的实现方式,在第六种可能的实现方式中,该应用操作包括模糊查询,该根据该码值进行该数据的应用操作,包括:根据该码值是否在所需模糊查询的前缀字符串的编码区间中,确定该数据是否包括该前缀字符串,其中,在该码值在所需模糊查询的前缀字符串的编码区间中时,该数据包括该前缀字符串,在该码值不在所需模糊查询的前缀字符串的编码区间中时,该数据不包括该前缀字符串。
结合第一方面、第一至第六种可能的实现方式中的任一种可能的实现方式,在第七种可能的实现方式中,该采用算术编码算法对数据进行编码,得到码值区间,包括:采用算术编码算法对该数据进行编码,得到编码区间;对该数据的编码区间进行重扩展,得到重扩展后的编码区间;根据该重扩展后的编码区间,采用算术编码算法继续对该数据进行编码,得到码值区间。
结合第七种可能的实现方式,在第八种可能的实现方式中,该对该数据的编码区间进行重扩展,得到重扩展后的编码区间,包括:当满足以下条件中的至少一个时,对该数据的编码区间进行重扩展,得到重扩展后的编码区间,并记录相应重扩展字符位置:已完成编码的该数据的字符个数达到字符个数阈值,和该数据的编码区间的长度小于区间阈值。
结合第一方面、第一至第八种可能的实现方式中的任一种可能的实现方式,在第九种可能的实现方式中,在该码值区间内存在与该数据对应的码值时,根据该码值区间获取该码值之前,还包括:确定该码值区间内是否存在与该数据对应的合适的码值。
结合第九种可能的实现方式,在第十种可能的实现方式中,还包括:在该码值区间内不存在与该数据对应的合适的码值时,存储该数据。
第二方面,提供了一种数据处理的方法,包括:采用算术编码算法对数据进行编码,得到编码区间;对该数据的编码区间进行重扩展,得到重扩展后的编码区间;根据该重扩展后的编码区间,采用算术编码算法继续对该数据进行编码,得到码值区间;根据该码值区间获取该码值;存储该码值。
结合第二方面,在第一种可能的实现方式中,该对该数据的编码区间进行重扩展,得到重扩展后的编码区间,包括:当满足以下条件中的至少一个时,对该数据的编码区间进行重扩展,得到重扩展后的编码区间,并记录相应重扩展字符位置:已完成编码的该数据的字符个数达到字符个数阈值,和该数据的编码区间的长度小于区间阈值。
第三方面,提供了一种数据处理的方法,包括:获取数据的码值和重扩展字符位置;采用算术编码算法对数据的码值进行解码,得到解码区间;根据该重扩展字符位置,对该数据的解码区间进行重缩放,得到重缩放的解码区间;根据该重缩放的解码区间,采用算术编码算法继续对该数据进行解码,得到该数据。
结合第三方面,在第一种可能的实现方式中,该根据重扩展字符位置,对该数据的解码区间进行重缩放,得到重缩放的解码区间,包括:根据重扩展字符位置,确定重缩放字符位置,其中该重扩展字符位置与该重缩放字符位置相倒置;根据重缩放字符位置对该数据的解码区间进行重缩放,得到重缩放的解码区间。
第四方面,提供了一种数据处理的方法,包括:采用算术编码算法对数据进行编码,得到码值区间;根据该码值区间获取该码值;存储该码值;根据该码值进行该数据的应用操作,该应用操作包括等值比较、排列和模糊查询中的至少一种。
结合第四方面,在第一种可能的实现方式中,该数据为ID类字符串,该应用操作包括等值比较,该根据该码值进行该数据的应用操作,包括在该码值与待比较的码值相等时,确定该数据与该待比较的码值对应的数据为相同数据。
结合第四方面,在第二种可能的实现方式中,该数据为ID类字符串或为字段的字母字符串,该应用操作包括排列,该根据该码值进行该数据的应用操作,包括:根据该码值的大小,确定该码值在待排列码值中的位置,该码值的位置用于表示该数据在与该待排列的码值对应的数据中的位置。
结合第四方面,在第三种可能的实现方式中,该应用操作包括模,该根据该码值进行该数据的应用操作,包括:根据该码值是否在所需模糊查询的前缀字符串的编码区间中,确定该数据是否包括该前缀字符串,其中,在该码值在所需模糊查询的前缀字符串的编码区间中时,该数据包括该前缀字符串在该码值不在所需模糊查询的前缀字符串的编码区间中时,该数据不包括该前缀字符串。
第五方面,提供了一种数据处理的设备,包括:编码单元,用于采用算术编码算法对数据进行编码,得到码值区间;获取单元,用于在该码值区间内存在与该数据对应的码值时,根据该码值区间获取该码值;比较单元,用于将该码值的比特数与该数据的比特数的进行比较,以获取比较结果;第一存储单元,用于根据该比较结果进行存储操作。
结合第五方面,在第一种可能的实现方式中,该比较结果为该码值的比特数小于该数据的比特数,其中,该第一存储单元根据该比较结果,存储该码值。
结合第五方面,在第二种可能的实现方式中,该比较结果为该码值的比特数大于或等于该数据的比特数,其中,该第一存储单元根据该比较结果,存储该数据。
结合第五方面的第一种可能的实现方式,在第三种可能的实现方式中,还包括:应用单元,用于根据该码值进行该数据的应用操作,该应用操作包括等值比较、排列和模糊查询中的至少一种。
结合第五方面的第三种可能的实现方式,在第四种可能的实现方式中,该数据为ID类字符串,该应用操作包括等值比较,该应用单元在该码值与待比较的码值相等时,确定该数据与该待比较的码值对应的数据为相同数据。
结合第五方面的第三种可能的实现方式,在第六种可能的实现方式中,该数据为ID类字符串或为字段的字母字符串,该应用操作包括排列,该应用单元根据该码值的大小,确定该码值在待排列码值中的位置,该码值的位置用于表示该数据在与该待排列的码值对应的数据中的位置。
结合第五方面的第三种可能的实现方式,在第八种可能的实现方式中,该应用操作包括模糊查询,该应用单元根据该码值是否在所需模糊查询的前缀字符串的编码区间中确定该数据是否包括该前缀字符串,其中,在该码值在所需模糊查询的前缀字符串的编码区间中时,该数据包括该前缀字符串,在该码值不在所需模糊查询的前缀字符串的编码区间中时,该数据不包括该前缀字符串。
结合第五方面、第五方面的第一至第九种可能的实现方式中的任一种可能的实现方式,在第十种可能的实现方式中,该编码单元采用算术编码算法对该数据进行编码,得到编码区间;对该数据的编码区间进行重扩展,得到重扩展后的编码区间;根据该重扩展后的编码区间,采用算术编码算法继续对该数据进行编码,得到码值区间。
结合第五方面的第十种可能的实现方式,在第十一种可能的实现方式中,该编码单元当满足以下条件中的至少一个时,对该数据的编码区间进行重扩展,得到重扩展后的编码区间,并记录相应重扩展字符位置:已完成编码的该数据的字符个数达到字符个数阈值,和该数据的编码区间的长度小于区间阈值。
结合第五方面、第五方面的第一至第十一种可能的实现方式中的任一种可能的实现方式,在第十二种可能的实现方式中,还包括:确定单元,用于在该获取单元获取该码值之前,确定该码值区间内是否存在与该数据对应的合适的码值。
结合第五方面的第十二种可能的实现方式,在第十三种可能的实现方式中,还包括:第二存储单元,用于在该码值区间内不存在与该数据对应的合适的码值时,存储该数据。
第六方面,提供了一种数据处理的设备,包括:第一编码单元,用于采用算术编码算法对数据进行编码,得到编码区间;扩展单元,用于对该数据的编码区间进行重扩展,得到重扩展后的编码区间;第二编码单元,用于根据该重扩展后的编码区间,采用算术编码算法继续对该数据进行编码,得到码值区间。获取单元,用于根据该码值区间获取该码值;存储单元,用于存储该码值。
结合第六方面,在第一种可能的实现方式中,该扩展单元当满足以下条件中的至少一个时,对该数据的编码区间进行重扩展,得到重扩展后的编码区间,并记录相应重扩展字符位置:已完成编码的该数据的字符个数达到字符个数阈值,和该数据的编码区间的长度小于区间阈值。
第七方面,提供了一种数据处理的设备,包括:第一获取单元,用于获取数据的码值和重扩展字符位置;第一解码单元,用于采用算术编码算法对数据的码值进行解码,得到解码区间;缩放单元,用于根据该重扩展字符位置,对该数据的解码区间进行重缩放,得到重缩放的解码区间;第二解码单元,用于根据该重缩放的解码区间,采用算术编码算法继续对该数据进行解码,得到该数据。
结合第七方面,在第一种可能的实现方式中,该缩放单元根据重扩展字符位置,确定重缩放字符位置,其中该重扩展字符位置与该重缩放字符位置相倒置;根据重缩放字符位置对该数据的解码区间进行重缩放,得到重缩放的解码区间。
第八方面,提供了一种数据处理的设备,包括:编码单元,用于采用算术编码算法对数据进行编码,得到码值区间;获取单元,用于根据该码值区间获取该码值;存储单元,用于存储该码值;应用单元,用于根据该码值进行该数据的应用操作,该应用操作包括等值比较、排列和模糊查询中的至少一种。
结合第八方面,在第一种可能的实现方式中,该数据为ID类字符串,该应用操作包括等值比较,该应用单元在该码值与待比较的码值相等时,确定该数据与该待比较的码值对应的数据为相同数据。
结合第八方面,在第三种可能的实现方式中,该数据为ID类字符串或为字段的字母字符串,该应用操作包括排列,该应用单元根据该码值的大小,确定该码值在待排列码值中的位置,该码值的位置用于表示该数据在与该待排列的码值对应的数据中的位置。
结合第八方面,在第五种可能的实现方式中,该应用操作包括模糊查询,该应用单元根据该码值是否在所需模糊查询的前缀字符串的编码区间中,确定该数据是否包括该前缀字符串,其中,在该码值在所需模糊查询的前缀字符串的编码区间中时,该数据包括该前缀字符串,在该码值不在所需模糊查询的前缀字符串的编码区间中时,该数据不包括该前缀字符串。
基于上述技术方案,本发明实施例通过采用算术编码算法对数据进行编码,得到码值区间。在码值区间内存在与数据对应的码值时,根据码值区间获取码值;将码值的比特数与数据的比特数的进行比较,以获取比较结果;根据比较结果进行存储操作。本发明实施例能够减小数据的存储空间。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明一个实施例的用于数据压缩的方法的示意性流程图。
图2是根据本发明一个实施例的字段排序示意图。
图3是根据本发明一个实施例的模糊查询示意图。
图4是根据本发明另一实施例的数据处理的方法的示意性流程图。
图5是根据本发明另一实施例的数据处理的方法的示意性流程图。
图6是根据本发明另一实施例的数据处理的方法的示意性流程图。
图7是根据本发明另一实施例的数据处理的方法的示意性流程图。
图8是根据本发明另一实施例的数据处理的方法的示意性流程图。
图9是根据本发明另一实施例的数据处理的方法的示意性流程图。
图10是根据本发明另一实施例的数据处理的方法的示意性流程图。
图11是根据本发明另一实施例的数据处理的方法的示意性流程图。
图12是根据本发明一个实施例的数据处理的设备的示意框图。
图13是根据本发明另一实施例的数据处理的设备的示意框图。
图14是根据本发明另一实施例的数据处理的设备的示意框图。
图15是根据本发明另一实施例的数据处理的设备的示意框图。
图16是根据本发明另一实施例的数据处理的设备的示意框图。
图17是根据本发明另一实施例的数据处理的设备的示意框图。
图18是根据本发明另一实施例的数据处理的设备的示意框图。
图19是根据本发明另一实施例的数据处理的设备的示意框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
图1是根据本发明一个实施例的用于数据压缩的方法的示意性流程图。图1所示的方法可以由图4中的数据压缩的设备执行,如图1所示的方法包括:
110,采用算术编码算法对数据进行编码,得到码值区间。
具体地,码值区间可以为该数据的最后一个字符串对应的编码区间。
应理解,本发明实施例中的数据可以是标识(Identity,ID)类字符串或字段的字母字符串等,其中,ID类字符串可以包括:数据单号、图书索引号、公交车牌号、产品单据号、国际移动用户识别码(International Mobile Subscriber Identification Number,IMSI)或移动设备国际身份码(International Mobile Equipment Identity,IMEI)等;字母字符串可以包括中文、韩文、日文对应的音标等。
120,在码值区间内存在与数据对应的码值时,根据码值区间获取码值。
换句话说,在码值区间内可以取到合适的码值时,根据码值区间获取码值。例如,合适的码值可以为满足一定位数的码值,例如,码值的二进制位不超过16位、32位或64位等。
应注意,可以根据现有方法根据码值区间获取码值,也可以根据预设条件获取码值,例如,预设条件为码值的二进制位不超过16位、32位或64位等,本发明实施例并不对此做限定。
130,将码值的比特数与数据的比特数的进行比较,以获取比较结果。
具体地,比较结果可以包括码值的比特数小于数据的比特数、码值的比特数等于数据的比特数或码值的比特数大于数据的比特数。
140,根据比较结果进行存储操作。
具体地,采用算术编码算法对数据进行编码,得到码值区间,然后,确定该码值区间(数据的最后一个字符串对应的编码区间)内是否可以取到合适的码值,如果无法取到将直接存储数据而无需算术编码。如果可以取到合适的码值,然后将码值的比特数与数据的比特数的进行比较(判断压缩收益),具体地,判断该合适的码值的比特数是否大于或等于表示原数据的比特数,如果该合适的码值的比特数大于或等于原数据的比特数,也就是无压缩收益,则放弃采用算术编码可以直接存储该数据;如果该合适的码值的比特数小于原数据的比特数,也就是有压缩收益,则存储码值。
因此,本发明实施例通过采用算术编码算法对数据进行编码,得到码值区间。在码值区间内存在与数据对应的码值时,根据码值区间获取码值;将码值的比特数与数据的比特数的进行比较,以获取比较结果;根据比较结果进行存储操作。本发明实施例能够降低错误的编码,减小数据的存储空间。
可选地,作为另一实施例,比较结果为码值的比特数小于数据的比特数,其中,在140中,根据比较结果,存储码值。
具体地,当码值的比特数小于数据的比特数时,表明存在压缩收益,存储码值。
可替代地,作为另一实施例,比较结果为码值的比特数大于或等于数据的比特数,其中,在140中,根据比较结果,存储数据。
具体地,当码值的比特数大于或等于数据的比特数时,表明无压缩收益,存储数据。
可选地,作为另一实施例,当存储码值时,本发明实施例方法还包括根据码值进行数据的应用操作,应用操作包括等值比较、排列和模糊查询中的至少一种。
具体地,采用算术编码算法对数据进行编码,得到码值区间;在码值区间内存在与数据对应的码值时,根据码值区间获取码值;将码值的比特数与数据的比特数的进行比较,以获取比较结果;其中比较结果为码值的比特数小于数据的比特数,存储码值,根据码值进行数据的等值比较、排列和模糊查询中的至少一种。例如,可以根据码值进行数据的等值比较、根据码值进行数据的排列,或者可以根据码值对数据进行模糊查询。下面分别介绍上述根据码值进行数据的应用操作。
具体地,作为另一实施例,数据为ID类字符串,应用操作包括等值比较,根据码值进行数据的应用操作,包括:根据码值进行数据的等值比较。
进一步地,作为另一实施例,根据码值进行数据的等值比较,包括:在码值与待比较的码值相等时,确定数据与待比较的码值对应的数据为相同数据。
应理解,待比较的码字为待比较的数据(与待比较的码值对应的数据)的码值。具体地,进行码值的等值比较可以理解为进行数据的匹配,例如,当两个数据的码值相等时,可以确定该两个码值对应的该两个数据为相同数据,也即匹配成功;当两个码值不相等时,可以确定该两个码值对应的该两个数据为不同数据,也即匹配不成功。
可替代地,作为另一实施例,数据为ID类字符串或为字段的字母字符串,应用操作包括排列,根据码值进行数据的应用操作,包括:根据码值进行数据的排列。
进一步地,作为另一实施例,根据码值进行数据的排序,包括:根据码值的大小,确定码值在待排列码值中的位置,码值的位置用于表示数据在与待排列的码值对应的数据中的位置。
具体的,例如,进行数据的排序可以理解为对多个数据进行排序。例如,有5个数据,对应5个码值,5个码值由小到大排序,例如,当前码值为5个码值中的第4个,那么第4个码值对应的数据排在该5个数据中的第4位。
在现有的数据库实现中,通常会将压缩技术与查询操作分开考虑,即单独考虑数据存储技术以及相关的查询优化技术。数据库的重要作用在于存储记录所关心事物的重要描述,事物发展等相关信息。因此当事物描述较为冗繁时不仅占用大量的存储空间,也会带来查询上的不便。现有对数据在进行多种查询操作时(如字符串比较,字符串排序等),因需要逐步比较字符串中的字符,会导致查询效率较低。而本发明实施例无需算术解码的过程,直接根据数据对应的码值进行数据的比较(匹配)和/或根据码值进行数据的排列,将原本复杂数据类型的查询操作等效成码值的查询,快速简单。
例如,当数据中只出现数字或字母的应用场景中(此时概率将全分给数字或全分给字母)。例如,数据为非拉丁字母文字。如中文、韩文、日文都有对应的音标。可以通过将对应文字转换成其音标表示方式,即只包含字母的字符串,在采用算术编码算法对数据进行编码,得到码值区间;在码值区间内存在与数据对应的码值时,确定码值的比特数小于数据的比特数;存储码值。根据码值对数据对应的字段进行排序。
例如,中文拼音字母出现概率分布(全拼),A(0.107),B(0.014),C(0.017),D(0.030),E(0.062),F(0.009),G(0.060),H(0.067),I(0.141),J(0.023),K(0.008),L(0.017),M(0.014),N(0.117),O(0.065),P(0.008),Q(0.013),R(0.006),S(0.026),T(0.015),U(0.096),V(0.001),W(0.010),X(0.020),Y(0.028),Z(0.026)。如图2所示,对于字段“优秀”“良好”“及格”,按字母顺序排列并编码,其中,“优秀”对应的字母字符串为“youxiu”,对应的码值为0.96684845;“良好”对应的字母字符串为“lianghao”,对应的码值为0.544375656;“及格”对应的字母字符串为“jige”,对应的码值为0.516228。按照码值由小到大的依次排序为0.516228、0.544375656和0.96684845,分别对应“及格”、“良好”和“优秀”。
可替代地,作为另一实施例,应用操作包括模糊查询,根据码值进行数据的应用操作,包括:根据码值对数据进行模糊查询。
进一步地,作为另一实施例,根据码值对数据进行模糊查询,包括:根据码值是否在所需模糊查询的前缀字符串的编码区间中,确定数据是否包括前缀字符串,其中,在码值在所需模糊查询的前缀字符串的编码区间中时,数据包括前缀字符串,在码值不在所需模糊查询的前缀字符串的编码区间中时,数据不包括前缀字符串。
换句话说,码值在所需模糊查询的前缀字符串的编码区间中时,数据满足模糊查询,码值不在所需模糊查询的前缀字符串的编码区间中时,数据不满足模糊查询。
具体而言,当字符串经过算术编码压缩后,得到的是一系列的码值。码值来自于对字符串编码后所得到的编码区间,而编码区间彼此之间相互不正交。我们还注意到字符串的编码区间总是包含于其前缀字符串的编码区间。例如,字符串‘A12986572’的编码区间一定包含于‘A1298’、‘A12’等前缀字符串的编码区间中。只需判断码值是否在所需模糊查询的前缀字符串的编码区间中,就可进行模糊查询。例如,整数集空间{0,1,2,3},出现概率分布{0.2,0.5,0.2,0.1}。针对模糊查询%210xxx而言,对于数据212132、210312、210231和211123进行该模糊查询:如图3所示,“210”的码值区间为[0.74,0.76],212132、210312、210231和211123对应的码值区间分别为0.8238、0.7592、0.7576和0.7923,由于0.7592和0.7576在模糊查询的前缀字符串的编码区间[0.74,0.76]中,0.8238和0.7923不在模糊查询的前缀字符串的编码区间[0.74,0.76]中,因此,210312和210231满足模糊查询,212132和211123不满足模糊查询。
因此,本发明实施例另外在模糊查询操作中,当索引字符数大于2时,即可抵消判断区间定位所需操作。
可选地,作为另一实施例,在110中,采用算术编码算法对数据进行编码,得到编码区间;对数据的编码区间进行重扩展,得到重扩展后的编码区间,并记录相应重扩展字符位置;根据重扩展后的编码区间,采用算术编码算法继续对数据进行编码,得到码值区间。其中,记录相应重扩展字符位置用于解码设备根据码值和重扩展字符位置得到重缩放的字符位置,并根据重缩放的字符位置进行解码区间的重缩放,最终得到数据。
具体地,本发明实施例可以对任一个字符对应的编码区间进行重扩展,也可以根据预设条件进行编码区间的重扩展。
因此,本发明实施例可以对数据的编码区间进行编码区间的重扩展,由于编码区间进行了重扩展进而使得码值区间同样的扩大,因此本发明实施例能够在扩大的码值区间中更容易取到合适的码值,避免错误的编码,实现正确的编码。另外,本发明实施例进行区间的重扩展能够实现使用有限位数的空间来表示足够长的字符串数据。
进一步地,作为另一实施例,在110中,当满足以下条件中的至少一个时,对数据的编码区间进行重扩展,得到重扩展后的编码区间:已完成编码的数据的字符个数达到字符个数阈值,和数据的编码区间的长度小于区间阈值。
具体而言,当满足数据的字符个数大于预设字符个数阈值时,在110中,采用算术编码算法对数据进行编码,当已完成编码的数据的字符个数达到预设字符个数阈值时,对与预设字符个数阈值对应的数据的字符的编码区间进行重扩展,并记录相应重扩展字符位置;根据重扩展后的编码区间,采用算术编码算法继续对数据进行编码,得到码值区间。
换句话说,采用算术编码算法对数据的字符串逐步进行编码时,当已完成编码的数据的字符个数达到预设字符个数阈值时,对与预设字符个数阈值对应的数据的字符的编码区间进行重扩展,并记录相应重扩展字符位置;根据重扩展后的编码区间,采用算术编码算法继续对数据进行编码,得到码值区间。
例如,当前数据包括12个字符串,预设字符个数阈值为10,那么在采用算术编码算法对当前数据的12个字符串进行编码时,对12个字符串中的第10个字符的编码区间重扩展,并记录重扩展的字符位置为第10个字符的位置,然后,重扩展后的编码区间,采用算术编码算法继续对数据(11和12个字符)进行编码,最终得到码值区间(第12字符对应的编码区间)。
随着数据的字符串长度的增加,编码所得到的编码区间长度也会越来越小,在较小的编码区间长度中不容易取到合适的码值。因此,为了尽可能避免可能出现的无法正确进行算术编码的问题,本发明实施例在字符个数达到预设字符个数阈值时进行编码区间的重扩展,由于编码区间进行了重扩展进而使得码值区间同样的扩大,因此本发明实施例能够在扩大的码值区间中更容易取到合适的码值,避免错误的编码,实现正确的编码。另外,本发明实施例进行区间的重扩展能够实现使用有限位数的空间来表示足够长的字符串数据。
当满足数据的编码区间的长度小于预设的阈值时,在110中,对数据的编码区间进行重扩展;根据重扩展后的编码区间,采用算术编码算法继续对数据进行编码,得到码值区间。
换句话说,采用算术编码算法对数据的字符串逐步进行编码时,编码区间会越来越小,当编码区间小于预设阈值时,对小于预设阈值的编码区间进行重扩展;之后,根据重扩展后的编码区间,采用算术编码算法继续对数据中为完成的字符串进行编码,最后得到码值区间。
例如,当前数据包括12个字符串,预设阈值为0.05,那么在采用算术编码算法对当前数据的12个字符串进行编码时,当编码区间小于0.05时,对数据的编码区间进行重扩展;例如,当第7个字符的编码区间为0.1,第8个字符的编码区间为0.04,那么,对8个字符的编码区间0.04进行重扩展,例如,将0.04扩展为1或10等,之后,根据重扩展后的编码区间(1或10)采用算术编码算法继续对数据(第9至12字符)进行编码,得到码值区间(第12字符对应的编码区间)。
随着数据的字符串长度的增加,编码所得到的编码区间长度也会越来越小,在较小的编码区间长度中不容易取到合适的码值。因此,为了尽可能避免可能出现的无法正确进行算术编码的问题,本发明实施例通过对编码区间的重扩展,由于编码区间进行了重扩展进而使得码值区间同样的扩大,因此本发明实施例能够在扩大的码值区间中更容易取到合适的码值,避免错误的编码,实现正确的编码。另外,本发明实施例进行区间的重扩展能够实现使用有限位数的空间来表示足够长的字符串数据。
应注意,进行区间扩展的所有信息将同样发送给解码器,即编码器将二进制码值传送给解码器的同时,也会将移位机制信息发送给解码器。用于同步信息,保证在解码的时候得到正确的解码结果。
图4是根据本发明另一实施例的数据处理的方法的示意性流程图。图4所示的方法可以由数据处理的设备执行,具体地可以由编码设备执行,如图4所示,该方法包括:
410,采用算术编码算法对数据进行编码,得到编码区间;
420,对数据的编码区间进行重扩展,得到重扩展后的编码区间;
具体地,本发明实施例可以对任一个字符对应的编码区间进行重扩展,也可以根据预设条件进行编码区间的重扩展。
430,根据重扩展后的编码区间,采用算术编码算法继续对数据进行编码,得到码值区间。
440,根据码值区间获取码值。
450,存储码值。
因此,本发明实施例通过对数据的编码区间进行编码区间的重扩展,由于编码区间进行了重扩展进而使得码值区间同样的扩大,因此本发明实施例能够在扩大的码值区间中更容易取到合适的码值,避免错误的编码,实现正确的编码。另外,本发明实施例进行区间的重扩展能够实现使用有限位数的空间来表示足够长的字符串数据。
进一步地,作为另一实施例,在420中,当满足以下条件中的至少一个时,对数据的编码区间进行重扩展,得到重扩展后的编码区间,并记录相应重扩展字符位置:已完成编码的数据的字符个数达到字符个数阈值,和数据的编码区间的长度小于区间阈值。其中,记录相应重扩展字符位置用于解码设备根据码值和重扩展字符位置得到重缩放的字符位置,并根据重缩放的字符位置进行解码区间的重缩放,最终得到数据。
具体而言,当满足数据的字符个数大于预设字符个数阈值时,采用算术编码算法对数据进行编码,当已完成编码的数据的字符个数达到预设字符个数阈值时,对与预设字符个数阈值对应的数据的字符的编码区间进行重扩展;根据重扩展后的编码区间,采用算术编码算法继续对数据进行编码,得到码值区间。
换句话说,采用算术编码算法对数据的字符串逐步进行编码时,当已完成编码的数据的字符个数达到预设字符个数阈值时,对与预设字符个数阈值对应的数据的字符的编码区间进行重扩展;根据重扩展后的编码区间,采用算术编码算法继续对数据进行编码,得到码值区间。
例如,当前数据包括12个字符串,预设字符个数阈值为10,那么在采用算术编码算法对当前数据的12个字符串进行编码时,对12个字符串中的第10个字符的编码区间重扩展,并记录重扩展的字符位置为第10个字符的位置,然后,重扩展后的编码区间,采用算术编码算法继续对数据(11和12个字符)进行编码,最终得到码值区间(第12字符对应的编码区间)。
随着数据的字符串长度的增加,编码所得到的编码区间长度也会越来越小,在较小的编码区间长度中不容易取到合适的码值。因此,为了尽可能避免可能出现的无法正确进行算术编码的问题,本发明实施例在字符个数达到预设字符个数阈值时进行编码区间的重扩展,由于编码区间进行了重扩展进而使得码值区间同样的扩大,因此本发明实施例能够在扩大的码值区间中更容易取到合适的码值,避免错误的编码,实现正确的编码。另外,本发明实施例进行区间的重扩展能够实现使用有限位数的空间来表示足够长的字符串数据。
当满足数据的编码区间的长度小于预设的阈值时,对数据的编码区间进行重扩展;根据重扩展后的编码区间,采用算术编码算法继续对数据进行编码,得到码值区间。
换句话说,采用算术编码算法对数据的字符串逐步进行编码时,编码区间会越来越小,当编码区间小于预设阈值时,对小于预设阈值的编码区间进行重扩展;之后,根据重扩展后的编码区间,采用算术编码算法继续对数据中为完成的字符串进行编码,最后得到码值区间。
例如,当前数据包括12个字符串,预设阈值为0.05,那么在采用算术编码算法对当前数据的12个字符串进行编码时,当编码区间小于0.05时,对数据的编码区间进行重扩展;例如,当第7个字符的编码区间为0.1,第8个字符的编码区间为0.04,那么,对8个字符的编码区间0.04进行重扩展,例如,将0.04扩展为1或10等,之后,根据重扩展后的编码区间(1或10)采用算术编码算法继续对数据(第9至12字符)进行编码,得到码值区间(第12字符对应的编码区间)。
随着数据的字符串长度的增加,编码所得到的编码区间长度也会越来越小,在较小的编码区间长度中不容易取到合适的码值。因此,为了尽可能避免可能出现的无法正确进行算术编码的问题,本发明实施例通过对编码区间的重扩展,由于编码区间进行了重扩展进而使得码值区间同样的扩大,因此本发明实施例能够在扩大的码值区间中更容易取到合适的码值,避免错误的编码,实现正确的编码。另外,本发明实施例进行区间的重扩展能够实现使用有限位数的空间来表示足够长的字符串数据。
应注意,进行区间扩展的所有信息将同样发送给解码器,即编码器将二进制码值传送给解码器的同时,也会将移位机制信息发送给解码器。用于同步信息,保证在解码的时候得到正确的解码结果。
图5是根据本发明另一实施例的数据处理的方法的示意性流程图。图5所示的方法可以由数据处理的设备执行,具体地可以由解码设备执行,如图5所示,该方法包括:
510,获取数据的码值和重扩展字符位置。
520,采用算术编码算法对数据的码值进行解码,得到解码区间。
530,根据重扩展字符位置,对数据的解码区间进行重缩放,得到重缩放的解码区间。
540,根据重缩放的解码区间,采用算术编码算法继续对数据进行解码,得到数据。
因此,本发明实施例通过对编码区间的重扩展的码值进行了解码码区间的重缩放,避免错误的解码,实现正确的解码。
具体地,作为另一实施例,在530中,根据重扩展字符位置,确定重缩放字符位置,其中重扩展字符位置与重缩放字符位置相倒置;根据重缩放字符位置对数据的解码区间进行重缩放,得到重缩放的解码区间:已完成编码的数据的字符个数达到字符个数阈值,和数据的编码区间的长度小于区间阈值。
应理解,重扩展字符位置与重缩放字符位置相倒置换句话说重扩展字符位置与重缩放字符位置相反(或相对称),例如,当前数据包括12个字符串,对12个字符串中的第10个字符的编码区间重扩展,那么重扩展字符位置为第10个字符串的位置,根据第10个字符串的位置可以确定重缩放的字符位置为第3个字符的位置。
应理解,图5所示的数据处理方法与图4所示的数据处理方法相对应,区别在于,图5所示的解码过程为图4所示的编码过程的逆运算。图5的方法可由图4的逆过程而得到,为避免重复,此处不再赘述。
图6是根据本发明另一实施例的数据处理的方法的示意性流程图。图6所示的方法可以由数据处理的设备执行,如图6所示,该方法包括:
610,采用算术编码算法对数据进行编码,得到码值区间。
620,根据码值区间获取码值。
630,存储码值。
640,根据码值进行数据的应用操作,应用操作包括等值比较、排列和模糊查询中的至少一种。
因此,本发明实施例通过对数据编码获取码值,并根据码值进行数据的等值比较、排列和模糊查询中的至少一个的应用,不同于现有的根据源数据进行数据的等值比较、排列和模糊查询,将原本复杂数据应用等效成采用码值的进行相应处理,快速简单。
可选地,作为另一实施例,数据为ID类字符串,应用操作包括等值比较,在640中,根据码值进行数据的等值比较;
进一步地,作为另一实施例,在640中,在码值与待比较的码值相等时,确定数据与待比较的码值对应的数据为相同数据。
具体地,进行码值的等值比较可以理解为进行数据的匹配,例如,当两个码值相等时,可以确定该两个码值对应的数据为相同数据,也即匹配成功;当两个码值不相等时,可以确定该两个码值对应的数据为不同数据,也即匹配不成功。
可替代地,作为另一实施例,数据为ID类字符串或为字段的字母字符串,,应用操作包括排列,在640中,根据码值进行数据的排列。
进一步地,作为另一实施例,在640中,根据码值的大小,确定码值在待排列码值中的位置,码值的位置用于表示数据在与待排列的码值对应的数据中的位置。
具体的,例如,进行数据的排序可以理解为对多个数据进行排序。例如,有5个数据,对应5个码值,5个码值由小到大排序,例如,当前码值为5个码值中的第4个,那么第4个码值对应的数据排在该5个数据中的第4位。
在现有的数据库实现中,通常会将压缩技术与查询操作分开考虑,即单独考虑数据存储技术以及相关的查询优化技术。数据库的重要作用在于存储记录所关心事物的重要描述,事物发展等相关信息。因此当事物描述较为冗繁时不仅占用大量的存储空间,也会带来查询上的不便。现有对数据在进行多种查询操作时(如字符串比较,字符串排序等),因需要逐步比较字符串中的字符,会导致查询效率较低。而本发明实施例无需算术解码的过程,直接根据数据对应的码值进行数据的比较(匹配)和/或根据码值进行数据的排列,将原本复杂数据类型的查询操作等效成码值的查询,快速简单。
例如,当数据中只出现数字或字母的应用场景中(此时概率将全分给数字或全分给字母)。例如,数据为非拉丁字母文字。如中文、韩文、日文都有对应的音标。可以通过将对应文字转换成其音标表示方式,即只包含字母的字符串,在采用算术编码算法对数据进行编码,得到码值区间;在码值区间内存在与数据对应的码值时,确定码值的比特数小于数据的比特数;存储码值。根据码值对数据对应的字段进行排序。
例如,中文拼音字母出现概率分布(全拼),A(0.107),B(0.014),C(0.017),D(0.030),E(0.062),F(0.009),G(0.060),H(0.067),I(0.141),J(0.023),K(0.008),L(0.017),M(0.014),N(0.117),O(0.065),P(0.008),Q(0.013),R(0.006),S(0.026),T(0.015),U(0.096),V(0.001),W(0.010),X(0.020),Y(0.028),Z(0.026)。如图2所示,对于字段“优秀”“良好”“及格”,按字母顺序排列并编码,其中,“优秀”对应的字母字符串为“youxiu”,对应的码值为0.96684845;“良好”对应的字母字符串为“lianghao”,对应的码值为0.544375656;“及格”对应的字母字符串为“jige”,对应的码值为0.516228。按照码值由小到大的依次排序为0.516228、0.544375656和0.96684845,分别对应“及格”、“良好”和“优秀”。
可替代地,作为另一实施例,应用操作包括模糊查询,在640中,根据码值对数据进行模糊查询。
进一步地,作为另一实施例,在640中,根据码值是否在所需模糊查询的前缀字符串的编码区间中,确定数据是否包括前缀字符串,其中,在码值在所需模糊查询的前缀字符串的编码区间中时,数据包括前缀字符串,在码值不在所需模糊查询的前缀字符串的编码区间中时,数据不包括前缀字符串。
换句话说,码值在所需模糊查询的前缀字符串的编码区间中时,数据满足模糊查询,码值不在所需模糊查询的前缀字符串的编码区间中时,数据不满足模糊查询。
具体而言,当字符串经过算术编码压缩后,得到的是一系列的码值。码值来自于对字符串编码后所得到的编码区间,而编码区间彼此之间相互不正交。我们还注意到字符串的编码区间总是包含于其前缀字符串的编码区间。例如,字符串‘A12986572’的编码区间一定包含于‘A1298’、‘A12’等前缀字符串的编码区间中。只需判断码值是否在所需模糊查询的前缀字符串的编码区间中,就可进行模糊查询。例如,整数集空间{0,1,2,3},出现概率分布{0.2,0.5,0.2,0.1}。针对模糊查询%210xxx而言,对于数据212132、210312、210231和211123进行该模糊查询:如图3所示,“210”的码值区间为[0.74,0.76],212132、210312、210231和211123对应的码值区间分别为0.8238、0.7592、0.7576和0.7923,由于0.7592和0.7576在模糊查询的前缀字符串的编码区间[0.74,0.76]中,0.8238和0.7923不在模糊查询的前缀字符串的编码区间[0.74,0.76]中,因此,210312和210231满足模糊查询,212132和211123不满足模糊查询。
因此,本发明实施例另外在模糊查询操作中,当索引字符数大于2时,即可抵消判断区间定位所需操作。
上文中结合图1至图6详细描述了本发明实施例的数据处理的方法,下面结合图7至图11的具体例子,更加详细地描述本发明实施例。应注意,图7至图11的例子仅仅是为了帮助本领域技术人员理解本发明实施例,而非要将本发明实施例限于所例示的具体数值或具体场景。本领域技术人员根据所给出的图7至图11的例子,显然可以进行各种等价的修改或变化,这样的修改或变化也落入本发明实施例的范围内。
图7是根据本发明另一实施例的数据处理的方法的示意性流程图。图7中的方法中显示了根据收益来评估是否采用算术编码的过程,如图7所示的方法包括:
710,概率模型估计。
720,输入序列。
具体地,该序列可以为源数据的字符串序列,例如,可以为数字与字母特殊组合的数据类型。或者仅数字或仅字母的数据类型,例如,输入的序列可以为数据单号、图书索引号、公交车牌号、产品单据号、IMSI或IMEI等,以及中文、韩文、日文对应的音标等。
730编码区间。
具体地,根据算术编码算法,确定源数据的编码区间。
740,码值选取。
具体地,确定是否在编码区间中存在与数据对应的码值,换句话说,确定是否可以选取码值,如果是则进行步骤750,如果无法选取码值则进行790。
750,收益评估。
具体地,在码值区间内存在与数据对应的码值时,确定码值的比特数是否满足要求,例如,确定码值的比特数是否小于数据的比特数。
760,是否满足要求。
在满足要求时进行步骤770,否则,在不满足要求时进行步骤780。
770,应用。
具体地,可以根据码值进行等值比较、排序以及模糊查询等操作。
780,放弃。
具体地,放弃算术编码。
790,放弃。
具体地,放弃算术编码。
具体地,本发明实施例可判断在最后所得到的编码区间内是否可以取到合适的码值,如果无法取到将直接存储数据而无需算术编码。当可以取到码值时,将判断为了表示码值是否会导致所需的比特位数多于表示之前原数据所需要的比特位数,如果无压缩收益将放弃采用算术编码。
因此,本发明实施例通过采用算术编码算法对数据进行编码,得到码值区间。在码值区间内存在与数据对应的码值时,确定码值的比特数小于数据的比特数,并存储码值,本发明实施例进行收益判断,能够降低错误的编码,减小数据的存储空间。
图8是根据本发明另一实施例的数据处理的方法的示意性流程图。图8中的方法中显示了基于编码区间重扩展的算术编码和算术解码的过程,如图8所示的方法包括:
810,输入源序列。
具体地,该序列可以为源数据的字符串序列,例如,可以为数字与字母特殊组合的数据类型。或者仅数字或仅字母的数据类型,例如,输入的序列可以为数据单号、图书索引号、公交车牌号、产品单据号、IMSI或IMEI等,以及中文、韩文、日文对应的音标等。
820,源模型。
具体地,源模型中包括各个字符的概率值。数据处理的设备可以根据源模型对源序列进行算术编码。
830,算术编码。
具体地,采用算术编码算法根据源模型对数据的字符串逐步进行编码。
840,是否满足预设条件。
具体地,判断当已完成编码的数据的字符个数是否达到预设字符个数阈值或者数据的编码区间的长度是否小于预设的阈值。如果是则执行步骤850,否则执行步骤840。
850,编码区间重扩展
在满足预设条件时,对数据的编码区间进行重扩展;根据重扩展后的编码区间,采用算术编码算法继续对数据进行编码,得到码值区间。最后得到源序列的码值。
例如,当前数据包括12个字符串,预设阈值为0.05,那么在采用算术编码算法对当前数据的12个字符串进行编码时,当编码区间小于0.05时,对数据的编码区间进行重扩展;例如,当第7个字符的编码区间为0.1,第8个字符的编码区间为0.04,那么,对8个字符的编码区间0.04进行重扩展,例如,将0.04扩展为1或10等,之后,根据重扩展后的编码区间(1或10)采用算术编码算法继续对数据(第9至12字符)进行编码,得到码值区间(第12字符对应的编码区间)。
再例如,当前数据包括12个字符串,预设阈值为0.05,那么在采用算术编码算法对当前数据的12个字符串进行编码时,当编码区间小于0.05时,对数据的编码区间进行重扩展;例如,当第7个字符的编码区间为0.1,第8个字符的编码区间为0.04,那么,对8个字符的编码区间0.04进行重扩展,例如,将0.04扩展为1或10等,之后,根据重扩展后的编码区间(1或10)采用算术编码算法继续对数据(第9至12字符)进行编码,得到码值区间(第12字符对应的编码区间)。
860,算术解码。
具体地,根据源模型,以及编码的信息,例如,如果在解码时进行了区间扩展,同样在解码时进行相反的操作,进行区间的缩放。
应注意,进行区间扩展的所有信息将同样发送给解码器,即编码器将二进制码值传送给解码器的同时,也会将移位机制信息发送给解码器。用于同步信息,保证在解码的时候得到正确的解码结果。
870,源模型。
与820中的源模型对应,具体地,源模型中包括各个字符的概率值。解码数据的设备可以根据源模型对源序列进行算术解码。
880,得到解码序列。
具体地,解码序列可以与源序列相同。
随着数据的字符串长度的增加,编码所得到的编码区间长度也会越来越小,在较小的编码区间长度中不容易取到合适的码值。因此,为了尽可能避免可能出现的无法正确进行算术编码的问题,能够容易取到合适的码值,避免错误的编码,实现正确的编码。另外,本发明实施例进行区间的重扩展能够实现使用有限位数的空间来表示足够长的字符串数据。
图9是根据本发明另一实施例的数据处理的方法的示意性流程图。图9中的方法中显示了ID类字符串的算术编码及查询操作的过程,如图9所示的方法包括:
910,获取ID类字符串。
具体地,ID类字符串可以为数据单号、图书索引号、公交车牌号等字字母出现的概率较低,而数字出现的概率较高的字符串。比如通常来说字母只占据字符串中的1位或者2位。
920,设计概论模型。
具体地,概论模型包括各个字符的概率。
930,算术编码。
具体地,采用算术编码算法根据概论模型对数据的字符串逐步进行编码。
940,评估判断。
具体地,确定是否在编码区间中存在与数据对应的码值,换句话说,确定是否可以选取码值,如果是,则确定码值的比特数是否满足要求,例如,确定码值的比特数是否小于数据的比特数。
950,是否满足要求。
如果满足要求,则进行970,否则,进行步骤960。
960,放弃。
970,获取码值。
具体地,从码值区间中确定与ID类字符串对应的码值。
980,等值比较和/或排序。
具体地,可以根据码值进行数据的等值比较操作,在码值与待比较的码值相等时,确定数据与待比较的码值对应的数据为相同数据。具体地,进行码值的等值比较可以理解为进行数据的匹配,例如,当两个码值相等时,可以确定该两个码值对应的数据为相同数据,也即匹配成功;当两个码值不相等时,可以确定该两个码值对应的数据为不同数据,也即匹配不成功。
还可以据码值进行数据的排序,例如,根据码值的大小,确定码值在待排列码值中的位置,码值的位置用于表示数据在与待排列的码值对应的数据中的位置。具体地,进行数据的排序可以理解为对多个数据进行排序。例如,有5个数据,对应5个码值,5个码值由小到大排序,例如,当前码值为5个码值中的第4个,那么第4个码值对应的数据排在该5个数据中的第4位。
图10是根据本发明另一实施例的数据处理的方法的示意性流程图。图10中的方法中显示了字段的字母字符串的算术编码及字段排序的过程,如图10所示的方法包括:
1010,获取字段。
具体地,该字段可以为中文、韩文、日文字段等,本发明实施例并不限于此,该字段还可以为通过音标转换成字母字符串的其他字段。例如,该字段可以为中文字段“优秀”“良好”和“及格”。
1020,字母字符串。
具体地,将字段转换成字母字符串。例如,“优秀”、“良好”和“及格”对应的字母字符串分别为“youxiu”、“lianghao”和“jige”。
1030,拼音字母概率。
具体地,获取各个字母的概率,例如,中文拼音字母出现概率分布(全拼),A(0.107),B(0.014),C(0.017),D(0.030),E(0.062),F(0.009),G(0.060),H(0.067),I(0.141),J(0.023),K(0.008),L(0.017),M(0.014),N(0.117),O(0.065),P(0.008),Q(0.013),R(0.006),S(0.026),T(0.015),U(0.096),V(0.001),W(0.010),X(0.020),Y(0.028),Z(0.026)。
1040,算术编码。
具体地,根据上述拼音字母概率,采用算术编码算法进行编码。
1050,评估判断。
具体地,确定是否在编码区间中存在与数据对应的码值,换句话说,确定是否可以选取码值,如果是,则确定码值的比特数是否满足要求,例如,确定码值的比特数是否小于数据的比特数。
1060,是否满足要求。
如果满足要求,则进行1080,否则,进行步骤1070。
1070,返回。
1080,获取码值。
具体地,从码值区间中确定与字母字符串对应的码值。
1090,字段排序。
例如,对于字段“优秀”“良好”“及格”,按字母顺序排列并编码,其中,“优秀”对应的字母字符串为“youxiu”,对应的码值为0.96684845;“良好”对应的字母字符串为“lianghao”,对应的码值为0.544375656;“及格”对应的字母字符串为“jige”,对应的码值为0.516228。按照码值由小到大的依次排序为0.516228、0.544375656和0.96684845,分别对应“及格”、“良好”和“优秀”。
图11是根据本发明另一实施例的数据处理的方法的示意性流程图。图11中的方法中显示了基于算术编码的模糊查询的过程,如图11所示的方法包括:
1110,选取索引片段。
具体地,获取需要模糊查询的前缀字符串片段。例如,该索引片段为“210”。
1120,算术编码。
具体地,根据算术编码算法对索引片段进行编码。
1130,码值区间。
具体地,获取索引片段的码值区间。例如,整数集空间{0,1,2,3},出现概率分布{0.2,0.5,0.2,0.1}。针对“210”而言,“210”的码值区间为[0.74,0.76]。
1140,获取序列对应的码值。
具体地,获取需要模糊查询的序列对应的码值,例如,212132、210312、210231和211123对应的码值区间分别为0.8238、0.7592、0.7576和0.7923。
1150,检验并记录。
具体地,根据序列对应的码值和索引片段的码值区间进行模糊查询并记录结果。例如,210”的码值区间为[0.74,0.76],212132、210312、210231和211123对应的码值区间分别为0.8238、0.7592、0.7576和0.7923,由于0.7592和0.7576在模糊查询的前缀字符串的编码区间[0.74,0.76]中,0.8238和0.7923不在模糊查询的前缀字符串的编码区间[0.74,0.76]中,因此,210312和210231满足模糊查询条件,212132和211123不满足模糊查询条件。
1160,是否结束。
具体地,如果是,则进行步骤870,否则进行步骤840获取另一个序列对应的码字。
1170,输出结果。
应注意,图7至图11的例子是为了帮助本领域技术人员更好地理解本发明实施例,而非要限制本发明实施例的范围。本领域技术人员根据所给出的图7至图11的例子,显然可以进行各种等价的修改或变化,这样的修改或变化也落入本发明实施例的范围内。
应理解,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
上文中,结合图1至图11详细描述了本发明实施例的数据处理的方法,下面将结合图12至图19描述本发明实施例的数据处理的设备。
图12是根据本发明一个实施例的数据处理的设备的示意框图。如图12所示的数据处理的设备1200可以是编码设备,如图12所示的数据处理的设备1200包括:编码单元1210、获取单元1220、比较单元1230和第一存储单元1240。
具体地,编码单元1210,用于采用算术编码算法对数据进行编码,得到码值区间;获取单元1220,用于在码值区间内存在与数据对应的码值时,根据码值区间获取码值;比较单元1230,用于将码值的比特数与数据的比特数的进行比较,以获取比较结果;第一存储单元1240,用于根据比较结果进行存储操作。
因此,本发明实施例通过采用算术编码算法对数据进行编码,得到码值区间。在码值区间内存在与数据对应的码值时,根据码值区间获取码值;将码值的比特数与数据的比特数的进行比较,以获取比较结果;根据比较结果进行存储操作。本发明实施例能够降低错误的编码,减小数据的存储空间。
可选地,作为另一实施例,比较结果为码值的比特数小于数据的比特数,其中,第一存储单元根据比较结果,存储码值。
可替代地,作为另一实施例,比较结果为码值的比特数大于或等于数据的比特数,其中,第一存储单元根据比较结果,存储数据。
可选地,作为另一实施例,该设备还包括:应用单元,用于根据码值进行数据的应用操作,应用操作包括等值比较、排列和模糊查询中的至少一种。
可选地,作为另一实施例,数据为ID类字符串,应用操作包括等值比较,应用单元根据码值进行数据的等值比较。
具体地,作为另一实施例,应用单元在码值与待比较的码值相等时,确定数据与待比较的码值对应的数据为相同数据。
可替代地,作为另一实施例,数据为ID类字符串或为字段的字母字符串,应用操作包括排列,应用单元根据码值进行数据的排列。
具体地,作为另一实施例,应用单元根据码值的大小,确定码值在待排列码值中的位置,码值的位置用于表示数据在与待排列的码值对应的数据中的位置。
可替代地,作为另一实施例,应用操作包括模糊查询,应用单元根据码值对数据进行模糊查询。
具体地,作为另一实施例,应用单元根据码值是否在所需模糊查询的前缀字符串的编码区间中,确定数据是否包括前缀字符串,其中,在码值在所需模糊查询的前缀字符串的编码区间中时,数据包括前缀字符串,在码值不在所需模糊查询的前缀字符串的编码区间中时,数据不包括前缀字符串。
可选地,作为另一实施例,编码单元1210采用算术编码算法对数据进行编码,得到编码区间;对数据的编码区间进行重扩展,得到重扩展后的编码区间;根据重扩展后的编码区间,采用算术编码算法继续对数据进行编码,得到码值区间。
进一步地,编码单元1210当满足以下条件中的至少一个时,对数据的编码区间进行重扩展,得到重扩展后的编码区间,并记录相应重扩展字符位置:已完成编码的数据的字符个数达到字符个数阈值,和数据的编码区间的长度小于区间阈值。
可选地,作为另一实施例,该设备还包括:确定单元,用于在获取单元1220获取码值之前,确定码值区间内是否存在与数据对应的合适的码值。
可选地,作为另一实施例,该设备还包括:第二存储单元,用于在码值区间内不存在与数据对应的合适的码值时,存储数据。
应理解,图12所示的数据处理的设备与图1所示的数据处理的方法相对应,图12所示的数据处理的设备能够实现图1的数据处理的方法的各个过程,图12所示的数据处理的设备的功能可参见图1数据处理的方法的相关描述,为避免重复,此处不再赘述。
图13是根据本发明另一实施例的数据处理的设备的示意框图。如图13所示的数据处理的设备1300可以为编码设备,如图13所示的设备1300包括:第一编码单元1310、扩展单元1320、第二编码单元1330、获取单元1340和存储单元1350。
具体地,第一编码单元1310用于采用算术编码算法对数据进行编码,得到编码区间;扩展单元1320用于对数据的编码区间进行重扩展,得到重扩展后的编码区间;第二编码单元1330用于根据重扩展后的编码区间,采用算术编码算法继续对数据进行编码,得到码值区间。获取单元1340用于根据码值区间获取码值;存储单元1350用于存储码值。
因此,本发明实施例通过对数据的编码区间进行编码区间的重扩展,由于编码区间进行了重扩展进而使得码值区间同样的扩大,因此本发明实施例能够在扩大的码值区间中更容易取到合适的码值,避免错误的编码,实现正确的编码。另外,本发明实施例进行区间的重扩展能够实现使用有限位数的空间来表示足够长的字符串数据。
可选地,作为另一实施例,扩展单元1320当满足以下条件中的至少一个时,对数据的编码区间进行重扩展,得到重扩展后的编码区间,并记录相应重扩展字符位置:已完成编码的数据的字符个数达到字符个数阈值,和数据的编码区间的长度小于区间阈值。
应理解,图13所示的数据处理的设备与图4所示的数据处理的方法相对应,图13所示的数据处理的设备能够实现图4的数据处理的方法的各个过程,图13所示的数据处理的设备的功能可参见图4数据处理的方法的相关描述,为避免重复,此处不再赘述。
图14是根据本发明另一实施例的数据处理的设备的示意框图。如图14所示的数据处理的设备1400可以为解码设备,如图14所示的设备1400包括:第一获取单元1410、第一解码单元1420、缩放单元1430和第二解码单元1440。
具体地,第一获取单元1410用于获取数据的码值和重扩展字符位置;第一解码单元1420用于采用算术编码算法对数据的码值进行解码,得到解码区间;缩放单元1430用于根据重扩展字符位置,对数据的解码区间进行重缩放,得到重缩放的解码区间;第二解码单元1440用于根据重缩放的解码区间,采用算术编码算法继续对数据进行解码,得到数据。
因此,本发明实施例通过对编码区间的重扩展的码值进行了解码码区间的重缩放,避免错误的解码,实现正确的解码。
可选地,作为另一实施例,缩放单元1430根据重扩展字符位置,确定重缩放字符位置,其中重扩展字符位置与重缩放字符位置相倒置;根据重缩放字符位置对数据的解码区间进行重缩放,得到重缩放的解码区间。
应理解,图14所示的数据处理的设备与图5所示的数据处理的方法相对应,图14所示的数据处理的设备能够实现图5的数据处理的方法的各个过程,图14所示的数据处理的设备的功能可参见图5数据处理的方法的相关描述,为避免重复,此处不再赘述。
图15是根据本发明另一实施例的数据处理的设备的示意框图。如图15所示的数据处理的设备1500可以为编码设备,如图15所示的设备1500包括:编码单元1510、获取单元1520、存储单元1530和应用单元1540。
具体地,编码单元1510用于采用算术编码算法对数据进行编码,得到码值区间;获取单元1520用于根据码值区间获取码值;存储单元1530用于存储码值;应用单元1540用于根据码值进行数据的应用操作,应用操作包括等值比较、排列和模糊查询中的至少一种。
因此,本发明实施例通过对数据编码获取码值,并根据码值进行数据的等值比较、排列和模糊查询中的至少一个的应用,不同于现有的根据源数据进行数据的等值比较、排列和模糊查询,将原本复杂数据应用等效成采用码值的进行相应处理,快速简单。
可选地,作为另一实施例,数据为ID类字符串,应用操作包括等值比较,应用单元1540根据码值进行数据的等值比较;
具体地,作为另一实施例,应用单元1540在码值与待比较的码值相等时,确定数据与待比较的码值对应的数据为相同数据。
可替代地,作为另一实施例,数据为ID类字符串或为字段的字母字符串,应用操作包括排列,应用单元1540根据码值进行数据的排列。
具体地,作为另一实施例,应用单元1540根据码值的大小,确定码值在待排列码值中的位置,码值的位置用于表示数据在与待排列的码值对应的数据中的位置。
可替代地,作为另一实施例,应用操作包括模糊查询,应用单元1540根据码值对数据进行模糊查询。
具体地,作为另一实施例,应用单元1540根据码值是否在所需模糊查询的前缀字符串的编码区间中,确定数据是否包括前缀字符串,其中,在码值在所需模糊查询的前缀字符串的编码区间中时,数据包括前缀字符串,在码值不在所需模糊查询的前缀字符串的编码区间中时,数据不包括前缀字符串。
应理解,图15所示的数据处理的设备与图6所示的数据处理的方法相对应,图15所示的数据处理的设备能够实现图6的数据处理的方法的各个过程,图15所示的数据处理的设备的功能可参见图6数据处理的方法的相关描述,为避免重复,此处不再赘述。
图16是根据本发明另一实施例的数据处理的设备的示意框图。如图16所示的数据处理的设备1600可以是编码设备,如图16所示的数据处理的设备1600包括:包括处理器1610、存储器1620和总线***1630。
具体地,处理器1610通过总线***1630调用存储在存储器1620中的代码,采用算术编码算法对数据进行编码,得到码值区间;在码值区间内存在与数据对应的码值时,根据码值区间获取码值;将码值的比特数与数据的比特数的进行比较,以获取比较结果;根据比较结果进行存储操作。
本发明实施例通过采用算术编码算法对数据进行编码,得到码值区间。在码值区间内存在与数据对应的码值时,根据码值区间获取码值;将码值的比特数与数据的比特数的进行比较,以获取比较结果;根据比较结果进行存储操作。本发明实施例能够降低错误的编码,减小数据的存储空间。
上述本发明实施例揭示的方法可以应用于处理器1610中,或者由处理器1610实现。处理器1610可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器1610中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器1610可以是通用处理器、数字信号处理器(英文Digital Signal Processor,简称DSP)、专用集成电路(英文Application Specific Integrated Circuit,简称ASIC)、现成可编程门阵列(英文Field Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存取存储器(英文Random Access Memory,简称RAM)、闪存、只读存储器(英文Read-OnlyMemory,简称ROM)、可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1620,处理器1610读取存储器1620中的信息,结合其硬件完成上述方法的步骤,该总线***1630除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线***1630。
可选地,作为另一实施例,比较结果为码值的比特数小于数据的比特数,其中,处理器1610根据比较结果,存储码值。
可替代地,作为另一实施例,比较结果为码值的比特数大于或等于数据的比特数,其中,处理器1610根据比较结果,存储数据。
可选地,作为另一实施例,该设备还包括:处理器1610用于根据码值进行数据的应用操作,应用操作包括等值比较、排列和模糊查询中的至少一种。
可选地,作为另一实施例,数据为ID类字符串,应用操作包括等值比较,处理器1610根据码值进行数据的等值比较。
具体地,作为另一实施例,处理器1610在码值与待比较的码值相等时,确定数据与待比较的码值对应的数据为相同数据。
可替代地,作为另一实施例,数据为ID类字符串或为字段的字母字符串,应用操作包括排列,处理器1610根据码值进行数据的排列。
具体地,作为另一实施例,处理器1610根据码值的大小,确定码值在待排列码值中的位置,码值的位置用于表示数据在与待排列的码值对应的数据中的位置。
可替代地,作为另一实施例,应用操作包括模糊查询,处理器1610根据码值对数据进行模糊查询。
具体地,作为另一实施例,处理器1610根据码值是否在所需模糊查询的前缀字符串的编码区间中确定数据是否包括前缀字符串,其中,在码值在所需模糊查询的前缀字符串的编码区间中时,数据包括前缀字符串,在码值不在所需模糊查询的前缀字符串的编码区间中时,数据不包括前缀字符串。
可选地,作为另一实施例,处理器1610采用算术编码算法对数据进行编码,得到编码区间;对数据的编码区间进行重扩展,得到重扩展后的编码区间;根据重扩展后的编码区间,采用算术编码算法继续对数据进行编码,得到码值区间。
进一步地,处理器1610当满足以下条件中的至少一个时,对数据的编码区间进行重扩展,得到重扩展后的编码区间,并记录相应重扩展字符位置:已完成编码的数据的字符个数达到字符个数阈值,和数据的编码区间的长度小于区间阈值。
可选地,作为另一实施例,处理器1610获取码值之前,确定码值区间内是否存在与数据对应的合适的码值。
可选地,作为另一实施例,处理器1610在码值区间内不存在与数据对应的合适的码值时,存储数据。
应理解,图16所示的数据处理的设备与图1所示的数据处理的方法相对应,图16所示的数据处理的设备能够实现图1的数据处理的方法的各个过程,图16所示的数据处理的设备的功能可参见图1数据处理的方法的相关描述,为避免重复,此处不再赘述。
图17是根据本发明另一实施例的数据处理的设备的示意框图。如图17所示的数据处理的设备1700可以为编码设备,如图17所示的设备1700包括:包括处理器1710、存储器1720和总线***1730。
具体地,处理器1710通过总线***1730调用存储在存储器1720中的代码,采用算术编码算法对数据进行编码,得到编码区间;对数据的编码区间进行重扩展,得到重扩展后的编码区间;根据重扩展后的编码区间,采用算术编码算法继续对数据进行编码,得到码值区间。根据码值区间获取码值;存储码值。
因此,本发明实施例通过对数据的编码区间进行编码区间的重扩展,由于编码区间进行了重扩展进而使得码值区间同样的扩大,因此本发明实施例能够在扩大的码值区间中更容易取到合适的码值,避免错误的编码,实现正确的编码。另外,本发明实施例进行区间的重扩展能够实现使用有限位数的空间来表示足够长的字符串数据。
上述本发明实施例揭示的方法可以应用于处理器1710中,或者由处理器1710实现。处理器1710可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器1710中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器1710可以是通用处理器、数字信号处理器(英文Digital Signal Processor,简称DSP)、专用集成电路(英文Application Specific Integrated Circuit,简称ASIC)、现成可编程门阵列(英文Field Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存取存储器(英文Random Access Memory,简称RAM)、闪存、只读存储器(英文Read-OnlyMemory,简称ROM)、可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1720,处理器1710读取存储器1720中的信息,结合其硬件完成上述方法的步骤,该总线***1730除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线***1730。
可选地,作为另一实施例,处理器1710当满足以下条件中的至少一个时,对数据的编码区间进行重扩展,得到重扩展后的编码区间,并记录相应重扩展字符位置:已完成编码的数据的字符个数达到字符个数阈值,和数据的编码区间的长度小于区间阈值。
应理解,图17所示的数据处理的设备与图4所示的数据处理的方法相对应,图17所示的数据处理的设备能够实现图4的数据处理的方法的各个过程,图17所示的数据处理的设备的功能可参见图4数据处理的方法的相关描述,为避免重复,此处不再赘述。
图18是根据本发明另一实施例的数据处理的设备的示意框图。如图18所示的数据处理的设备1800可以为解码设备,如图18所示的设备1800包括:包括处理器1810、存储器1820和总线***1830。
具体地,处理器1810通过总线***1830调用存储在存储器1820中的代码,获取数据的码值和重扩展字符位置;采用算术编码算法对数据的码值进行解码,得到解码区间;根据重扩展字符位置,对数据的解码区间进行重缩放,得到重缩放的解码区间;根据重缩放的解码区间,采用算术编码算法继续对数据进行解码,得到数据。
因此,本发明实施例通过对编码区间的重扩展的码值进行了解码码区间的重缩放,避免错误的解码,实现正确的解码。
上述本发明实施例揭示的方法可以应用于处理器1810中,或者由处理器1810实现。处理器1810可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器1810中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器1810可以是通用处理器、数字信号处理器(英文Digital Signal Processor,简称DSP)、专用集成电路(英文Application Specific Integrated Circuit,简称ASIC)、现成可编程门阵列(英文Field Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存取存储器(英文Random Access Memory,简称RAM)、闪存、只读存储器(英文Read-OnlyMemory,简称ROM)、可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1820,处理器1810读取存储器1820中的信息,结合其硬件完成上述方法的步骤,该总线***1830除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线***1830。
可选地,作为另一实施例,处理器1810根据重扩展字符位置,确定重缩放字符位置,其中重扩展字符位置与重缩放字符位置相倒置;根据重缩放字符位置对数据的解码区间进行重缩放,得到重缩放的解码区间。
应理解,图18所示的数据处理的设备与图5所示的数据处理的方法相对应,图18所示的数据处理的设备能够实现图5的数据处理的方法的各个过程,图18所示的数据处理的设备的功能可参见图5数据处理的方法的相关描述,为避免重复,此处不再赘述。
图19是根据本发明另一实施例的数据处理的设备的示意框图。如图19所示的数据处理的设备1900可以为编码设备,如图19所示的设备1900包括:包括处理器1910、存储器1920和总线***1930。
具体地,处理器1910通过总线***1930调用存储在存储器1920中的代码,采用算术编码算法对数据进行编码,得到码值区间;根据码值区间获取码值;存储码值;根据码值进行数据的应用操作,应用操作包括等值比较、排列和模糊查询中的至少一种。
因此,本发明实施例通过对数据编码获取码值,并根据码值进行数据的等值比较、排列和模糊查询中的至少一个的应用,不同于现有的根据源数据进行数据的等值比较、排列和模糊查询,将原本复杂数据应用等效成采用码值的进行相应处理,快速简单。
上述本发明实施例揭示的方法可以应用于处理器1910中,或者由处理器1910实现。处理器1910可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器1910中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器1910可以是通用处理器、数字信号处理器(英文Digital Signal Processor,简称DSP)、专用集成电路(英文Application Specific Integrated Circuit,简称ASIC)、现成可编程门阵列(英文Field Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存取存储器(英文Random Access Memory,简称RAM)、闪存、只读存储器(英文Read-OnlyMemory,简称ROM)、可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1920,处理器1910读取存储器1920中的信息,结合其硬件完成上述方法的步骤,该总线***1930除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线***1930。
可选地,作为另一实施例,数据为ID类字符串,应用操作包括等值比较,处理器1910根据码值进行数据的等值比较;
具体地,作为另一实施例,处理器1910在码值与待比较的码值相等时,确定数据与待比较的码值对应的数据为相同数据。
可替代地,作为另一实施例,数据为ID类字符串或为字段的字母字符串,应用操作包括排列,处理器1910根据码值进行数据的排列。
具体地,作为另一实施例,处理器1910根据码值的大小,确定码值在待排列码值中的位置,码值的位置用于表示数据在与待排列的码值对应的数据中的位置。
可替代地,作为另一实施例,应用操作包括模糊查询,处理器1910根据码值对数据进行模糊查询。
具体地,作为另一实施例,处理器1910根据码值是否在所需模糊查询的前缀字符串的编码区间中,确定数据是否包括前缀字符串,其中,在码值在所需模糊查询的前缀字符串的编码区间中时,数据包括前缀字符串,在码值不在所需模糊查询的前缀字符串的编码区间中时,数据不包括前缀字符串。
应理解,图19所示的数据处理的设备与图6所示的数据处理的方法相对应,图19所示的数据处理的设备能够实现图6的数据处理的方法的各个过程,图19所示的数据处理的设备的功能可参见图6数据处理的方法的相关描述,为避免重复,此处不再赘述。
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
另外,本文中术语“***”和“网络”在本文中常被可互换使用。本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
应理解,在本发明实施例中,“与A相应的B”表示B与A相关联,根据A可以确定B。但还应理解,根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其它信息确定B。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的***、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的***、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可以用硬件实现,或固件实现,或它们的组合方式来实现。当使用软件实现时,可以将上述功能存储在计算机可读介质中或作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是计算机能够存取的任何可用介质。以此为例但不限于:计算机可读介质可以包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质。此外。任何连接可以适当的成为计算机可读介质。例如,如果软件是使用同轴电缆、光纤光缆、双绞线、数字用户线(DSL)或者诸如红外线、无线电和微波之类的无线技术从网站、服务器或者其他远程源传输的,那么同轴电缆、光纤光缆、双绞线、DSL或者诸如红外线、无线和微波之类的无线技术包括在所属介质的定影中。如本发明所使用的,盘(Disk)和碟(disc)包括压缩光碟(CD)、激光碟、光碟、数字通用光碟(DVD)、软盘和蓝光光碟,其中盘通常磁性的复制数据,而碟则用激光来光学的复制数据。上面的组合也应当包括在计算机可读介质的保护范围之内。
总之,以上所述仅为本发明技术方案的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (30)

1.一种数据处理的方法,其特征在于,包括:
采用算术编码算法对数据进行编码,得到码值区间;
在所述码值区间内存在与所述数据对应的码值时,根据所述码值区间获取所述码值;
将所述码值的比特数与所述数据的比特数的进行比较,以获取比较结果;
根据所述比较结果在数据库中进行存储操作。
2.根据权利要求1所述的方法,其特征在于,所述比较结果为所述码值的比特数小于所述数据的比特数,
其中,所述根据所述比较结果在数据库中进行存储操作,包括:
根据所述比较结果,在数据库中存储所述码值。
3.根据权利要求1所述的方法,其特征在于,所述比较结果为所述码值的比特数大于或等于所述数据的比特数,
其中,所述根据所述比较结果在数据库中进行存储操作,包括:
根据所述比较结果,在数据库中存储所述数据。
4.根据权利要求2所述的方法,其特征在于,还包括:
根据所述码值进行所述数据的应用操作,所述应用操作包括等值比较、排列和模糊查询中的至少一种。
5.根据权利要求4所述的方法,其特征在于,所述数据为标识ID类字符串,所述应用操作包括等值比较,所述根据所述码值进行所述数据的应用操作,包括:
在所述码值与待比较的码值相等时,确定所述数据与所述待比较的码值对应的数据为相同数据。
6.根据权利要求4所述的方法,其特征在于,所述数据为ID类字符串或为字段的字母字符串,所述应用操作包括排列,所述根据所述码值进行所述数据的应用操作,包括:
根据所述码值的大小,确定所述码值在待排列码值中的位置,所述码值的位置用于表示所述数据在与所述待排列的码值对应的数据中的位置。
7.根据权利要求4所述的方法,其特征在于,所述应用操作包括模糊查询,所述根据所述码值进行所述数据的应用操作,包括:
根据所述码值是否在所需模糊查询的前缀字符串的编码区间中,确定所述数据是否包括所述前缀字符串,
其中,在所述码值在所需模糊查询的前缀字符串的编码区间中时,所述数据包括所述前缀字符串,
在所述码值不在所需模糊查询的前缀字符串的编码区间中时,所述数据不包括所述前缀字符串。
8.根据权利要求1至7中任一项所述的方法,其特征在于,所述采用算术编码算法对数据进行编码,得到码值区间,包括:
采用算术编码算法对所述数据进行编码,得到编码区间;
对所述数据的编码区间进行重扩展,得到重扩展后的编码区间;
根据所述重扩展后的编码区间,采用算术编码算法继续对所述数据进行编码,得到码值区间。
9.根据权利要求8所述的方法,其特征在于,所述对所述数据的编码区间进行重扩展,得到重扩展后的编码区间,包括:
当满足以下条件中的至少一个时,对所述数据的编码区间进行重扩展,得到重扩展后的编码区间,并记录相应重扩展字符位置:
已完成编码的所述数据的字符个数达到字符个数阈值,和所述数据的编码区间的长度小于区间阈值。
10.根据权利要求1至7中任一项所述的方法,其特征在于,在所述码值区间内存在与所述数据对应的码值时,根据所述码值区间获取所述码值之前,还包括:
确定所述码值区间内是否存在与所述数据对应的合适的码值。
11.根据权利要求10所述的方法,其特征在于,还包括:
在所述码值区间内不存在与所述数据对应的合适的码值时,存储所述数据。
12.一种数据处理的方法,其特征在于,包括:
采用算术编码算法对数据进行编码,得到码值区间;
根据所述码值区间获取码值;
在数据库中存储所述码值;
根据所述码值进行所述数据的应用操作,所述应用操作包括等值比较、排列和模糊查询中的至少一种;
其中,所述在数据库中存储所述码值,包括:
将所述码值的比特数与所述数据的比特数的进行比较,以获取比较结果;
根据所述比较结果,在数据库中存储所述码值。
13.根据权利要求12所述的方法,其特征在于,所述数据为ID类字符串,所述应用操作包括等值比较,所述根据所述码值进行所述数据的应用操作,包括:
在所述码值与待比较的码值相等时,确定所述数据与所述待比较的码值对应的数据为相同数据。
14.根据权利要求12所述的方法,其特征在于,所述数据为ID类字符串或为字段的字母字符串,所述应用操作包括排列,所述根据所述码值进行所述数据的应用操作,包括:
根据所述码值的大小,确定所述码值在待排列码值中的位置,所述码值的位置用于表示所述数据在与所述待排列的码值对应的数据中的位置。
15.根据权利要求12所述的方法,其特征在于,所述应用操作包括模糊查询,所述根据所述码值进行所述数据的应用操作,包括:
根据所述码值是否在所需模糊查询的前缀字符串的编码区间中,确定所述数据是否包括所述前缀字符串,
其中,在所述码值在所需模糊查询的前缀字符串的编码区间中时,所述数据包括所述前缀字符串,
在所述码值不在所需模糊查询的前缀字符串的编码区间中时,所述数据不包括所述前缀字符串。
16.一种数据处理的设备,其特征在于,包括:
编码单元,用于采用算术编码算法对数据进行编码,得到码值区间;
获取单元,用于在所述码值区间内存在与所述数据对应的码值时,根据所述码值区间获取所述码值;
比较单元,用于将所述码值的比特数与所述数据的比特数的进行比较,以获取比较结果;
第一存储单元,用于根据所述比较结果在数据库中进行存储操作。
17.根据权利要求16所述的设备,其特征在于,所述比较结果为所述码值的比特数小于所述数据的比特数,
其中,所述第一存储单元根据所述比较结果,在数据库中存储所述码值。
18.根据权利要求16所述的设备,其特征在于,所述比较结果为所述码值的比特数大于或等于所述数据的比特数,
其中,所述第一存储单元根据所述比较结果,在数据库中存储所述数据。
19.根据权利要求17所述的设备,其特征在于,还包括:
应用单元,用于根据所述码值进行所述数据的应用操作,所述应用操作包括等值比较、排列和模糊查询中的至少一种。
20.根据权利要求19所述的设备,其特征在于,所述数据为ID类字符串,所述应用操作包括等值比较,所述应用单元在所述码值与待比较的码值相等时,确定所述数据与所述待比较的码值对应的数据为相同数据。
21.根据权利要求19所述的设备,其特征在于,所述数据为ID类字符串或为字段的字母字符串,所述应用操作包括排列,所述应用单元根据所述码值的大小,确定所述码值在待排列码值中的位置,所述码值的位置用于表示所述数据在与所述待排列的码值对应的数据中的位置。
22.根据权利要求19所述的设备,其特征在于,所述应用操作包括模糊查询,所述应用单元根据所述码值是否在所需模糊查询的前缀字符串的编码区间中确定所述数据是否包括所述前缀字符串,
其中,在所述码值在所需模糊查询的前缀字符串的编码区间中时,所述数据包括所述前缀字符串,
在所述码值不在所需模糊查询的前缀字符串的编码区间中时,所述数据不包括所述前缀字符串。
23.根据权利要求16至22中任一项所述的设备,其特征在于,所述编码单元采用算术编码算法对所述数据进行编码,得到编码区间;对所述数据的编码区间进行重扩展,得到重扩展后的编码区间;根据所述重扩展后的编码区间,采用算术编码算法继续对所述数据进行编码,得到码值区间。
24.根据权利要求23所述的设备,其特征在于,所述编码单元当满足以下条件中的至少一个时,对所述数据的编码区间进行重扩展,得到重扩展后的编码区间,并记录相应重扩展字符位置:
已完成编码的所述数据的字符个数达到字符个数阈值,和所述数据的编码区间的长度小于区间阈值。
25.根据权利要求16至22中任一项所述的设备,其特征在于,还包括:
确定单元,用于在所述获取单元获取所述码值之前,确定所述码值区间内是否存在与所述数据对应的合适的码值。
26.根据权利要求25所述的设备,其特征在于,还包括:
第二存储单元,用于在所述码值区间内不存在与所述数据对应的合适的码值时,存储所述数据。
27.一种数据处理的设备,其特征在于,包括:
编码单元,用于采用算术编码算法对数据进行编码,得到码值区间;
获取单元,用于根据所述码值区间获取码值;
存储单元,用于在数据库中存储所述码值;
应用单元,用于根据所述码值进行所述数据的应用操作,所述应用操作包括等值比较、排列和模糊查询中的至少一种;
其中,所述存储单元具体用于:
将所述码值的比特数与所述数据的比特数的进行比较,以获取比较结果;
根据所述比较结果,在数据库中存储所述码值。
28.根据权利要求27所述的设备,其特征在于,所述数据为ID类字符串,所述应用操作包括等值比较,所述应用单元在所述码值与待比较的码值相等时,确定所述数据与所述待比较的码值对应的数据为相同数据。
29.根据权利要求27所述的设备,其特征在于,所述数据为ID类字符串或为字段的字母字符串,所述应用操作包括排列,所述应用单元根据所述码值的大小,确定所述码值在待排列码值中的位置,所述码值的位置用于表示所述数据在与所述待排列的码值对应的数据中的位置。
30.根据权利要求27所述的设备,其特征在于,所述应用操作包括模糊查询,所述应用单元根据所述码值是否在所需模糊查询的前缀字符串的编码区间中,确定所述数据是否包括所述前缀字符串,
其中,在所述码值在所需模糊查询的前缀字符串的编码区间中时,所述数据包括所述前缀字符串,
在所述码值不在所需模糊查询的前缀字符串的编码区间中时,所述数据不包括所述前缀字符串。
CN201510059809.6A 2015-02-04 2015-02-04 一种数据处理的方法和设备 Active CN104579360B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201510059809.6A CN104579360B (zh) 2015-02-04 2015-02-04 一种数据处理的方法和设备
EP16746065.8A EP3244540A4 (en) 2015-02-04 2016-01-13 Data processing method and device
PCT/CN2016/070805 WO2016124070A1 (zh) 2015-02-04 2016-01-13 一种数据处理的方法和设备
US15/668,335 US9998145B2 (en) 2015-02-04 2017-08-03 Data processing method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510059809.6A CN104579360B (zh) 2015-02-04 2015-02-04 一种数据处理的方法和设备

Publications (2)

Publication Number Publication Date
CN104579360A CN104579360A (zh) 2015-04-29
CN104579360B true CN104579360B (zh) 2018-07-31

Family

ID=53094691

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510059809.6A Active CN104579360B (zh) 2015-02-04 2015-02-04 一种数据处理的方法和设备

Country Status (4)

Country Link
US (1) US9998145B2 (zh)
EP (1) EP3244540A4 (zh)
CN (1) CN104579360B (zh)
WO (1) WO2016124070A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104579360B (zh) * 2015-02-04 2018-07-31 华为技术有限公司 一种数据处理的方法和设备
CN106484753B (zh) * 2016-06-07 2020-01-03 湖南千年华光软件开发有限公司 数据处理方法
WO2018122238A1 (en) * 2016-12-30 2018-07-05 Robert Bosch Gmbh Method and system for fuzzy keyword search over encrypted data
CN112422491A (zh) * 2020-05-08 2021-02-26 上海幻电信息科技有限公司 数字编码的加密解密方法、服务器和存储介质
CN111968379B (zh) * 2020-08-10 2021-08-31 中化信息技术有限公司 用于录入车牌号的方法、装置、终端和计算机可读介质
CN112181869A (zh) * 2020-09-11 2021-01-05 ***股份有限公司 信息存储方法、装置、服务器及介质
CN112486976A (zh) * 2020-12-18 2021-03-12 咪咕文化科技有限公司 数据处理方法、装置、网络设备及存储介质
CN112565776B (zh) * 2021-02-25 2021-07-20 北京城建设计发展集团股份有限公司 一种视频转码压缩方法及***
CN116719476B (zh) * 2023-05-26 2024-01-02 广州市玄武无线科技股份有限公司 一种手机号的压缩存储方法、装置、电子设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0793349A2 (en) * 1996-02-29 1997-09-03 Gandalf Technologies Inc. Method and apparatus for performing data compression
CN1167951A (zh) * 1996-01-31 1997-12-17 株式会社日立制作所 数据压缩、扩展方法和装置以及使用该方法和装置的数据处理设备及网络***
CN101031086A (zh) * 2002-10-10 2007-09-05 索尼株式会社 视频信息编码方法和视频信息解码方法
CN102799590A (zh) * 2011-05-26 2012-11-28 安凯(广州)微电子技术有限公司 嵌入式电子产品字库、字库生成方法及字库查找方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3302210B2 (ja) * 1995-02-10 2002-07-15 富士通株式会社 データ符号化/復号化方法及び装置
US6100824A (en) * 1998-04-06 2000-08-08 National Dispatch Center, Inc. System and method for data compression
WO2007065352A1 (en) * 2005-12-05 2007-06-14 Huawei Technologies Co., Ltd. Method and apparatus for realizing arithmetic coding/ decoding
JP4555257B2 (ja) * 2006-06-06 2010-09-29 パナソニック株式会社 画像符号化装置
CN104579360B (zh) * 2015-02-04 2018-07-31 华为技术有限公司 一种数据处理的方法和设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1167951A (zh) * 1996-01-31 1997-12-17 株式会社日立制作所 数据压缩、扩展方法和装置以及使用该方法和装置的数据处理设备及网络***
EP0793349A2 (en) * 1996-02-29 1997-09-03 Gandalf Technologies Inc. Method and apparatus for performing data compression
CN101031086A (zh) * 2002-10-10 2007-09-05 索尼株式会社 视频信息编码方法和视频信息解码方法
CN102799590A (zh) * 2011-05-26 2012-11-28 安凯(广州)微电子技术有限公司 嵌入式电子产品字库、字库生成方法及字库查找方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
H.264中基于内容匹配的自适应二进制算术编码;石增硕;《中国优秀硕士学位论文全文数据库 信息科技辑》;20070615(第6期);第I136-347页 *
一种改进的通过查表实现的算术编解码方法;张文妮 等;《复旦学报(自然科学版)》;20060228;第45卷(第1期);第45-48页 *
基于自适应算术编码的字符型报文压缩技术;李玮 等;《科学技术与工程》;20130430;第13卷(第10期);第2836-2840页 *

Also Published As

Publication number Publication date
EP3244540A1 (en) 2017-11-15
EP3244540A4 (en) 2018-01-31
US9998145B2 (en) 2018-06-12
WO2016124070A1 (zh) 2016-08-11
CN104579360A (zh) 2015-04-29
US20170331492A1 (en) 2017-11-16

Similar Documents

Publication Publication Date Title
CN104579360B (zh) 一种数据处理的方法和设备
CN105684316B (zh) 一种Polar码编码方法、装置
CN108388598B (zh) 电子装置、数据存储方法及存储介质
US11178212B2 (en) Compressing and transmitting structured information
CN101350858B (zh) 一种短信解码的方法和用户终端
CN116506073B (zh) 一种工业计算机平台数据快速传输方法及***
US8838550B1 (en) Readable text-based compression of resource identifiers
JP5656593B2 (ja) 符号化データを復号する装置及び方法
CN104572994B (zh) 用于搜索数据的方法和装置
CN103647866A (zh) 一种电话号码压缩存储及解压缩方法及存储***
CN108108337A (zh) 简繁互转方法及装置
CN103051480B (zh) 一种dn的存储方法及dn存储装置
CN110266834B (zh) 基于互联网协议地址的地区查找方法及装置
CN109831544B (zh) 一种应用于电子邮箱地址的编码存储方法及***
CN112287638A (zh) 一种数字展示方法及装置
CN113742332A (zh) 数据存储方法、装置、设备及存储介质
CN114500670B (zh) 一种编码压缩方法、解码方法及装置
US8976048B2 (en) Efficient processing of Huffman encoded data
CN107832341B (zh) Agnss用户去重统计方法
CN106533450B (zh) Pms编码压缩方法和装置
CN112232025B (zh) 一种字符串存储方法、装置及电子设备
CN109660262A (zh) 一种应用于电子邮箱地址的字符编码方法及***
CN115001628B (zh) 数据编码的方法及装置、数据解码的方法及装置和数据结构
CN110287147B (zh) 一种字符串排序方法及装置
CN109558387A (zh) 身份证号的处理方法、装置、存储介质及终端

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant