CN117394868B - 数据处理方法和数据处理装置 - Google Patents

数据处理方法和数据处理装置 Download PDF

Info

Publication number
CN117394868B
CN117394868B CN202311685329.1A CN202311685329A CN117394868B CN 117394868 B CN117394868 B CN 117394868B CN 202311685329 A CN202311685329 A CN 202311685329A CN 117394868 B CN117394868 B CN 117394868B
Authority
CN
China
Prior art keywords
data
run
data segment
segment
length
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
CN202311685329.1A
Other languages
English (en)
Other versions
CN117394868A (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.)
Shenzhen Corerain Technologies Co Ltd
Original Assignee
Shenzhen Corerain 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 Shenzhen Corerain Technologies Co Ltd filed Critical Shenzhen Corerain Technologies Co Ltd
Priority to CN202311685329.1A priority Critical patent/CN117394868B/zh
Publication of CN117394868A publication Critical patent/CN117394868A/zh
Application granted granted Critical
Publication of CN117394868B publication Critical patent/CN117394868B/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/46Conversion to or from run-length codes, i.e. by representing the number of consecutive digits, or groups of digits, of the same kind by a code word and a digit indicative of that kind

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本发明提出一种数据处理方法和数据处理装置、电子设备以及非瞬时性计算机可读存储介质,所述方法包括:响应于数据处理指令,对原始数据进行切分,以得到所述原始数据的多个数据段,从而能够对所述多个数据段进行并行处理,其中,所述多个数据段包括第一数据段;确定所述第一数据段是否适合利用预设的游程编码;以及当所述第一数据段适合利用所述游程编码时,利用所述游程编码对所述第一数据段进行游程编码处理。根据一些实施例,首先将原始数据切分为多个数据段,且每个数据段可独立、并行地进行数据处理,从而提高了数据压缩处理的速度。

Description

