CN111767280A - 数据处理方法、装置及存储介质 - Google Patents
数据处理方法、装置及存储介质 Download PDFInfo
- Publication number
- CN111767280A CN111767280A CN202010304076.9A CN202010304076A CN111767280A CN 111767280 A CN111767280 A CN 111767280A CN 202010304076 A CN202010304076 A CN 202010304076A CN 111767280 A CN111767280 A CN 111767280A
- Authority
- CN
- China
- Prior art keywords
- compression
- compression mode
- target
- character string
- data
- 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.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 25
- 238000007906 compression Methods 0.000 claims abstract description 523
- 230000006835 compression Effects 0.000 claims abstract description 521
- 230000000694 effects Effects 0.000 claims abstract description 61
- 238000012545 processing Methods 0.000 claims abstract description 57
- 238000000034 method Methods 0.000 claims description 58
- 230000006837 decompression Effects 0.000 description 10
- 238000004590 computer program Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 9
- 238000004458 analytical method Methods 0.000 description 6
- 238000013500 data storage Methods 0.000 description 6
- 238000007726 management method Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000013144 data compression Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion 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/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion 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/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/3084—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method
- H03M7/3086—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method employing a sliding window, e.g. LZ77
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion 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/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/40—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本申请实施例提供一种数据处理方法、装置及存储介质,通过获取存储请求,并基于存储请求中字符串数据的特征,从数据库的字段标识中,确定字符串数据对应的目标字段标识,接着从目标字段标识关联的至少一个压缩方式中确定目标压缩方式,并使用目标压缩方式压缩字符串数据。由于与目标字段关联的压缩方式相比于其他的压缩方式,可以实现对目标字段中数据的高效压缩,这样使得目标压缩方式压缩待处理的字符串数据时,可以大大提高字符串数据的压缩效果,降低字符串数据的长度。接着,将压缩后的字符串数据存储至数据库中目标字段标识对应的字段中,可以有效节省数据库中字符型数据的存储空间,增大数据库的信息存储量。
Description
技术领域
本申请实施例涉及计算机技术领域,尤其涉及一种数据处理方法、装置及存储介质。
背景技术
随着电子购物技术的快速发展,许多商品可以在电商平台上进行购买。在实际应用中,电商平台经常涉及分类的问题,例如将满足预设条件的店铺的身份证标识号(Identity Document,ID)添加至同一个名单中,ID号通常为字符串数据。
目前为了避免连表查询(即多次查询),通常采取的方式是将整个名单存储在数据库中的某一个字段里。这样在后续判断某店铺是否在该名单中时,对该字段存储的名单进行一次查询即可,可减少查询次数。
在实现本申请过程中,发明人发现现有技术中至少存在如下问题,数据库中字段的长度是有限的,当名单中存储的字符串数据量过多时,会造成名单在该字段中存储不下的问题。
发明内容
本申请实施例提供一种数据处理方法、装置及存储介质,用以解决字符串数据过长,数据库字段中存储不下的问题。
第一方面,本申请实施例提供一种数据处理方法,包括:
获取存储请求,存储请求包括待处理的字符串数据,存储请求用于请求将字符串数据存储至数据库中;
基于字符串数据的特征,从数据库的字段标识中,确定字符串数据对应的目标字段标识;
从目标字段标识关联的至少一个压缩方式中确定目标压缩方式;
将基于目标压缩方式压缩字符串数据得到的压缩数据,存储至数据库中目标字段标识对应的字段中。
本申请的实施例提供的技术方案可以包括以下有益效果:通过从目标字段标识关联的至少一个压缩方式中,选择一个目标压缩方式来压缩字符串数据,相比于随机选择压缩方式压缩字符串数据,使用目标压缩方式压缩字符串数据可以大大提高压缩效果,有效缩短字符串数据的长度。将压缩后的字符串存储在数据库对应字段中时,可以有效节省数据库中字符型数据的存储空间,增大信息存储量。
在第一方面的一种可能的实现方式中,从目标字段标识关联的至少一个压缩方式中确定目标压缩方式,包括:将至少一个压缩方式中,压缩字符串数据得到的压缩效果满足预设压缩要求所采用的压缩方式,确定为目标压缩方式。
在第一方面的一种可能的实现方式中,将至少一个压缩方式中,压缩字符串数据得到的压缩效果满足预设压缩要求所采用的压缩方式,确定为目标压缩方式,包括:从至少一个压缩方式中,选择一个压缩方式作为待选择压缩方式;使用待选择压缩方式,对字符串数据进行压缩,并获得待选择压缩方式对应的压缩效果;若待选择压缩方式对应的压缩效果满足预设要求,则将待选择压缩方式确定为目标压缩方式;若待选择压缩方式对应的压缩效果不满足预设要求,则从至少一个压缩方式中重新选择一个压缩方式作为待选择压缩方式。
本申请的实施例提供的技术方案可以包括以下有益效果:在选择目标压缩方式时,将压缩效果满足预设压缩要求的压缩方式确定为目标压缩方式,因此,使用该目标压缩方式对字符串数据进行压缩时,可以进一步缩短字符串数据的长度。
在第一方面的一种可能的实现方式中,若至少一个压缩方式中,每个压缩方式对应的压缩效果均不满足预设压缩要求,方法还包括:将至少一个压缩方式中压缩效果最接近预设压缩要求的压缩方式,确定为目标压缩方式。
在第一方面的一种可能的实现方式中,从至少一个压缩方式中,选择一个压缩方式作为待选择压缩方式,包括:根据至少一个压缩方式中各压缩方式的预设排列顺序,从至少一个压缩方式中,选择一个压缩方式作为待选择压缩方式。这样通过压缩方式的预设排列顺序来确定待选择压缩方式,可以降低轮询的次数,提高数据压缩处理速度。
可选的,至少一个压缩方式中各压缩方式的预设排列顺序为各压缩方式的历史使用频率的排列顺序。
在第一方面的一种可能的实现方式中,方法还包括读数据的过程,具体包括:获取字符串数据的读取请求,读取请求用于请求读取数据库中目标字段标识对应的字段中的字符串数据;根据读取请求,从数据库中目标字段标识对应的字段中,获得压缩数据;使用所述目标压缩方式,对压缩数据进行解压,获得解压后的字符串数据。即本申请实施例,可以根据用户或应用程序的读请求,从数据库中读取压缩后的字符数数据。由于该字符串数据是使用目标压缩方式进行压缩的,这样使用目标压缩方式对压缩后的字符串数据进行解压时,可以保证解压的准确性。
在第一方面的一种可能的实现方式中,压缩数据中包括:目标压缩方式的标识信息;本申请的方法还包括:从压缩数据中,获取目标压缩方式的标识信息;此时,上述使用目标压缩方式,对压缩数据进行解压,包括:根据获得的目标压缩方式的标识信息,使用目标压缩方式,对压缩数据进行解压。即本申请实施例,在压缩过程中,通过将目标压缩方式的标识信息添加至压缩数据中。
本申请的实施例提供的技术方案可以包括以下有益效果:在解压时,可以直接从压缩数据中获得目标压缩方式的标识信息,进而可以使用目标压缩方式对压缩数据进行解压,提高了解压的效率和准确性。
可选的,目标压缩方式的标识信息位于压缩数据中的尾部。
可选的,压缩效果包括压缩比率、压缩时长、压缩占用的处理资源中的至少一个。
可选的,至少一种压缩方式包括如下至少一种:哈夫曼编码压缩算法、LZW算法、LZ77算法、Deflate算法、Gzip算法。
可选的,读取请求包括目标字段标识。
第二方面,本申请实施例提供一种数据处理装置,包括:
获取模块,用于获取存储请求,存储请求包括待处理的字符串数据,存储请求用于请求将字符串数据存储至数据库中;
确定模块,用于基于字符串数据的特征,从数据库的字段标识中,确定字符串数据对应的目标字段标识;
处理模块,用于从目标字段标识关联的至少一个压缩方式中确定目标压缩方式;
存储模块,用于将基于目标压缩方式压缩字符串数据得到的压缩数据,存储至数据库中目标字段标识对应的字段中。
在第二方面的一种可能的实现方式中,处理模块,具体用于将至少一个压缩方式中,压缩字符串数据得到的压缩效果满足预设压缩要求所采用的压缩方式,确定为目标压缩方式。
在第二方面的一种可能的实现方式中,处理模块,具体用于从至少一个压缩方式中,选择一个压缩方式作为待选择压缩方式;使用待选择压缩方式,对字符串数据进行压缩,并获得待选择压缩方式对应的压缩效果;若待选择压缩方式对应的压缩效果满足预设要求,则将待选择压缩方式确定为目标压缩方式;若待选择压缩方式对应的压缩效果不满足预设要求,则从至少一个压缩方式中重新选择一个压缩方式作为待选择压缩方式。
在第二方面的一种可能的实现方式中,处理模块,还用于若至少一个压缩方式中,每个压缩方式对应的压缩效果均不满足预设压缩要求,将至少一个压缩方式中压缩效果最接近预设压缩要求的压缩方式,确定为目标压缩方式。
在第二方面的一种可能的实现方式中,处理模块,具体用于根据至少一个压缩方式中各压缩方式的预设排列顺序,从至少一个压缩方式中,选择一个压缩方式作为待选择压缩方式。
可选的,至少一个压缩方式中各压缩方式的预设排列顺序为各压缩方式的历史使用频率的排列顺序。
在第二方面的一种可能的实现方式中,
所述获取模块,还用于获取字符串数据的读取请求,读取请求用于请求读取数据库中目标字段标识对应的字段中的字符串数据;以及根据读取请求,从数据库中目标字段标识对应的字段中,获得压缩数据;
所述处理模块,还用于使用所述目标压缩方式,对压缩数据进行解压,获得解压后的字符串数据。
在第二方面的一种可能的实现方式中,压缩数据中包括:目标压缩方式的标识信息;
所述获取模块,还用于从压缩数据中,获取目标压缩方式的标识信息;
所述处理模块,具体用于根据获得的目标压缩方式的标识信息,使用目标压缩方式,对压缩数据进行解压。
可选的,目标压缩方式的标识信息位于压缩数据中的尾部。
可选的,压缩效果包括压缩比率、压缩时长、压缩占用的处理资源中的至少一个。
可选的,至少一种压缩方式包括如下至少一种:哈夫曼编码压缩算法、串表压缩LZW算法、LZ77算法、Deflate算法、Gzip算法。
可选的,读取请求包括目标字段标识。
第三方面,本申请实施例提供一种电子设备,包括处理器和存储器;
所述存储器,用于存储计算机程序;
所述处理器,用于执行所述计算机程序以实现上述第一方面任一项所述的数据处理方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,所述存储介质包括计算机指令,当所述指令被计算机执行时,使得所述计算机实现如第一方面任一项所述的数据处理方法。
第五方面,本申请实施例提供一种计算机程序产品,所述程序产品包括计算机程序,所述计算机程序存储在可读存储介质中,计算机的至少一个处理器可以从所述可读存储介质读取所述计算机程序,所述至少一个处理器执行所述计算机程序使得计算机实施第一方面任一所述的数据处理方法。
本申请实施例提供的数据处理方法、装置及存储介质,通过获取存储请求,并基于存储请求中字符串数据的特征,从数据库的字段标识中,确定字符串数据对应的目标字段标识,接着从目标字段标识关联的至少一个压缩方式中确定目标压缩方式,并使用目标压缩方式压缩字符串数据。由于与目标字段关联的压缩方式相比于其他的压缩方式,可以实现对目标字段中数据的高效压缩,这样使得目标压缩方式压缩待处理的字符串数据时,可以大大提高字符串数据的压缩效果,降低字符串数据的长度。接着,将压缩后的字符串数据存储至数据库中该目标字段标识对应的字段中,可以有效节省数据库中字符型数据的存储空间,增大数据库的信息存储量。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1A为本申请实施例涉及的一种应用场景图;
图1B为本申请实施例涉及的另一应用场景示意图;
图2为本申请实施例涉及的数据处理方法的一种流程示意图;
图3为本申请实施例涉及的数据处理方法的另一种流程示意图;
图4为本申请实施例涉及的确定目标压缩方式的一种流程示意图;
图5为本申请实施例涉及的数据处理方法的又一种流程示意图;
图6为本申请实施例涉及的数据处理方法的再一种流程示意图;
图7为本申请实施例涉及的应用系统的一种结构框架景示意图;
图8为本申请实施例提供的数据处理装置的一种结构示意图;
图9为本申请实施例涉及的电子设备的框图。
通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
首先对本申请实施例所涉及的名词进行解释:
字符(Character),指类字形单位或符号,包括字母、数字、运算符号、标点符号和其他符号,以及一些功能性符号。字符是电子计算机或无线电通信中字母、数字、符号的统称,其是数据结构中最小的数据存取单位,通常由8个二进制位(一个字节)来表示一个字符。字符是计算机中经常用到的二进制编码形式,也是计算机中最常用到的信息形式。
字符串(String),是由数字、字母、下划线组成的一串字符。一般记为s=“a1a2…an”(n>=0)。它是编程语言中表示文本的数据类型。在程序设计中,字符串(String)为符号或数值的一个连续序列,如符号串(一串字符)或二进制数字串(一串二进制数字)。
哈夫曼编码(Huffman)压缩算法,将要压缩的字符串,将每个字出现的频率作为依据,构造一颗哈夫曼树,频率越大的字越是靠近树的根结点,它的编码也就越短。也就是,频率高的字用短码,频率低的字用长码,根据这样的码表可以实现压缩字符串了。
串表压缩(Lempel-Ziv-Welch Encoding,LZW)算法,包括三个重要的对象:数据流(Char Stream)、编码流(Code Stream)和编译表(String Table)。在编码时,数据流是输入对象(文本文件的据序列),编码流就是输出对象(经过压缩运算的编码数据);在解码时,编码流则是输入对象,数据流是输出对象;而编译表是在编码和解码时都须要用借助的对象。LZW压缩算法的基本原理:提取原始文本文件数据中的不同字符,基于这些字符创建一个编译表,然后用编译表中的字符的索引来替代原始文本文件数据中的相应字符,减少原始数据大小。
LZ77(Lempel-Ziv 77)算法,是采用自适应的字典模型,也就i是将已经编码的信息作为字典,如果要编码的字符曾经出现过,输出该字符串的出现位置以及长度,否则输出新的字符串。它的核心思想是在前面已经出现过的数据中找重复出现的字符,根据局部性原理,如果一个字符串要重复,那么也在附近重复,远的地方就不要找了,因此设置一个滑动窗口,每次都在这个窗口里面找重复出现的字符。关于这个滑动窗口的大小,理论上是窗口越大,重复的可能性越高,压缩效率越高。但是窗口太大的话,查找的效率也会降低。在LZ77算法中设置滑动窗口的大小通常为32k。
Deflate(压缩)算法,是zip压缩文件的默认算法,Deflate压缩器在怎样压缩数据上有非常大的灵活性。压缩器有三种压缩模型:第一种是,不压缩数据,即对于已经压缩过的数据不再进行压缩。第二种是,先用LZ77算法然后用Huffman编码,在这个模型中压缩的树是Deflate规范规定定义的,所以不需要额外的空间来存储这个树。第三种是,先用LZ77算法,然后用Huffman编码,压缩树是由压缩器生成的,并与数据一起存储。
Gzip算法,对于要压缩的文件,首先使用LZ77算法的一个变种进行压缩,对得到的结果再使用Huffman编码的方法。实际上gzip根据情况,选择使用静态Huffman编码或者动态Huffman编码进行压缩。
数据库,是按照数据结构来组织、存储和管理数据的仓库,是一个长期存储在计算机内的、有组织的、可共享的、统一管理的大量数据的集合。
在数据库中,大多数时,表的“列”称为“字段”,每个字段包含某一专题的信息。就像“通讯录”数据库中,“姓名”、“联系电话”这些都是表中所有行共有的属性,所以把这些列称为“姓名”字段和“联系电话”字段。
常用数据库的字段类型包括:数值、日期/时间和字符串(字符)类型。
字符串类型包括:CHAR、VARCHAR、BINARY、VARBINARY、BLOB、TEXT、ENUM和SET。表1是各字符串类型的大小以及用途。
表1
图1A为本申请实施例涉及的一种应用场景图,包括:至少一个终端设备、网络和服务器,其中,终端设备可以通过网络1004与服务器1005进行通信。
终端设备:可以是无线终端设备也可以是有线终端设备,无线终端设备可以是指一种具有无线收发功能的设备,可以部署在陆地上,包括室内或室外、手持或车载;也可以部署在水面上(如轮船等);还可以部署在空中(例如飞机、气球和卫星上等)。如图1所示,终端设备可以是手机(mobile phone)1001、平板电脑(Pad)1002、电脑1003、以及虚拟现实(Virtual Reality,VR)终端设备、增强现实(Augmented Reality,AR)终端设备、工业控制(industrial control)中的无线终端设备、无人驾驶(self driving)中的无线终端设备、远程医疗(remote medical)中的无线终端设备、智能电网(smart grid)中的无线终端设备、运输安全(transportation safety)中的无线终端设备、智慧城市(smart city)中的无线终端设备、智慧家庭(smart home)中的无线终端设备等等,在此不作限定。
服务器包括数据库,用户可以通过终端设备访问服务器上的数据库。
图1B为本申请实施例涉及的另一应用场景示意图。如图1B所示,包括用户、应用程序和应用系统。
其中,应用系统可以由外至内分为四层:应用层、语言翻译处理层、数据存取层和数据存储层。
(1)应用层:是数据库管理系统与终端用户和应用程序的界面,负责处理各种数据库应用,如使用结构化查询语言(Structured Query Language,SQL)发出的事务请求或嵌入通用的程序设计语言的应用程序对数据库的请求。
(2)语言处理层:由数据库模式定义语言(Data Definition Language,DDL)编译器、数据操纵语言(DataManipulationLanguage,DML)编译器、数据控制语言(DataControlLanguage,DCL)编译器、查询器等组成,负责完成对数据库语言的各类语句进行词法分析、语法分析和语义分析,生成可执行的代码。此外,还负责进行授权检验、视图转换、完整性检查、查询优化等。
(3)数据存取层:将上层的集合操作转换为对记录的操作,包括扫描、排序、查找、插入、删除、修改等,完成数据的存取、路径的维护以及并发控制等任务。
(4)数据存储层:由文件管理器和缓冲区管理器组成,负责完成数据的页面存储和系统的缓冲区管理等任务,包括打开和关闭文件、读写页面、读写缓冲区、页面淘汰、内外存交换以及外层管理等。其中,数据存储层包括数据库。
用户或应用程序可以通过应用系统中的应用层对数据存储层中的数据库进行读写访问。例如,用户或应用程序向应用层发送读/写请求,应用层将该读/写请求发送给语言处理层。语言处理层对该读/写请求进行词法分析、语法分析和语义分析,生成可执行的代码,发送给数据存取层。数据存取层根据解析后的读/写请求对应的代码,从数据存储层中的数据库中读数据,或者向该数据库中写入数据。
上述应用系统可以是服务器上的应用系统,用户可以通过终端设备访问服务器上的应用系统,进而实现对服务器上的数据库的访问。
本申请实施例提供的技术方案,适用于字符串数据的存储领域。
在电商领域中经常涉及名单的设计,比如针对某个商品,需要设置哪些店铺不可以销售,这时候就要把这些店铺的ID号加入到黑名单里。为了避免连表查询,即多次查询,则将该黑名单保存在数据库的一个字段里。当加入黑名单的ID号数量很多时,黑名单的长度就会很长。当黑名单很长的时候,会导致这个字段很长,严重影响了整个表的性能。基于性能考虑,目前使用VARCHAR类型的数据库字段来存储黑名单。但是,如上表1可知,VARCHAR类型的数据库字段,最大长度为65535字节,在使用UTF-8字符集的情况下,最大可以支持21845个字符,而当黑名单的长度很长时,VARCHAR类型的数据库字段长度也是不够用的。
本申请实施例提供的数据处理方法,通过从目标字段标识关联的至少一个压缩方式中确定一个目标压缩方式,并使用该目标压缩方式对待处理的字符串数据进行有效压缩,减少字符串数据的长度,再将压缩后的字符串数据存储在数据库目标字段标识对应的字段中,可以有效节省数据库中字符型数据的存储空间,增大数据库的信息存储量。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
图2为本申请实施例涉及的数据处理方法的一种流程示意图。如图2所示,本申请实施例的方法包括:
S10、获取存储请求。
其中,上述存储请求包括待处理的字符串数据,该存储请求用于请求将待处理的字符串数据存储至数据库中。
本申请实施例的执行主体为具有数据处理功能的装置,例如数据处理装置,该数据处理装置可以为单独的电子设备,也可以为电子设备中的一部分,例如为电子设备中的处理器。
可选的,上述电子设备为图1A所示的服务器。
本申请实施例以执行主体为处理器为例进行说明。
当用户或应用程序有待处理的字符串数据需要存储时,则用户或应用程序发送存储请求。具体的,参照图1A和图1B所示,用户通过终端设备向服务器发送存储请求,服务器上的应用系统中的应用层接收到用户发送的存储请求,这样处理器可以从该应用层获得存储请求,该存储请求中携带待处理的字符串数据,该存储请求用于请求将这些字符串数据存储至数据库中。
S11、基于字符串数据的特征,从数据库的字段标识中,确定字符串数据对应的目标字段标识。
数据库可以包括多个字段,每个字段可以对应一个字段标识,不同的字段用于存储不同的数据,例如姓名字段用于存储姓名信息。
这样可以根据字符串数据的特征,从数据库的字段标识中,确定出字符串数据对应的目标字段标识。例如,字符串数据为日期,具体为:2020年1月1日,该字符串数据具有日期特征,即年月日,进而可以确定该字符串数据对应的目标字段标识为日期。
S12、从目标字段标识关联的至少一个压缩方式中确定目标压缩方式。
在一些实施例中,数据库的各字段可以关联至少一个压缩方式,例如日期字段可以关联一个或多个压缩方式。
这样可以根据上述确定的目标字段标识,获得该目标字段标识关联的至少一个压缩方式。
需要说明的是,数据库中不同字段关联的压缩方式可以相同也可以不同,本申请实施例对此不做限制。
可选的,上述至少一种压缩方式包括但不限于:哈夫曼编码压缩算法、LZW算法、LZ77算法、Deflate算法、Gzip算法。
S13、将基于目标压缩方式压缩字符串数据得到的压缩数据,存储至数据库中目标字段标识对应的字段中。
具体的,根据上述步骤从目标字段标识关联的至少一个压缩方式中,确定一个压缩方式作为目标压缩方式。接着,使用该目标压缩方式对待处理的字符串数据进行压缩,获得该字符串数据的压缩数据。接着,将该压缩数据存储至数据库该目标字段标识对应的字段中,例如将压缩数据存储至数据库VARCHAR类型字段中。
该目标字段标识关联的压缩方式,是众多压缩方式中可以实现对存储在该目标字段中的字符串数据进行高效压缩的压缩方式,这相比于使用随机的压缩方式对字符串数据进行压缩,可以有效提高字符串数据的压缩比率。
本申请实施例提供的数据处理方法,通过获取存储请求,并基于存储请求中字符串数据的特征,从数据库的字段标识中,确定字符串数据对应的目标字段标识,接着从目标字段标识关联的至少一个压缩方式中确定目标压缩方式,并使用目标压缩方式压缩字符串数据。由于与目标字段关联的压缩方式相比于其他的压缩方式,可以实现对目标字段中数据的高效压缩,这样使得目标压缩方式压缩待处理的字符串数据时,可以大大提高字符串数据的压缩效果,降低字符串数据的长度。接着,将压缩后的字符串数据存储至数据库中该目标字段标识对应的字段中,可以有效节省数据库中字符型数据的存储空间,增大数据库的信息存储量。
在上述实施例的基础上,下面对上述S12中从目标字段标识关联的至少一个压缩方式中确定目标压缩方式的过程进行详细描述。
在一些实施例中,上述S12可以包括S121。
S121、将至少一个压缩方式中,压缩字符串数据得到的压缩效果满足预设压缩要求所采用的压缩方式,确定为目标压缩方式。
可选的,上述压缩效果包括压缩比率、压缩时长、压缩占用的处理资源中的至少一个。
示例性的,上述压缩效果为压缩比率、压缩时长、压缩占用的处理资源中的任意一种。
例如,压缩效果为压缩比率,预设压缩要求为预设压缩比率。使用至少一个压缩方式中的一个压缩方式对待处理的字符串数据进行压缩,获得压缩后的压缩数据,将该压缩数据的数据量与字符串数据的数据量相比,获得压缩比率。将该压缩比率与预设压缩比率进行比较,判断该压缩比率是否小于或等于预设压缩比率,若该压缩比率小于或等于预设压缩比率,则将该压缩方式确定为目标压缩方式。若该压缩比率大于预设压缩比率,则从至少一个压缩方式中再选择一个压缩方式对字符串数据进行压缩。
例如,压缩效果为压缩占用的处理资源,压缩占用的处理资源可以为中央处理器(Central Processing Unit,CPU)使用率,预设压缩要求为预设CPU使用率。使用至少一个压缩方式中的一个压缩方式对待处理的字符串数据进行压缩,获得压缩该字符串数据时CPU使用率。将该CPU使用率与预设CPU使用率进行比较,判断该CPU使用率是否小于或等于预设CPU使用率,若该CPU使用率小于或等于预设CPU使用率,则将该压缩方式确定为目标压缩方式。若该CPU使用率大于预设CPU使用率,则从至少一个压缩方式中再选择一个压缩方式对字符串数据进行压缩。
例如,压缩效果为压缩时长,预设压缩要求为预设压缩时长。使用至少一个压缩方式中的一个压缩方式对待处理的字符串数据进行压缩,获得压缩该字符串数据的压缩时长。将该压缩时长与预设压缩时长进行比较,判断该压缩时长是否小于或等于预设压缩时长,若该压缩时长小于或等于预设压缩时长,则将该压缩方式确定为目标压缩方式。若该压缩时长大于预设压缩时长,则从至少一个压缩方式中再选择一个压缩方式对字符串数据进行压缩。
示例性的,上述压缩效果还可以是压缩比率、压缩时长、压缩占用的处理资源中的任意两种组合,例如压缩效果为压缩比率和压缩时长,预设压缩要求为预设压缩比率和预设压缩时长,这样上述步骤S121可以是将至少一个压缩方式中,压缩比率满足预设压缩比率、且压缩时长满足预设压缩时长的压缩方式,作为目标压缩方式。
示例性的,上述压缩效果还可以是压缩比率、压缩时长和压缩占用的处理资源,这样上述步骤S121可以是将至少一个压缩方式中,压缩比率满足预设压缩比率、压缩时长满足预设压缩时长、且压缩占用的处理资源满足预设压缩占用的处理资源的压缩方式,作为目标压缩方式。
在一些实施例中,如图3所示,上述S121可以包括:
S1211、从至少一个压缩方式中,选择一个压缩方式作为待选择压缩方式。
可选的,从目标字段标识关联的至少一个压缩方式中,随机选择一个压缩方式作为待选择压缩方式。
可选的,目标字段标识关联的至少一个压缩方式按照预设排列顺序排序,这样,可以根据至少一个压缩方式中各压缩方式的预设排列顺序,从至少一个压缩方式中,选择一个压缩方式作为待选择压缩方式。例如,按照预设排列顺序,选择第一个压缩方式作为待选择压缩方式,或者,按照预设排列顺序,选择最后一个压缩方式作为待选择压缩方式,这样可以快速从至少一个压缩方式中确定出满足预设要求的目标压缩方式。
可选的,上述至少一个压缩方式中各压缩方式的预设排列顺序可以为各压缩方式的历史使用频率的排列顺序,即根据压缩方式的历史使用频率,对至少一个压缩方式中的各压缩方式进行排序。在排序时,可以根据历史使用频率,从高到低对各压缩方式进行顺序排序,也从低到高对各压缩方式进行倒序排序。
S1212、使用待选择压缩方式,对字符串数据进行压缩,并获得待选择压缩方式对应的压缩效果。
S1213、若待选择压缩方式对应的压缩效果满足预设要求,则将待选择压缩方式确定为目标压缩方式。
S1214、若待选择压缩方式对应的压缩效果不满足预设要求,则从至少一个压缩方式中重新选择一个压缩方式作为待选择压缩方式,返回执行S1212。
上述S1211至S1214通过轮询的方式,从至少一个压缩方式中选出一个满足预设要求的压缩方式作为目标压缩方式,进而保证使用该目标压缩方式可以对字符串数据进行高效压缩,从而提高了字符串数据的压缩效果和压缩可靠性,避免使用压缩效果差的压缩方式对字符串数据进行压缩时,造成压缩后的数据量大,无法存储在数据库目标字段标识对应的字段中的问题。
在一些实施例中,若上述至少一个压缩方式中,每个压缩方式对应的压缩效果均不满足预设压缩要求,则本申请实施例的方法还包括:将至少一个压缩方式中压缩效果最接近预设压缩要求的压缩方式,确定为目标压缩方式。
在一些实施例中,当目标字段标识关联的压缩方式数量较多时,为了快速确定出目标压缩方式,则本申请实施例,对轮询的次数进行了限制,例如目标字段标识关联的压缩方式数量为n个,n为大于等于2的正整数,轮询的次数为i,i为小于n的正整数。如图4所示,本申请实施例涉及的确定目标压缩方式的过程可以包括:
S20、从至少一个压缩方式中,选择一个压缩方式作为待选择压缩方式。
S21、使用待选择压缩方式,对字符串数据进行压缩,并获得待选择压缩方式对应的压缩效果。
S22、判断待选择压缩方式对应的压缩效果是否满足预设要求,若是执行S23,若否,轮询次数+1,则执行S24。
S23、将待选择压缩方式确定为目标压缩方式。
S24、判断轮询次数是否大于i,若否则执行S25,若是,则执行S26。
S25、则从至少一个压缩方式中重新选择一个压缩方式作为待选择压缩方式,返回执行S21。
S26、将上述i个待选择压缩方式中压缩效果最接近预设压缩要求的待选择压缩方式,确定为目标压缩方式。
具体的,假设上述n为10,i为2,这样,从目标字段标识关联的10个压缩方式中,选择一个压缩方式作为待选择压缩方式对字符串数据进行压缩,并获得压缩效果。将该压缩效果与预设要求进行比较,若该压缩效果满足预设要求,则将该待选择压缩方式确定为目标压缩方式。若上述压缩效果不满足预设压缩要求,轮询次数+1,判断轮询次数是否小于2。若轮询次数小于2,则从n个压缩方式剩余的压缩方式中重新选择一个压缩方式作为待选择压缩方式。需要说明的是,本次选择的压缩方式与上次选择的压缩方式不同。使用本次的待选择压缩方式压缩字符串数据,并判断压缩效果是否满足预设压缩要求,若是,则将该待选择压缩方式作为目标压缩方式。若否,轮询次数再+1,此时轮询次数2,则判断轮询次数等于i=2,则从上述两个待选择压缩方式中,选择一个压缩效果最接近预设压缩要求的待选择压缩方式,作为目标压缩方式。
需要说明的是,上述i可以通过配置文件进行设置和调整。
本申请实施例,通过上述轮询的方式,从目标字段标识关联的至少一个压缩方式中确定目标压缩方式,过程简单,便于实现。
上述实施例对字符串数据的写过程进行了详细的介绍。在上述实施例的基础上,下面结合图5对本申请实施例涉及的字符串数据的读过程进行详细介绍。
图5为本申请实施例涉及的数据处理过程的又一流程示意图。如图5所示,本申请实施例的字符串数据的读过程可以包括:
S30、获取字符串数据的读取请求。
上述读取请求用于请求从数据库目标字段标识对应的字段中去读字符串数据。
可选的,上述读取请求包括目标字段标识,这样处理器可以根据目标字段标识,从数据库中读取该目标字段标识对应的字段中的字符串数据。
S31、根据读取请求,从数据库中目标字段标识对应的字段中,获得压缩数据。
S32、使用所述目标压缩方式,对所述压缩数据进行解压,获得解压后的所述字符串数据。
处理器从数据库中获得的压缩数据为字符串数据压缩后的数据,因此需要对压缩数据进行解压。
具体的,使用目标压缩方式,对压缩数据进行解压。由于本申请实施例中,压缩数据是使用目标压缩方式对字符串数据进行压缩获得的,这样使用目标压缩方式对压缩数据进行解压时,可以实现对压缩数据的有效解压。
本申请实施例提供的数据处理方法,通过获取字符串数据的读取请求,该读取请求用于请求读取数据库中目标字段标识对应的字段中的字符串数据;根据该读取请求,从数据库中目标字段标识对应的字段中,获得压缩数据;并对压缩数据进行解压,获得解压后的字符串数据,实现从数据库中读取字符串数据。
在上述实施例的基础上,图6为本申请实施例涉及的数据处理方法的再一种流程示意图。本申请实施例对字符串数据的写过程和读过程结合在一起进行描述。如图6所示,包括:
S40、获取存储请求。
上述存储请求包括待处理的字符串数据,该存储请求用于请求将字符串数据存储至数据库中。
S41、基于字符串数据的特征,从数据库的字段标识中,确定字符串数据对应的目标字段标识。
S42、从目标字段标识关联的至少一个压缩方式中确定目标压缩方式。
上述S40至S42的具体实现过程可以参照上述S10至S12的描述,在此不再赘述。
S43、基于目标压缩方式压缩字符串数据得到压缩数据,并将目标压缩方式的标识信息,添加至压缩数据中。
S44、将压缩数据存储至数据库中目标字段标识对应的字段中。
本申请实施例,压缩数据中还包括有目标压缩方式的标识信息,这样,在后续解压过程中,可以从该压缩数据中获得目标压缩方式的标识信息,进而实现目标压缩方式对压缩数据进行解压。
可选的,目标压缩方式的标识信息可以位于压缩数据中的尾部或头部。将目标压缩方式的标识信息携带在压缩数据的尾部或头部,可以在不对压缩数据解压的情况下,从压缩数据的尾部直接获得目标压缩方式的标识。
S45、获取字符串数据的读取请求。
上述读取请求用于请求读取数据库中目标字段标识对应的字段中的字符串数据。
可选的,上述读取请求包括目标字段标识。
S46、根据读取请求,从数据库中目标字段标识对应的字段中,获得压缩数据。
上述S45至S46的具体执行过程可以参照上述S30至S31的描述,在此不再赘述。
S47、从压缩数据中,获取目标压缩方式的标识信息。
该压缩数据中包括有目标压缩方式的标识信息,这样可以从压缩数据中获取目标压缩方式的标识信息,例如从压缩数据的尾部,获得目标压缩方式的标识信息。
S48、根据获得的目标压缩方式的标识信息,使用目标压缩方式,对压缩数据进行解压。
接着,使用目标压缩方式的标识信息,查询目标压缩方式,并使用目标压缩方式对压缩数据进行解压,获得解压后的字符串数据。
在上述实施例的基础上,下面结合具体的应用场景,以运行在处理器上的应用系统为执行主体,对本申请实施例提供的数据处理过程进行介绍。
如图7所示,应用系统的数据存取层提供两个接口供应用系统调用,一个是压缩接口,另一个是解压接口。应用系统通常会在需要处理的字段的setter和getter方法里面分别调用压缩接口和解压接口。在数据写过程中,应用系统调用压缩接口,根据上述S40至S44的步骤,使用目标压缩方式压缩字符串数据,并将压缩后的字符串数据存储在数据库目标字段标识对应的字段中。在数据读取过程中,应用系统调用解压接口,根据上述S45至S48的步骤,使用目标压缩方式对压缩数据进行解压,获得解压后的字符串数据。
本申请实施例,通过在字符串数据的压缩过程中,将目标压缩方式的标识信息添加在压缩数据中,例如添加在压缩数据的尾部,在字符串数据的解压过程中,从压缩数据中获得目标压缩方式的标识信息,并使用该目标压缩方式的标识信息对应的目标压缩方式,对压缩数据进行解压,提高了压缩数据的解压速度和解压准确性。
图8为本申请实施例提供的数据处理装置的一种结构示意图。该数据处理装置可以是电子设备,也可以是电子设备的部件(例如,集成电路,芯片等等),该电子设备可以为图1A所示的服务器。如图8所示,该数据处理装置100可以包括:获取模块110、确定模块120、处理模块130和存储模块140。
获取模块110,用于获取存储请求,所述存储请求包括字段标识和待处理的字符串数据,所述存储请求用于请求将所述字符串数据存储至数据库中所述字段标识对应的字段中;
确定模块120,用于基于所述字符串数据的特征,从所述数据库的字段标识中,确定所述字符串数据对应的目标字段标识;
处理模块130,用于从所述目标字段标识关联的至少一个压缩方式中确定目标压缩方式;
存储模块140,用于将基于所述目标压缩方式压缩所述字符串数据得到的压缩数据,存储至所述数据库中所述目标字段标识对应的字段中。
本申请实施例的数据处理装置,可以用于执行上述各方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在一种可能的实现方式中,上述处理模块130,具体用于将所述至少一个压缩方式中,压缩所述字符串数据得到的压缩效果满足预设压缩要求所采用的压缩方式,确定为所述目标压缩方式。
在一种可能的实现方式中,上述处理模块130,具体用于从所述至少一个压缩方式中,选择一个压缩方式作为待选择压缩方式;使用所述待选择压缩方式,对所述字符串数据进行压缩,并获得所述待选择压缩方式对应的压缩效果;若所述待选择压缩方式对应的压缩效果满足预设要求,则将所述待选择压缩方式确定为所述目标压缩方式;若所述待选择压缩方式对应的压缩效果不满足预设要求,则从所述至少一个压缩方式中重新选择一个压缩方式作为所述待选择压缩方式。
在一种可能的实现方式中,上述处理模块130,还用于若所述至少一个压缩方式中,每个压缩方式对应的压缩效果均不满足所述预设压缩要求,将所述至少一个压缩方式中压缩效果最接近所述预设压缩要求的压缩方式,确定为所述目标压缩方式。
在一种可能的实现方式中,上述处理模块130,具体用于根据所述至少一个压缩方式中各压缩方式的预设排列顺序,从所述至少一个压缩方式中,选择一个压缩方式作为待选择压缩方式。
可选的,所述至少一个压缩方式中各压缩方式的预设排列顺序为各所述压缩方式的历史使用频率的排列顺序。
在一种可能的实现方式中,上述获取模块110,还用于获取所述字符串数据的读取请求,所述读取请求用于请求读取所述数据库中目标字段标识对应的字段中的所述字符串数据;以及根据所述读取请求,从所述数据库中所述目标字段标识对应的字段中,获得所述压缩数据;
上述处理模块130,还用于使用所述目标压缩方式,对所述压缩数据进行解压,获得解压后的所述字符串数据。
在一种可能的实现方式中,上述目标压缩方式的标识信息;
上述获取模块110,还用于从所述压缩数据中,获取所述目标压缩方式的标识信息;
上述处理模块130,具体用于根据获得的所述目标压缩方式的标识信息,使用所述目标压缩方式,对所述压缩数据进行解压。
可选的,上述目标压缩方式的标识信息位于所述压缩数据中的尾部。
可选的,上述压缩效果包括压缩比率、压缩时长、压缩占用的处理资源中的至少一个。
可选的,上述至少一种压缩方式包括如下至少一种:哈夫曼编码压缩算法、LZW算法、LZ77算法、Deflate算法、Gzip算法。
可选的,上述读取请求包括所述目标字段标识。
本申请实施例的数据处理装置,可以用于执行上述各方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图9为本申请实施例涉及的电子设备的框图,该设备可以是图1A所示的服务器,用于执行上述实施例所述的数据处理方法,具体参见上述方法实施例中的说明。
参照图9,电子设备1900包括处理组件1922,其进一步包括一个或多个处理器,以及由存储器1932所代表的存储器资源,用于存储可由处理组件1922的执行的指令,例如应用程序。存储器1932中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1922被配置为执行指令,以执行上述数据处理方法实施例。
电子设备1900还可以包括一个电源组件1926被配置为执行电子设备1900的电源管理,一个有线或无线网络接口1950被配置为将电子设备1900连接到网络,和一个输入输出(I/O)接口1958。电子设备1900可以操作基于存储在存储器1932的操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器1932,上述指令可由电子设备1900的处理组件1922执行以完成上述数据处理方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本发明旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求书指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求书来限制。
Claims (10)
1.一种数据处理方法,其特征在于,包括:
获取存储请求,所述存储请求包括待处理的字符串数据,所述存储请求用于请求将所述字符串数据存储至数据库中;
基于所述字符串数据的特征,从所述数据库的字段标识中,确定所述字符串数据对应的目标字段标识;
从所述目标字段标识关联的至少一个压缩方式中确定目标压缩方式;
将基于所述目标压缩方式压缩所述字符串数据得到的压缩数据,存储至所述数据库中所述目标字段标识对应的字段中。
2.根据权利要求1所述的方法,其特征在于,从所述目标字段标识关联的至少一个压缩方式中确定目标压缩方式,包括:
将所述至少一个压缩方式中,压缩所述字符串数据得到的压缩效果满足预设压缩要求所采用的压缩方式,确定为所述目标压缩方式。
3.根据权利要求2所述的方法,其特征在于,将所述至少一个压缩方式中,压缩所述字符串数据得到的压缩效果满足预设压缩要求所采用的压缩方式,确定为所述目标压缩方式,包括:
从所述至少一个压缩方式中,选择一个压缩方式作为待选择压缩方式;
使用所述待选择压缩方式,对所述字符串数据进行压缩,并获得所述待选择压缩方式对应的压缩效果;
若所述待选择压缩方式对应的压缩效果满足预设要求,则将所述待选择压缩方式确定为所述目标压缩方式;若所述待选择压缩方式对应的压缩效果不满足预设要求,则从所述至少一个压缩方式中重新选择一个压缩方式作为所述待选择压缩方式。
4.根据权利要求3所述的方法,其特征在于,若所述至少一个压缩方式中,每个压缩方式对应的压缩效果均不满足所述预设压缩要求,所述方法还包括:
将所述至少一个压缩方式中压缩效果最接近所述预设压缩要求的压缩方式,确定为所述目标压缩方式。
5.根据权利要求3所述的方法,其特征在于,所述从所述至少一个压缩方式中,选择一个压缩方式作为待选择压缩方式,包括:
根据所述至少一个压缩方式中各压缩方式的预设排列顺序,从所述至少一个压缩方式中,选择一个压缩方式作为待选择压缩方式。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述方法还包括:
获取所述字符串数据的读取请求,所述读取请求用于请求读取所述数据库中目标字段标识对应的字段中的所述字符串数据;
根据所述读取请求,从所述数据库中所述目标字段标识对应的字段中,获得所述压缩数据;
使用所述目标压缩方式,对所述压缩数据进行解压,获得解压后的所述字符串数据。
7.根据权利要求6所述的方法,其特征在于,所述压缩数据中包括:所述目标压缩方式的标识信息;
所述方法还包括:
从所述压缩数据中,获取所述目标压缩方式的标识信息;
所述使用所述目标压缩方式,对所述压缩数据进行解压,包括:
根据获得的所述目标压缩方式的标识信息,使用所述目标压缩方式,对所述压缩数据进行解压。
8.一种数据处理装置,其特征在于,包括:
获取模块,用于获取存储请求,所述存储请求包括待处理的字符串数据,所述存储请求用于请求将所述字符串数据存储至数据库中;
确定模块,用于基于所述字符串数据的特征,从所述数据库的字段标识中,确定所述字符串数据对应的目标字段标识;
处理模块,用于从所述目标字段标识关联的至少一个压缩方式中确定目标压缩方式;
存储模块,用于将基于所述目标压缩方式压缩所述字符串数据得到的压缩数据,存储至所述数据库中所述目标字段标识对应的字段中。
9.一种电子设备,其特征在于,包括:存储器,处理器;
存储器;用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为:执行所述指令,以实现上述权利要求1至7任一项所述的数据处理方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1至7任一项所述的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010304076.9A CN111767280A (zh) | 2020-04-17 | 2020-04-17 | 数据处理方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010304076.9A CN111767280A (zh) | 2020-04-17 | 2020-04-17 | 数据处理方法、装置及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111767280A true CN111767280A (zh) | 2020-10-13 |
Family
ID=72720890
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010304076.9A Pending CN111767280A (zh) | 2020-04-17 | 2020-04-17 | 数据处理方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111767280A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112449200A (zh) * | 2020-11-12 | 2021-03-05 | 北京环境特性研究所 | 一种基于小波变换的图像压缩方法和装置 |
CN113297155A (zh) * | 2021-05-21 | 2021-08-24 | 曙光信息产业(北京)有限公司 | 数据存储方法、装置及可读存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2443564A2 (en) * | 2009-06-19 | 2012-04-25 | Sybase, Inc. | Data compression for reducing storage requirements in a database system |
CN103326732A (zh) * | 2013-05-10 | 2013-09-25 | 华为技术有限公司 | 压缩数据的方法、解压数据的方法、编码器和解码器 |
CN106713394A (zh) * | 2015-11-16 | 2017-05-24 | 华为技术有限公司 | 一种数据传输方法和装置 |
CN108268658A (zh) * | 2018-02-06 | 2018-07-10 | 政采云有限公司 | 基于MySQL数据库的大文本字段存储方法和系统 |
CN108322220A (zh) * | 2018-02-08 | 2018-07-24 | 华为技术有限公司 | 编解码方法、装置及编解码设备 |
CN108390854A (zh) * | 2018-01-10 | 2018-08-10 | 北京思特奇信息技术股份有限公司 | 一种dcc消息传输方法和系统 |
CN110888862A (zh) * | 2019-11-26 | 2020-03-17 | 深圳市随手金服信息科技有限公司 | 数据存储、查询方法、装置、服务器和存储介质 |
CN111008230A (zh) * | 2019-11-22 | 2020-04-14 | 远景智能国际私人投资有限公司 | 数据存储方法、装置、计算机设备及存储介质 |
-
2020
- 2020-04-17 CN CN202010304076.9A patent/CN111767280A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2443564A2 (en) * | 2009-06-19 | 2012-04-25 | Sybase, Inc. | Data compression for reducing storage requirements in a database system |
CN103326732A (zh) * | 2013-05-10 | 2013-09-25 | 华为技术有限公司 | 压缩数据的方法、解压数据的方法、编码器和解码器 |
CN106713394A (zh) * | 2015-11-16 | 2017-05-24 | 华为技术有限公司 | 一种数据传输方法和装置 |
CN108390854A (zh) * | 2018-01-10 | 2018-08-10 | 北京思特奇信息技术股份有限公司 | 一种dcc消息传输方法和系统 |
CN108268658A (zh) * | 2018-02-06 | 2018-07-10 | 政采云有限公司 | 基于MySQL数据库的大文本字段存储方法和系统 |
CN108322220A (zh) * | 2018-02-08 | 2018-07-24 | 华为技术有限公司 | 编解码方法、装置及编解码设备 |
CN111008230A (zh) * | 2019-11-22 | 2020-04-14 | 远景智能国际私人投资有限公司 | 数据存储方法、装置、计算机设备及存储介质 |
CN110888862A (zh) * | 2019-11-26 | 2020-03-17 | 深圳市随手金服信息科技有限公司 | 数据存储、查询方法、装置、服务器和存储介质 |
Non-Patent Citations (1)
Title |
---|
余兴阁;: "无损数据压缩与解压算法的介绍与实现", 信息与电脑(理论版), no. 01, 8 January 2016 (2016-01-08) * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112449200A (zh) * | 2020-11-12 | 2021-03-05 | 北京环境特性研究所 | 一种基于小波变换的图像压缩方法和装置 |
CN113297155A (zh) * | 2021-05-21 | 2021-08-24 | 曙光信息产业(北京)有限公司 | 数据存储方法、装置及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110399104B (zh) | 数据存储方法、数据存储装置、电子设备、存储介质 | |
US9298775B2 (en) | Changing the compression level of query plans | |
US20130141259A1 (en) | Method and system for data compression | |
CN104283567A (zh) | 一种名称数据的压缩、解压缩方法及设备 | |
US11514003B2 (en) | Data compression based on key-value store | |
US20230078918A1 (en) | Devices and methods for efficient execution of rules using pre-compiled directed acyclic graphs | |
CN112003625A (zh) | 一种霍夫曼编码方法、系统及设备 | |
US9882582B2 (en) | Non-transitory computer-readable recording medium, encoding method, encoding device, decoding method, and decoding device | |
CN107729406B (zh) | 一种数据分类存储方法及装置 | |
CN111767280A (zh) | 数据处理方法、装置及存储介质 | |
CN111249736A (zh) | 代码处理方法及装置 | |
CN114764557A (zh) | 一种数据处理方法、装置、电子设备及存储介质 | |
CN111611250A (zh) | 数据存储设备、数据查询方法、装置、服务器及存储介质 | |
CN115483935A (zh) | 一种数据处理方法及装置 | |
CN115189696A (zh) | 一种基于Huffman解码表的硬件压缩解压方法 | |
CN109302449B (zh) | 数据写入方法、数据读取方法、装置和服务器 | |
US20140095517A1 (en) | Predicate result cache | |
US9479195B2 (en) | Non-transitory computer-readable recording medium, compression method, decompression method, compression device, and decompression device | |
US8872679B1 (en) | System and method for data compression using multiple small encoding tables | |
CN108829872B (zh) | 无损压缩文件的快速处理方法、设备、系统及存储介质 | |
Cannane et al. | General‐purpose compression for efficient retrieval | |
US11323132B2 (en) | Encoding method and encoding apparatus | |
CN112886967B (zh) | 一种数据压缩编码处理的方法和设备 | |
US9160820B2 (en) | Large volume data transfer | |
CN114070471B (zh) | 一种测试数据包传输方法、装置、系统、设备和介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |