一种文件数据分布式存储管理系统的制作方法

未命名 10-08 阅读:87 评论:0


1.本发明涉及数据存储技术领域,具体涉及一种文件数据分布式存储管理系统。


背景技术:

2.为了降低分布式存储管理系统的存储成本,提高分布式存储管理系统的存储效率、用户体验和系统性能,需要分布式存储管理系统能够存储更多的文件、数据传输效率更高、数据访问速度更快;而想要存储更多的文件、提高数据传输效率和数据访问速度,就要求文件数据的数据量较小,因此,需要对文件数据进行数据压缩。
3.当前的计算机系统使用的基本上是二进制系统,数据在计算机中主要是以二进制数据的形式存储的,因此,需要先将文件数据转换为二进制数据形式,再将文件数据分散存储到分布式存储管理系统的多个存储服务器上。
4.由于二进制数据是有0和1组成的数据,因此,常规基于信息熵进行压缩的方法不适用于二进制数据;另外,考虑到二进制数据的本质是由连续重复出现的1或0组成的,因此,可以利用游程编码对二进制数据进行压缩;但游程编码的压缩效率受到字符连续出现次数为1的情况影响,字符连续出现次数为1的情况越多,则游程长度序列越长,游程编码的压缩效率越小。
5.因此,在字符连续出现次数为1的情况较多时,对二进制数据进行数据处理,是提高游程编码的压缩效率,减少文件数据的数据量,使分布式存储管理系统能够存储更多的文件、数据传输效率更高、数据访问速度更快,进而降低分布式存储管理系统的存储成本,提高分布式存储管理系统的存储效率、用户体验和系统性能的关键。


技术实现要素:

6.本发明提供一种文件数据分布式存储管理系统,以解决现有的问题。
7.本发明的一种文件数据分布式存储管理系统采用如下技术方案:本发明提供了一种文件数据分布式存储管理系统,所述系统包括:文件数据编码模块,对文件数据进行编码,获得二进制数据序列;压缩序列获取模块,通过二进制数据的累加和对二进制数据序列进行转换,获得转换序列;将转换序列划分为若干个等差序列;根据等差序列获得游程长度序列;在游程长度序列中增加标识符,获得压缩序列;压缩序列编码模块,对压缩序列进行编码获得编码序列。
8.进一步地,所述获得转换序列,包括的具体步骤如下:将二进制数据序列中前i个数据的累加和作为转换序列中的第i个数据,获得转换序列。
9.进一步地,所述将转换序列划分为若干个等差序列,包括的具体步骤如下:按照从左往右的顺序,将转换序列划分为若干个等差序列,等差序列包括差值为0的等差序列和差值为1的等差序列,将差值为0的等差序列记为第一等差序列,将差值为1的
等差序列记为第二等差序列。
10.进一步地,所述根据等差序列获得游程长度序列,包括的具体步骤如下:将每个等差序列的长度作为游程长度,将所有游程长度按照顺序组成的序列记为游程长度序列。
11.进一步地,所述在游程长度序列中增加标识符,获得压缩序列,包括的具体步骤如下:按照等差序列的顺序,判断每个等差序列与前一个等差序列是否为相同类型的等差序列;根据同类型的等差序列的数量与不同类型的等差序列的数量的大小关系,确定如何添加标识符,具体为:如果相同类型的等差序列的数量小于不同类型的等差序列的数量,则对与前一个等差序列为相同类型的等差序列进行标记,在与前一个等差序列为相同类型的等差序列在游程长度序列中对应的游程长度前面添加标识符,否则,对与前一个等差序列为不同类型的等差序列进行标记,在与前一个等差序列为不同类型的等差序列在游程长度序列中对应的游程长度前面添加标识符;将添加标识符的游程长度序列记为压缩序列。
12.进一步地,所述对压缩序列进行编码获得编码序列,包括的具体步骤如下:将三个标记设置在压缩序列的编码结果的最前面,获得压缩序列的编码序列。
13.进一步地,所述压缩序列的编码结果的获取方法具体如下:根据霍夫曼编码表对压缩序列进行编码,获得压缩序列的编码结果。
14.进一步地,所述三个标记的获取方法具体如下:根据首个数据设置第一标记,如果首个数据为“0”,则第一标记为0,如果首个数据为“1”,则第一标记为1;根据第一个等差序列的类型设置第二标记,如果第一个等差序列为第一等差序列,则第二标记为0,如果第一个等差序列为第二等差序列,则第二标记为1;根据同类型的等差序列的数量与不同类型的等差序列的数量的大小关系设置第三标记,如果相同类型的等差序列的数量大于不同类型的等差序列的数量,则第三标记为0,如果相同类型的等差序列的数量不大于不同类型的等差序列的数量,则第三标记为1。
15.进一步地,所述霍夫曼编码表的获取方法具体如下:根据压缩序列中所有种游程长度的频数和标识符的频数构建霍夫曼树,根据霍夫曼树获得霍夫曼编码表。
16.进一步地,所述获得二进制数据序列,包括的具体步骤如下:对于需要进行分布式存储的文件,通过文本编码方式对文件中的所有文件数据进行编码,将文件中所有文件数据的编码结果按照顺序组成的序列,记为二进制数据序列。
17.本发明的技术方案的有益效果是:本发明利用二进制数据的特点,通过累加值将二进制数据序列转换为由差值为0的等差序列和差值为1的等差序列组成的序列,将等差序列的长度作为游程,相较于没有转换之前,游程长度的数量减少,压缩后的数据量减少,提高游程编码对二进制数据的压缩效率,减少文件数据的数据量,使分布式存储管理系统能够存储更多的文件、数据传输效率更高、数据访问速度更快,进而降低分布式存储管理系统的存储成本,提高分布式存储管理系统的存储效率、用户体验和系统性能。
附图说明
18.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
19.图1为本发明的一种文件数据分布式存储管理系统的系统框图;图2为霍夫曼树示意图。
具体实施方式
20.为了更进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明提出的一种文件数据分布式存储管理系统,其具体实施方式、结构、特征及其功效,详细说明如下。在下述说明中,不同的“一个实施例”或“另一个实施例”指的不一定是同一实施例。此外,一或多个实施例中的特定特征、结构或特点可由任何合适形式组合。
21.除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。
22.下面结合附图具体的说明本发明所提供的一种文件数据分布式存储管理系统的具体方案。
23.请参阅图1,其示出了本发明一个实施例提供的一种文件数据分布式存储管理系统,该系统包括以下模块:为了降低分布式存储管理系统的存储成本,提高分布式存储管理系统的存储效率、用户体验和系统性能,需要分布式存储管理系统能够存储更多的文件、数据传输效率更高、数据访问速度更快;而想要存储更多的文件、提高数据传输效率和数据访问速度,就要求文件数据的数据量较小,因此,需要对文件数据进行数据压缩。由于二进制数据是有0和1组成的数据,因此,常规基于信息熵进行压缩的方法不适用于二进制数据;考虑到二进制数据的本质是由连续重复出现的1或0组成的,因此,可以利用游程编码对二进制数据进行压缩;但游程编码的压缩效率受到字符连续出现次数为1的情况影响,字符连续出现次数为1的情况越多,则游程长度序列越长,游程编码的压缩效率越小。
24.常规的游程编码是将重复且连续出现多次的字符用游程长度(即连续出现次数)+字符来表示,但是对于二进制数据,由于二进制是有0和1组成的数据,因此,只需要记录首个数据(即二进制数据的第一个数据)是1还是0,以及游程长度就可以;对于二进制数据序列{1,0,0,0,1,1,1,0,1,1,1,1,1,0,0,0,1,0,1,1,0,0,0,0,0,0},用首个数据“1”以及游程长度组成的序列{1,3,3,1,5,3,1,1,2,6}来表示;观察发现,由于字符连续出现次数为1的情况较多,导致游程长度的数量较多,因此,压缩后的数据量较大;如果将每个数据之前的所有数据的累加值作为该数据,则将二进制数据序列转换为{1,1,1,1,2,3,4,4,5,6,7,8,9,9,9,9,10,10,11,12,12,12,12,12,12,12},由于二进制是有0和1组成的数据,因此,观察发现转换后的序列由若干个差值为0的等差序列和若干个差值为1的等差序列组成,其中,差值为0的等差序列包括{1,1,1,1},{9,9,9},{10,10},{12,12,12,12,12,12},差值为1的等差序列包括{2,3,4},{4,5,6,7,8,9},{11,12};如果将等差序列的长度作为游程,游程长
度组成的序列为{4,3,6,3,2,2,6};相较于没有转换之前,游程长度的数量减少,因此,压缩后的数据量较小。
25.因此,本实施例利用二进制数据的特点,通过累加值将二进制数据序列转换为由差值为0的等差序列和差值为1的等差序列组成的序列,将等差序列的长度作为游程,相较于没有转换之前,游程长度的数量减少,压缩后的数据量减少,提高游程编码的压缩效率,减少文件数据的数据量,使分布式存储管理系统能够存储更多的文件、数据传输效率更高、数据访问速度更快,进而降低分布式存储管理系统的存储成本,提高分布式存储管理系统的存储效率、用户体验和系统性能。
26.文件数据编码模块101,用于对文件数据进行编码,获得二进制数据序列。
27.需要说明的是,当前的计算机系统使用的基本上是二进制系统,数据在计算机中主要是以二进制数据的形式存储的,因此,需要先将文件数据转换为二进制数据形式,再将文件数据分散存储到分布式存储管理系统的多个存储服务器上。
28.具体的,对于需要进行分布式存储的文件,文件数据包含汉字、英文字母、阿拉伯数字以及各种符号,可以通过文本编码方式对文件中的所有文件数据进行编码,将文件中所有文件数据的编码结果按照顺序组成的序列,记为二进制数据序列。
29.常见文本编码方式包括:utf8编码方式、utf16编码方式、gb2312编码方式、ascii编码方式、unicode编码方式、ucs-2编码方式和ansi编码方式等,本实施例中使用的文本编码方式为gb2312编码方式。
30.压缩序列获取模块102,用于对二进制数据序列进行转换,获得转换序列,将转换序列划分为若干个等差序列,根据等差序列获得游程长度序列,在游程长度序列中增加标识符。
31.需要说明的是,由于二进制数据是有0和1组成的数据,因此,常规基于信息熵进行压缩的方法不适用于二进制数据;考虑到二进制数据的本质是由连续重复出现的1或0组成的,因此,可以利用游程编码对二进制数据进行压缩;但游程编码的压缩效率受到字符连续出现次数为1的情况影响,字符连续出现次数为1的情况越多,则游程长度序列越长,游程编码的压缩效率越小。常规的游程编码是将重复且连续出现多次的字符用游程长度(即连续出现次数)+字符来表示,但是对于二进制数据,由于二进制是有0和1组成的数据,因此,只需要记录首个数据(即二进制数据的第一个数据)是1还是0,以及游程长度就可以;对于二进制数据序列{1,0,0,0,1,1,1,0,1,1,1,1,1,0,0,0,1,0,1,1,0,0,0,0,0,0},用首个数据“1”以及游程长度组成的序列{1,3,3,1,5,3,1,1,2,6}来表示;观察发现,由于字符连续出现次数为1的情况较多,导致游程长度的数量较多,因此,压缩后的数据量较大。
32.进一步需要说明的是,如果将每个数据之前的所有数据的累加值作为该数据,则将二进制数据序列转换为{1,1,1,1,2,3,4,4,5,6,7,8,9,9,9,9,10,10,11,12,12,12,12,12,12,12},由于二进制是有0和1组成的数据,因此,观察发现转换后的序列由若干个差值为0的等差序列和若干个差值为1的等差序列组成,其中,差值为0的等差序列包括{1,1,1,1},{9,9,9},{10,10},{12,12,12,12,12,12},差值为1的等差序列包括{2,3,4},{4,5,6,7,8,9},{11,12};如果将等差序列的长度作为游程,游程长度组成的序列为{4,3,6,3,2,2,6};相较于没有转换之前,游程长度的数量减少,因此,压缩后的数据量较小。因此,本实施例利用二进制数据的特点,通过累加值将二进制数据序列转换为由差值为0的等差序列和
差值为1的等差序列组成的序列,将等差序列的长度作为游程,相较于没有转换之前,游程长度的数量减少,压缩后的数据量减少,提高游程编码的压缩效率,减少文件数据的数据量,使分布式存储管理系统能够存储更多的文件、数据传输效率更高、数据访问速度更快,进而降低分布式存储管理系统的存储成本,提高分布式存储管理系统的存储效率、用户体验和系统性能。
33.1、对二进制数据序列进行转换,获得转换序列。
34.具体的,将二进制数据序列中前i个数据的累加和作为转换序列中的第i个数据,获得转换序列。
35.例如,对于二进制数据序列{1,0,0,0,1,1,1,0,1,1,1,1,1,0,0,0,1,0,1,1,0,0,0,0,0,0},将每个数据之前的所有数据的累加值作为该数据,对二进制数据序列进行转换,获得转换序列{1,1,1,1,2,3,4,4,5,6,7,8,9,9,9,9,10,10,11,12,12,12,12,12,12,12}。
36.2、将转换序列划分为若干个等差序列。
37.具体的,按照从左往右的顺序,将转换序列划分为若干个等差序列,等差序列包括差值为0的等差序列和差值为1的等差序列,将差值为0的等差序列记为第一等差序列,将差值为1的等差序列记为第二等差序列。
38.例如,对于转换序列{1,1,1,1,2,3,4,4,5,6,7,8,9,9,9,9,10,10,11,12,12,12,12,12},将其转换为{1,1,1,1},{2,3,4},{4,5,6,7,8,9},{9,9,9},{10,10},{11,12},{12,12,12,12,12,12},其中,{1,1,1,1},{9,9,9},{10,10},{12,12,12,12,12,12}为差值为0的等差序列,即第一等差序列,{2,3,4},{4,5,6,7,8,9},{11,12}为差值为1的等差序列,即第二等差序列。
39.3、根据等差序列获得游程长度序列。
40.具体的,将每个等差序列的长度作为游程长度,将所有游程长度按照顺序组成的序列记为游程长度序列。
41.例如,对于二进制数据序列{1,0,0,0,1,1,1,0,1,1,1,1,1,0,0,0,1,0,1,1,0,0},游程长度组成的序列为{1,3,3,1,5,3,1,1,2,6};对于转换序列{1,1,1,1,2,3,4,4,5,6,7,8,9,9,9,9,10,10,11,12,12,12,12,12,12,12},将等差序列的长度作为游程,游程长度组成的序列为{4,3,6,3,2,2,6};相较于没有转换之前,游程长度的数量减少,因此,压缩后的数据量较小。
42.4、在游程长度序列中增加标识符。
43.需要说明的是,在进行解码时,根据首个数据“1”和游程长度序列{4,3,6,3,2,2,6}中的第一个游程长度“4”获得第一个等差序列:由于第一个游程长度“4”是第一等差序列的长度,即差值为0的等差序列,因此,第一个等差序列中所有数据都和首个数据“1”相同,则获得第一个等差序列{1,1,1,1};根据游程长度序列{4,3,6,3,2,2,6}中的第二个游程长度“3”获得第二个等差序列:由于等差序列中的数据都是通过二进制数据的累加和获得的,二进制数据只能是0或1,因此,相邻两个累加和的差值只能是0或1,因此,第二个等差序列的第一个数据只能是第一个等差序列的最后一个数据“1”或者第一个等差序列的最后一个数据加1的结果“2”,如果第二个等差序列的第一个数据是“1”,则第一个数据应该属于第一个等差序列,因此,第二个等差序列的第一个数据是“2”,由于第二个游程长度“3”是第二等差序列的长度,即差值为1的等差序列,因此,第二个等差序列中所有数据都和前一个数据
相差1,则获得第二个等差序列{2,3,4};同理,根据游程长度序列获得剩余所有等差序列{4,5,6,7,8,9},{9,9,9},{10,10},{11,12},{12,12,12,12,12,12},所有等差序列按照顺序组成转换序列{1,1,1,1,2,3,4,4,5,6,7,8,9,9,9,9,10,10,11,12,12,12,12,12,12,12},转换序列中每个数据与前一个数据的差值按照顺序组成的序列{1,0,0,0,1,1,1,0,1,1,1,1,1,0,0,0,1,0,1,1,0,0,0,0,0,0}即为二进制数据序列,实现对压缩结果进行解压。
44.进一步需要说明的是,根据解码过程可以发现,除了需要记录首个数据和游程长度序列外,由于游程长度是等差序列的长度,而等差序列包括差值为0的等差序列和差值为1的等差序列,为了保证可解码性,需要区分差值为0的等差序列和差值为1的等差序列,因此,需要添加标识符;而标识符的添加意味着数据量的增加,为了保证压缩效率,需要尽可能少的添加标识符。
45.具体的,按照等差序列的顺序,判断每个等差序列与前一个等差序列是否为相同类型的等差序列,即是否都为第一等差序列或者是否都为第二等差序列;本着尽可能少的添加标识符的原则,根据同类型的等差序列的数量与不同类型的等差序列的数量的大小关系,确定如何添加标识符:如果相同类型的等差序列的数量小于不同类型的等差序列的数量,则对与前一个等差序列为相同类型的等差序列进行标记,即在与前一个等差序列为相同类型的等差序列在游程长度序列中对应的游程长度前面添加标识符,否则,对与前一个等差序列为不同类型的等差序列进行标记,即在与前一个等差序列为不同类型的等差序列在游程长度序列中对应的游程长度前面添加标识符。
46.将需要添加标识符的等差序列的数量记为标识符的频数。
47.将添加标识符的游程长度序列记为压缩序列。
48.例如,对于转换序列{1,1,1,1,2,3,4,4,5,6,7,8,9,9,9,9,10,10,11,12,12,12,12,12,12,12},将其转换为等差序列{1,1,1,1},{2,3,4},{4,5,6,7,8,9},{9,9,9},{10,10},{11,12},{12,12,12,12,12,12},其中,与前一个等差序列为相同类型的等差序列的数量为2,与前一个等差序列为不同类型的等差序列的数量为4,因此,对与前一个等差序列为相同类型的等差序列进行标记,即在与前一个等差序列为相同类型的等差序列在游程长度序列中对应的游程长度前面添加标识符,标识符的频数为2,添加标识符后获得的压缩序列为{4,3,b,6,3,b,2,2,6},其中,b为标识符。
49.压缩序列编码模块103,用于对压缩序列进行编码获得编码序列。
50.具体的,根据压缩序列中所有种游程长度的频数和标识符的频数构建霍夫曼树,根据霍夫曼树获得霍夫曼编码表,根据霍夫曼编码表对压缩序列进行编码,获得压缩序列的编码结果。
51.例如,压缩序列为{4,3,b,6,3,b,2,2,6}中,游程长度有2、3、4、6,频数分别为2、2、1、2,标识符b的频数为2,根据所有种游程长度的频数和标识符的频数构建霍夫曼树,请参阅图2,其示出了霍夫曼树示意图,则游程长度有2、3、4、6以及标识符b的编码分别为001、11、000、10、01;压缩序列的编码结果为{000,11,01,10,11,01,001,001,10}。
52.进一步,考虑到想要解压,还需要记录首个数据、第一个等差序列的类型以及标识符标记的是相同类型的等差序列还是不同类型的等差序列,因此,本实施增加三个标记用来记录首个数据、第一个等差序列的类型以及标识符标记的是相同类型的等差序列还是不同类型的等差序列,具体如下:
(1)根据首个数据设置第一标记,如果首个数据为“0”,则第一标记为0,如果首个数据为“1”,则第一标记为1;因此,后续在解压时,能够根据第一标记获得首个数据;(2)根据第一个等差序列的类型设置第二标记,如果第一个等差序列为第一等差序列,则第二标记为0,如果第一个等差序列为第二等差序列,则第二标记为1;因此,后续在解压时,能够根据第二标记获得第一个等差序列的类型;(3)根据同类型的等差序列的数量与不同类型的等差序列的数量的大小关系设置第三标记,如果相同类型的等差序列的数量大于不同类型的等差序列的数量,则第三标记为0,如果相同类型的等差序列的数量不大于不同类型的等差序列的数量,则第三标记为1;因此,后续在解压时,能够根据第三标记获得同类型的等差序列的数量与不同类型的等差序列的数量的大小关系。
53.进一步,将三个标记设置在压缩序列的编码结果的最前面,获得压缩序列的编码序列;将压缩序列的编码序列存储在分布式存储系统的响应节点上,实现对文件数据的分布式存储。
54.例如:首个数据为1,则第一标记为1,第一个等差序列为第一等差序列,第一标记为0,相同类型的等差序列的数量不大于不同类型的等差序列的数量,第三标记为1,将三个标记设置在压缩序列的编码结果的最前面,则获得的压缩序列的编码序列为{101000110110110100100110}。
55.本发明的系统包括文件数据编码模块、压缩序列获取模块和压缩序列编码模块。本发明利用二进制数据的特点,通过累加值将二进制数据序列转换为由差值为0的等差序列和差值为1的等差序列组成的序列,将等差序列的长度作为游程,相较于没有转换之前,游程长度的数量减少,压缩后的数据量减少,提高游程编码对二进制数据的压缩效率,减少文件数据的数据量,使分布式存储管理系统能够存储更多的文件、数据传输效率更高、数据访问速度更快,进而降低分布式存储管理系统的存储成本,提高分布式存储管理系统的存储效率、用户体验和系统性能。
56.以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