数据处理方法和数据处理装置
技术领域
本发明涉及数据传输领域,具体而言,涉及一种数据处理方法和数据处理装置、电子设备以及非瞬时性计算机可读存储介质。
背景技术
无论计算机和网络的传输速度有多快,用户始终要求更快速的体验。为了降低传输数据的容量,我们通常会对数据进行压缩。数据压缩算法有很多,有些是无损的,有些是有损的,但是它们的主要目标都是降低存储空间和传输量。
游程压缩编码是使用当前数据元素以及该元素连续出现的次数代替连续出现的当前数据元素,即使当前数据只出现一次,也需要使用{K,n}两个部分表示。因此,如果原始数据中元素重复的次数比较少,反而会由于添加额外的n而导致编码后的数据更大,无法起到压缩数据的作用。特别的,如果数据中有些片段待压缩数据元素重复次数比较多,但有些片段数据重复次数比较少,那么直接使用游程编码,就有可能导致经过游程编码后的数据量比压缩前的数据量还大。
另外,当前对原始数据进行游程压缩编码时,是将原始数据逐个与前后数据进行比较,以便确定数据是否相同。这种编码方式简单直接,但是,由于每次只能处理一个数据,处理速度比较慢,不利于多个数据的并行处理。
发明内容
本发明旨在提出一种数据处理方法和数据处理装置、电子设备以及非瞬时性计算机可读存储介质,以解决当前游程编码存在的压缩效果差的问题。
根据本发明的一方面,提出一种数据处理方法,包括:响应于数据处理指令,对原始数据进行切分,以得到所述原始数据的多个数据段,从而能够对所述多个数据段进行并行处理,其中,所述多个数据段包括第一数据段;确定所述第一数据段是否适合利用预设的游程编码;以及当所述第一数据段适合利用所述游程编码时,利用所述游程编码对所述第一数据段进行游程编码处理。
根据一些实施例,响应于数据处理指令,对原始数据进行切分,以得到所述原始数据的多个数据段,包括:根据所述原始数据的长度,对所述原始数据进行切分;或根据所述原始数据的数据分布,对所述原始数据进行切分;或根据预设的切分常量,对所述原始数据进行切分。
根据一些实施例,所述多个数据段还包括第二数据段,所述数据处理方法还包括:确定所述第二数据段是否适合利用所述游程编码;以及当所述第二数据段不适合利用所述游程编码时,对所述第二数据段不做处理或采用不同于所述游程编码的编码方式进行编码。
根据一些实施例,所述方法还包括:拼接所述第一数据段和所述第二数据段。
根据一些实施例,拼接所述第一数据段和所述第二数据段,包括:当所述第一数据段和所述第二数据段都采用或都没有采用所述游程编码进行处理时,直接拼接所述第一数据段和所述第二数据段。
根据一些实施例,拼接所述第一数据段和所述第二数据段,包括:当所述第一数据段和所述第二数据段中有且仅有一个采用了所述游程编码进行处理时,对所述第一数据段在经过游程编码处理后的所述原始数据中的位置进行标记。
根据一些实施例,对所述第一数据段在经过游程编码处理后的所述原始数据中的位置进行标记,包括:在所述第一数据段在经过游程编码处理后的所述原始数据中的位置前后添加特殊字符,以对所述第一数据段在经过游程编码处理后的所述原始数据中的位置进行标记;或存储所述第一数据段在经过游程编码处理后的所述原始数据中的位置数据,以对第一数据段在经过游程编码处理后的所述原始数据中的位置进行标记。根据本发明的一方面,提出一种数据处理装置,包括:切分单元,用于响应于数据处理指令,对原始数据进行切分,以得到所述原始数据的多个数据段,从而能够对所述多个数据段进行并行处理,其中,所述多个数据段包括第一数据段;游程编码处理确认单元,用于确定所述第一数据段是否适合利用预设的游程编码;以及游程编码单元,用于当所述第一数据段适合利用所述游程编码时,利用所述游程编码对所述第一数据段进行游程编码处理。
根据本发明的一方面,提出一种电子设备,包括:处理器;以及
存储器,存储有计算机程序,当所述计算机程序被所述处理器执行时,使得所述处理器执行如前任一实施例所述的数据处理方法。
根据本发明的一方面,提出一种非瞬时性计算机可读存储介质,其上存储有计算机可读指令,当所述指令被处理器执行时,使得所述处理器执行如前任一实施例所述的数据处理方法。
根据本发明的实施例,首先将原始数据切分为多个数据段,且每个数据段可独立、并行地进行数据处理,从而提高了数据压缩处理的速度。另外,通过对每个数据段是否适合采用游程编码的方式进行压缩进行判断,且只有在数据段适合游程编码进行压缩的情况下,才对该数据段进行游程编码处理,从而提高了数据的压缩效果。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本发明。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍。通过参照附图详细描述其示例实施例,本发明的上述和其他目标、特征及优点将变得更加显而易见。
图1示出了根据本发明示例实施例的一种数据处理方法示意图。
图2示出了根据本发明示例实施例的一种数据处理方法流程图。
图3示出了根据本发明示例实施例的另一种数据处理方法流程图。
图4示出了根据本发明示例实施例的另一种数据处理方法流程图。
图5示出了根据本发明示例实施例的另一种数据处理方法流程图。
图6示出了采用游程编码处理的实现过程示意图。
图7示出了根据本发明示例实施例的一种数据处理方法的过程示意图。
图8示出了根据本发明示例实施例的一种标记示意图。
图9示出了根据本发明示例实施例的一种数据处理装置框图。
图10示出根据本发明示例性实施例的一种电子设备。
具体实施方式
现在将参考附图更全面地描述示例实施例。然而,示例实施例能够以多种形式实施,且不应被理解为限于在此阐述的实施例;相反,提供这些实施例使得本发明将全面和完整,并将示例实施例的构思全面地传达给本领域的技术人员。在图中相同的附图显示表示相同或类似的部分,因而将省略对它们的重复描述。
所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本公开的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而没有这些特定细节中的一个或更多,或者可以采用其它的方式、组元、材料、装置或操作等。在这些情况下,将不详细示出或描述公知结构、方法、装置、实现、材料或者操作。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
游程编码是一种十分简单的无损数据压缩算法,该算法的实现是用当前数据元素以及该元素连续出现的次数来取代字符串中连续出现的数据部分。为了方便描述,经过游程编码后的数据表示为{K,n},其中K为当前数据元素,n为该元素重复的次数。例如,原始字符串为“aaaaaaaaaabbbaxxxxyyyzyx”,该字符串长度为24,且字符串中有很多的重复部分。在经过游程算法后,得到字符串“a10b3a1x4y3z1y1x1”,该字符串的长度为17,大约是初始字符串长度的70%。
如前所述,游程压缩编码使用当前数据元素以及该元素连续出现的次数代替连续出现的当前数据元素,即使当前数据只出现一次,也需要使用{K,n}两个部分表示。例如,当原始字符串为“abcdabcdabcdabcd”,在经过游程编码后,得到字符串“a1b1c1d1a1b1c1d1a1b1c1d1a1b1c1d1”,字符串长度由16变为20。由此可见,当原始数据中元素重复的次数比较少时,反而会由于添加额外的n而导致编码后的数据更大,无法起到压缩数据的作用。
另外,对原始数据进行游程压缩编码时,是将原始数据逐个与前后数据进行比较,以便确定数据是否相同。这种编码方式虽然简单直接,但是,由于每次只能处理一个数据,处理速度比较慢,而且不利于多个数据并行处理。
图1示出了根据本发明示例实施例的一种数据处理方法示意图,如图1所述,首先将原始数据切分成若干段,并对每个片段独立地、并行地进行游程编码处理;在游程编码处理过程中,识别出经过游程编码处理后数据量会增加的片段,并不再对其进行游程编码处理,而直接使用该数据段或采用其他压缩方法对该数据段进行压缩;最终将处理后的多个片段数据合并在一起,作为最后的压缩数据。
根据图1所示的实施例,通过对每个数据段是否适合采用游程编码的方式进行压缩进行判断,且只有在数据段适合游程编码进行压缩的情况下,才对该数据段进行游程编码处理,解决了采用游程编码压缩后数据增多的问题,从而提高了数据的压缩效果。同时,每个数据段可独立、并行地进行数据处理,从而提高了数据压缩处理的速度。
下面结合附图,对根据本发明的具体实施例进行详细说明。
图2示出了根据本发明示例实施例的一种数据处理方法流程图,如图2所示的方式包括步骤S201、S203和S205。
在步骤S201,响应于数据处理指令,对原始数据进行切分,以得到所述原始数据的多个数据段。
根据本发明的实施例,通过步骤S201能够对所述多个数据段进行并行处理,其中,所述多个数据段包括第一数据段。
在一些实施例中,是根据所述原始数据的长度,对所述原始数据进行切分。
在具体的实施例,首先计算原始数据的长度,若所述原始数据能够等分,在采用等分的方式,对所述原始数据进行等分。
例如,对于字符串“abcdabcdabcdabcd”,字符串长度为16,定义数据段长度为4,则将字符串切分后,得到4个等长的数据段。
根据另一些实施例,根据预设的切分常量,对所述原始数据记进行切分。
例如,对于字符串“abcdabc”,字符串长度为7,预设的数据段长度为4,则将字符串切分后得到数据段“abcd”和“abc”。
根据另一些实施例,根据所述原始数据的数据分布,对所述原始数据进行切分。
例如,对于字符串“aaaabbbccabc”,其子字符串“aaaabbbcc”存在重复的字符,其字符串“abc”不存在重复的字符,因此,可将字符串“aaaabbbccabc”切分成“aaaabbbcc”和“abc”。
容易理解的是,在对原始数据进行数据处理时,切分的数据段越多,并行处理的通道就越多,数据段的长度就越短,因此,处理速度就会越快,但也意味着需要消耗更多的硬件资源。因此,本发明不对应原始数据的切分方式进行限定,任何能够将原始数据切分为多个数据段的方式均适用本实施例。另外,还需说明的是,在对原始数据切分时,根据字符串的字符组合特点,可选择多种切分方法的组合。
例如,对于字符串“aaaabbbccabc”,首先根据字符串的分布特点对所述字符串切分成“aaaabbbcc”和“abc”。然后按照预设的数据段长度,将“aaaabbbcc”切分成“aaa”、“abb”和“bcc”。
在步骤S201,通过将原始数据切分为多个数据段,从而使得后续步骤可采用并行方式对每个数据段同时进行数据处理,从而提高了数据压缩处理的速度。
根据本发明的实施例,在步骤S201得到多个数据段后,并行执行步骤S203。
在步骤S203,确定所述第一数据段是否适合利用预设的游程编码。
如前所述,游程编码适合元素连续出现的场合,不适合字符重复次数较少的场合。因此,通过步骤S203筛选出适合游程编码处理的字符段,以第一数据段进行游程编码处理,以提高数据的压缩效果。
在步骤S205,当所述第一数据段适合利用所述游程编码时,利用所述游程编码对所述第一数据段进行游程编码处理。
在步骤S203筛选出适合游程编码的第一数据段后,利用步骤S205所示的方法对第一数据段进行游程编码,以实现对第一数据段的数据压缩。
根据图2所示的方法,首先将原始数据切分为多个数据段,且每个数据段可独立、并行地进行数据处理,从而提高了数据压缩处理的速度。另外,通过对每个数据段是否适合采用游程编码的方式进行压缩进行判断,且只有在数据段适合游程编码进行压缩的情况下,才对该数据段进行游程编码处理,从而提高了数据的压缩效果。
图3示出了根据本发明示例实施例的另一种数据处理方法流程图,如图3所示,除了步骤S201至S205之外,图3所示的方法还包括步骤S207和S209。
为了简要起见,以下将仅描述图3所示的实施方式与图2的不同之处,并将略去与其相同之处的详细描述。
根据图3所示的实施例,所述多个数据段还包括第二数据段,在步骤S207,确定所述第二数据段是否适合利用所述游程编码。
如前所述,游程编码适合元素连续出现的场合,不适合字符重复次数较少的场合。因此,通过步骤S207筛选出不适合游程编码处理的字符段,以减小了对第二数据段进行游程编码处理带来的对数据压缩效果的影响。
在步骤S209,当所述第二数据段不适合利用所述游程编码时,对所述第二数据段不做处理或采用不同于所述游程编码的编码方式进行编码。
如图3所示的实施例,通过对每个数据段是否适合采用游程编码的方式进行压缩进行判断,对不适合游程编码处理的数据段不做处理或采用其他不同于游程编码的编码方式进行编码,从而避免了对不适合游程编码处理的字符串进行游程编码处理,减小了对字符重复次数较少的字符串进行游程编码处理带来的对数据压缩效果的影响。
图4示出了根据本发明示例实施例的另一种数据处理方法流程图,如图4所示,除了步骤S201至S209之外,在图3所示的方法的基础上,图4所示的方法还包括步骤S211。为了简要起见,以下将仅描述图3所示的实施方式与图3的不同之处,并将略去与其相同之处的详细描述。
如图4所示,在步骤S211,拼接所述第一数据段和所述第二数据段,以得到与所述原始数据对应的压缩数据。
图5示出了根据本发明示例实施例的另一种数据处理方法流程图,如图5所示,步骤S211包括子步骤S2111、S2113和S2115。
根据图5所示的实施例,所述第一数据段和所述第二数据段为相邻的数据段。
在子步骤S2111,判断所述第一数据段和所述第二数据段都采用或都没有采用所述游程编码进行处理。
在子步骤S2113,当所述第一数据段和所述第二数据段中的有且仅有一个采用了所述游程编码进行处理时,对所述第一数据段在经过游程编码处理后的所述原始数据中的位置进行标记。
在步骤S2115,当所述第一数据段和所述第二数据段都采用或都没有采用所述游程编码进行处理时,直接拼接所述第一数据段和所述第二数据段。
根据图5所示的实施例,通过判断相邻两个数据段的编码格式是否相同,如果相同,则不需要特殊处理,如果不同,则需要其中一个数据段的位置记录下来,以便在数据解压的时候,根据两个数据段的位置切换不同的解码方式。
在此需要说明的是,本发明对数据段的标记方式并不做限定,第一数据段在经过游程编码处理后的所述原始数据中的位置进行标记方式包括但不限于在所述第一数据段在经过游程编码处理后的所述原始数据中的位置前后添加特殊字符,以对所述第一数据段在经过游程编码处理后的所述原始数据中的位置进行标记;或存储所述第一数据段在经过游程编码处理后的所述原始数据中的位置数据,以对第一数据段在经过游程编码处理后的所述原始数据中的位置进行标记。
图6示出了采用游程编码处理的实现过程示意图,如图6所示,字符串“aaaaaaadabcdabcd”起始数据重复次数较多,若使用游程编码,7个数据被压缩成2个字符,但是后面的数据重复次数较少,9个数据使用游程编码后,变成18个数据。如果不对数据进行分割,直接使用游程编码,经过游程编码处理的字符串长度为20。由此可见,经过游程编码后,不仅没有达到压缩效果,反而出现了数据膨胀。
图7示出了根据本发明示例实施例的一种数据处理方法的过程示意图,如图7所示,对于字符串“aaaaaaadabcdabcd”,首先切分为数据段“aaaaaaad”和“abcdabcd”,然后对数据段“aaaaaaa”进行游程编码处理后得到“a7d1”,不对字符串“abcdabcd”进行游程编码,最后得到字符串“a7d1abcdabcd”。若采用在所述第一数据段在经过游程编码处理后的所述原始数据中的位置前后添加特殊字符,以对所述第一数据段在经过游程编码处理后的所述原始数据中的位置进行标记的方式,则得到字符串“标记a7d1标记abcdabcd”;若采用存储所述第一数据段在经过游程编码处理后的所述原始数据中的位置数据,以对第一数据段在经过游程编码处理后的所述原始数据中的位置进行标记的方式,由于“a7d1”在“a7d1abcdabcd”的起始位置分别为1和4,则将数据1和4单独存储,在解压缩字符串“a7d1abcdabcd”时,根据数据1和4首先取出字符串“a7d1”进行解压缩,得到字符串“aaaaaaad”,并对“abcdabcd”不做处理,并合并“aaaaaaad”和“abcdabcd”,得到原始数据“aaaaaaadabcdabcd”。
根据一些实施例,标记数据可以和经过游程编码处理后的所述原始数据一起存储。如图8所示,对于字符串“aaaaaaadabcdabcd”,按照本发明的示例实施例处理后,得到字符串“a7d1abcdabcd”,将标记数据可以和经过游程编码处理后的所述原始数据一起存储,以对存储的经过游程编码处理后的数据段进行标记。例如,按照图8所述方式存储数据“a7d1标记abcdabcd.......标记”。在另一些实施例中,对于字符串“aaaaaaadabcdabcd”,也可以按照“标记a7d1标记abcdabcd.......标记”的方式存储。
在具体的实施例中,可以只对编码方式切换的位置做标记。例如,对于字符串“aaaaaaadabcdabcd”,按照本发明的示例实施例处理后,得到字符串“a7d1标记abcdabcd”。由此也可以看出,字符串“a7d1”的结束位置就是字符串“abcdabcd”的起始位置,因此,只做一次标记即可。在一些实施例中,在所有数据拼接完毕后,也可以在整体数据的前后可以添加数据包头和包尾标记整体数据。
上面主要从方法的角度对本发明实施例进行了介绍。本领域技术人员应该很容易意识到,结合本文中所公开的实施例所描述的各示例的操作或步骤,本发明能够以硬件或硬件和计算机软件的结合形式来实现。本领域技术人员可以对每个特定的操作或方法使用不同方式来实现所描述的功能,这种实现不应认为超出本发明的范围。
下面描述本发明的装置实施例。对于本发明装置实施例中未说明的细节,可参照本发明方法实施例。
图9示出了根据本发明示例实施例的一种数据处理装置框图,如图9的装置包括切分单元901、游程编码处理确认单元903和游程编码单元905。其中,切分单元901用于响应于数据处理指令,对原始数据进行切分,以得到所述原始数据的多个数据段,从而能够对所述多个数据段进行并行处理,其中,所述多个数据段包括第一数据段;游程编码处理确认单元903用于确定所述第一数据段是否适合利用预设的游程编码;以及游程编码单元905用于当所述第一数据段适合利用所述游程编码时,利用所述游程编码对所述第一数据段进行游程编码处理。
图10示出根据本发明示例性实施例的一种电子设备。下面参照图10来描述根据本发明的这种实施方式的电子设备200。图10显示的电子设备200仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图10所示,电子设备200以通用计算设备的形式表现。电子设备200的组件可以包括但不限于:至少一个处理单元210、至少一个存储单元220、连接不同系统组件(包括存储单元220和处理单元210)的总线230、显示单元240等。
其中,存储单元存储有程序代码,程序代码可以被处理单元210执行,使得处理单元210执行本说明书描述的根据本发明各种示例性实施方式的方法。例如,处理单元210可以执行如图2中所示的方法。
存储单元220可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)2201和/或高速缓存存储单元2202,还可以进一步包括只读存储单元(ROM)2203。
存储单元220还可以包括具有一组(至少一个)程序模块2205的程序/实用工具2204,这样的程序模块2205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线230可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备200也可以与一个或多个外部设备300(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备200交互的设备通信,和/或与使得该电子设备200能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口250进行。并且,电子设备200还可以通过网络适配器260与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器260可以通过总线230与电子设备200的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备200使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。根据本发明实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、或者网络设备等)执行根据本发明实施方式的上述方法。
软件产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该计算机可读介质实现前述功能。
本领域技术人员可以理解上述各模块可以按照实施例的描述分布于装置中,也可以进行相应变化唯一不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
根据本发明的实施例,提出一种计算机程序,包括计算机程序或指令,该计算机程序或指令被处理器执行时,可以执行以上描述的方法。
以上对本发明实施例进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明仅用于帮助理解本发明的方法及其核心思想。同时,本领域技术人员依据本发明的思想,基于本发明的具体实施方式及应用范围上做出的改变或变形之处,都属于本发明保护的范围。综上所述,本说明书内容不应理解为对本发明的限制。