技术特征:
1.一种文件数据分布式存储管理系统,其特征在于,所述系统包括:文件数据编码模块,对文件数据进行编码,获得二进制数据序列;压缩序列获取模块,通过二进制数据的累加和对二进制数据序列进行转换,获得转换序列;将转换序列划分为若干个等差序列;根据等差序列获得游程长度序列;在游程长度序列中增加标识符,获得压缩序列;压缩序列编码模块,对压缩序列进行编码获得编码序列;将压缩序列的编码序列存储在分布式存储系统的响应节点上,实现对文件数据的分布式存储。2.根据权利要求1所述的一种文件数据分布式存储管理系统,其特征在于,所述获得转换序列,包括的具体步骤如下:将二进制数据序列中前i个数据的累加和作为转换序列中的第i个数据,获得转换序列。3.根据权利要求1所述的一种文件数据分布式存储管理系统,其特征在于,所述将转换序列划分为若干个等差序列,包括的具体步骤如下:按照从左往右的顺序,将转换序列划分为若干个等差序列,等差序列包括差值为0的等差序列和差值为1的等差序列,将差值为0的等差序列记为第一等差序列,将差值为1的等差序列记为第二等差序列。4.根据权利要求1所述的一种文件数据分布式存储管理系统,其特征在于,所述根据等差序列获得游程长度序列,包括的具体步骤如下:将每个等差序列的长度作为游程长度,将所有游程长度按照顺序组成的序列记为游程长度序列。5.根据权利要求1所述的一种文件数据分布式存储管理系统,其特征在于,所述在游程长度序列中增加标识符,获得压缩序列,包括的具体步骤如下:按照等差序列的顺序,判断每个等差序列与前一个等差序列是否为相同类型的等差序列;根据同类型的等差序列的数量与不同类型的等差序列的数量的大小关系,确定如何添加标识符,具体为:如果相同类型的等差序列的数量小于不同类型的等差序列的数量,则对与前一个等差序列为相同类型的等差序列进行标记,在与前一个等差序列为相同类型的等差序列在游程长度序列中对应的游程长度前面添加标识符,否则,对与前一个等差序列为不同类型的等差序列进行标记,在与前一个等差序列为不同类型的等差序列在游程长度序列中对应的游程长度前面添加标识符;将添加标识符的游程长度序列记为压缩序列。6.根据权利要求1所述的一种文件数据分布式存储管理系统,其特征在于,所述对压缩序列进行编码获得编码序列,包括的具体步骤如下:将三个标记设置在压缩序列的编码结果的最前面,获得压缩序列的编码序列。7.根据权利要求6所述的一种文件数据分布式存储管理系统,其特征在于,所述压缩序列的编码结果的获取方法具体如下:根据霍夫曼编码表对压缩序列进行编码,获得压缩序列的编码结果。8.根据权利要求6所述的一种文件数据分布式存储管理系统,其特征在于,所述三个标记的获取方法具体如下:根据首个数据设置第一标记,如果首个数据为“0”,则第一标记为0,如果首个数据为

1”,则第一标记为1;根据第一个等差序列的类型设置第二标记,如果第一个等差序列为第一等差序列,则第二标记为0,如果第一个等差序列为第二等差序列,则第二标记为1;根据同类型的等差序列的数量与不同类型的等差序列的数量的大小关系设置第三标记,如果相同类型的等差序列的数量大于不同类型的等差序列的数量,则第三标记为0,如果相同类型的等差序列的数量不大于不同类型的等差序列的数量,则第三标记为1。9.根据权利要求7所述的一种文件数据分布式存储管理系统,其特征在于,所述霍夫曼编码表的获取方法具体如下:根据压缩序列中所有种游程长度的频数和标识符的频数构建霍夫曼树,根据霍夫曼树获得霍夫曼编码表。10.根据权利要求1所述的一种文件数据分布式存储管理系统,其特征在于,所述获得二进制数据序列,包括的具体步骤如下:对于需要进行分布式存储的文件,通过文本编码方式对文件中的所有文件数据进行编码,将文件中所有文件数据的编码结果按照顺序组成的序列,记为二进制数据序列。

技术总结
本发明涉及数据存储技术领域,具体涉及一种文件数据分布式存储管理系统,包括:对文件数据进行编码,获得二进制数据序列;通过二进制数据的累加和对二进制数据序列进行转换,获得转换序列;将转换序列划分为若干个等差序列;根据等差序列获得游程长度序列;在游程长度序列中增加标识符,获得压缩序列;对压缩序列进行编码获得编码序列,将压缩序列的编码序列存储在分布式存储系统的响应节点上,实现对文件数据的分布式存储。本发明提高游程编码对二进制数据的压缩效率,减少文件数据的数据量,降低分布式存储管理系统的存储成本,提高分布式存储管理系统的存储效率、用户体验和系统性能。统性能。统性能。


技术研发人员:戴威
受保护的技术使用者:武汉星碑科技有限公司
技术研发日:2023.08.29
技术公布日:2023/10/5
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