Claims (9)

1.一种数据处理方法,其特征在于,包括:
响应于数据处理指令,对原始数据进行切分,以得到所述原始数据的多个数据段,从而能够对所述多个数据段进行并行处理,其中,所述多个数据段包括第一数据段;
确定所述第一数据段是否适合利用预设的游程编码;以及
当所述第一数据段适合利用所述游程编码时,利用所述游程编码对所述第一数据段进行游程编码处理;
所述多个数据段还包括第二数据段,所述数据处理方法还包括:
确定所述第二数据段是否适合利用所述游程编码;以及
当所述第二数据段不适合利用所述游程编码时,对所述第二数据段不做处理或采用不同于所述游程编码的编码方式进行编码。
2.根据权利要求1所述的数据处理方法,其特征在于,响应于数据处理指令,对原始数据进行切分,以得到所述原始数据的多个数据段,包括:
根据所述原始数据的长度,对所述原始数据进行切分;或
根据所述原始数据的数据分布,对所述原始数据进行切分;或
根据预设的切分常量,对所述原始数据进行切分。
3.根据权利要求1所述的数据处理方法,其特征在于,还包括:
拼接所述第一数据段和所述第二数据段。
4.根据权利要求3所述的数据处理方法,其特征在于,拼接所述第一数据段和所述第二数据段,包括:
当所述第一数据段和所述第二数据段都采用或都没有采用所述游程编码进行处理时,直接拼接所述第一数据段和所述第二数据段。
5.根据权利要求3所述的数据处理方法,其特征在于,拼接所述第一数据段和所述第二数据段,包括:
当所述第一数据段和所述第二数据段中有且仅有一个采用了所述游程编码进行处理时,对所述第一数据段在经过游程编码处理后的所述原始数据中的位置进行标记。
6.根据权利要求5所述的数据处理方法,其特征在于,对所述第一数据段在经过游程编码处理后的所述原始数据中的位置进行标记,包括:
在所述第一数据段在经过游程编码处理后的所述原始数据中的位置前后添加特殊字符,以对所述第一数据段在经过游程编码处理后的所述原始数据中的位置进行标记;或
存储所述第一数据段在经过游程编码处理后的所述原始数据中的位置数据,以对第一数据段在经过游程编码处理后的所述原始数据中的位置进行标记。
7.一种数据处理装置,其特征在于,包括:
切分单元,用于响应于数据处理指令,对原始数据进行切分,以得到所述原始数据的多个数据段,从而能够对所述多个数据段进行并行处理,其中,所述多个数据段包括第一数据段;
第一游程编码处理确认单元,用于确定所述第一数据段是否适合利用预设的游程编码;以及
第一编码单元,用于当所述第一数据段适合利用所述游程编码时,利用所述游程编码对所述第一数据段进行游程编码处理;
其中,所述多个数据段还包括第二数据段,所述数据处理装置还包括:
第二游程编码处理确认单元,用于确定所述第二数据段是否适合利用所述游程编码;以及
第二编码单元,用于当所述第二数据段不适合利用所述游程编码时,对所述第二数据段不做处理或采用不同于所述游程编码的编码方式进行编码。
8.一种电子设备,包括:
处理器;以及
存储器,存储有计算机程序,当所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1-6中任一项所述的数据处理方法。
9.一种非瞬时性计算机可读存储介质,其上存储有计算机可读指令,当所述指令被处理器执行时,使得所述处理器执行如权利要求1-6中任一项所述的数据处理方法。
CN202311685329.1A 2023-12-11 2023-12-11 数据处理方法和数据处理装置 Active CN117394868B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311685329.1A CN117394868B (zh) 2023-12-11 2023-12-11 数据处理方法和数据处理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311685329.1A CN117394868B (zh) 2023-12-11 2023-12-11 数据处理方法和数据处理装置

Publications (2)

Publication Number Publication Date
CN117394868A CN117394868A (zh) 2024-01-12
CN117394868B true CN117394868B (zh) 2024-04-09

Family

ID=89470597

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311685329.1A Active CN117394868B (zh) 2023-12-11 2023-12-11 数据处理方法和数据处理装置

Country Status (1)

Country Link
CN (1) CN117394868B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102592682A (zh) * 2012-02-20 2012-07-18 中国科学院声学研究所 一种测试数据编码压缩方法
CN103326730A (zh) * 2013-06-06 2013-09-25 清华大学 数据并行压缩方法
CN111294057A (zh) * 2018-12-07 2020-06-16 上海寒武纪信息科技有限公司 数据压缩方法、编码电路和运算装置
CN116248129A (zh) * 2023-02-24 2023-06-09 中国电子科技集团公司第二十九研究所 一种容错的数据分段压缩方法、恢复方法、设备及系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7623047B2 (en) * 2007-10-30 2009-11-24 Hewlett-Packard Development Company, L.P. Data sequence compression

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102592682A (zh) * 2012-02-20 2012-07-18 中国科学院声学研究所 一种测试数据编码压缩方法
CN103326730A (zh) * 2013-06-06 2013-09-25 清华大学 数据并行压缩方法
CN111294057A (zh) * 2018-12-07 2020-06-16 上海寒武纪信息科技有限公司 数据压缩方法、编码电路和运算装置
CN116248129A (zh) * 2023-02-24 2023-06-09 中国电子科技集团公司第二十九研究所 一种容错的数据分段压缩方法、恢复方法、设备及系统

Also Published As

Publication number Publication date
CN117394868A (zh) 2024-01-12

Similar Documents

Publication Publication Date Title
CN107395209B (zh) 数据压缩方法、数据解压缩方法及其设备
JPH11168390A (ja) データ圧縮装置及びデータ復元装置,データ圧縮方法及びデータ復元方法,データ圧縮/復元用辞書作成装置並びにデータ圧縮プログラム又はデータ復元プログラムを記録したコンピュータ読み取り可能な記録媒体
US9923577B1 (en) Hybrid software-hardware implementation of lossless data compression and decompression
US11243717B2 (en) Method, electronic device and computer program product for processing data
US10666289B1 (en) Data compression using dictionary encoding
US9966971B2 (en) Character conversion
US9665590B2 (en) Bitmap compression for fast searches and updates
JP2003218703A (ja) データ符号化装置及びデータ復号装置
EP4082119A1 (en) Systems and methods of data compression
US20180041224A1 (en) Data value suffix bit level compression
CN103152054A (zh) 算术编码的方法和设备
US10904177B2 (en) Lossy text source coding by word length
CN117394868B (zh) 数据处理方法和数据处理装置
US10103747B1 (en) Lossless binary compression in a memory constrained environment
JP6990881B2 (ja) エントロピー・エンコーディングのシステム・レベル・テスト
CN112436943B (zh) 基于大数据的请求去重方法、装置、设备及存储介质
CN113268453A (zh) 日志信息压缩存储方法及装置
CN113055455A (zh) 文件上传方法及设备
CN114614829A (zh) 卫星数据帧的处理方法、装置、电子设备和可读存储介质
US7167115B1 (en) Method, apparatus, and computer-readable medium for data compression and decompression utilizing multiple dictionaries
Souley et al. A comparative analysis of data compression techniques
CN111967001A (zh) 一种基于双容器的解码与编码安全隔离方法
US9059728B2 (en) Random extraction from compressed data
CN113595557B (zh) 一种数据处理的方法和装置
CN113535709B (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
GR01 Patent grant
GR01 Patent grant