CN101834898A - 一种网络分布式编码存储方法 - Google Patents

一种网络分布式编码存储方法 Download PDF

Info

Publication number
CN101834898A
CN101834898A CN201010159646A CN201010159646A CN101834898A CN 101834898 A CN101834898 A CN 101834898A CN 201010159646 A CN201010159646 A CN 201010159646A CN 201010159646 A CN201010159646 A CN 201010159646A CN 101834898 A CN101834898 A CN 101834898A
Authority
CN
China
Prior art keywords
block
information
server
row
blocks
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.)
Granted
Application number
CN201010159646A
Other languages
English (en)
Other versions
CN101834898B (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.)
Chengdu Information Technology Co Ltd of CAS
Original Assignee
Chengdu Information Technology Co Ltd of CAS
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 Chengdu Information Technology Co Ltd of CAS filed Critical Chengdu Information Technology Co Ltd of CAS
Priority to CN2010101596466A priority Critical patent/CN101834898B/zh
Publication of CN101834898A publication Critical patent/CN101834898A/zh
Application granted granted Critical
Publication of CN101834898B publication Critical patent/CN101834898B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种网络分布式编码存储方法,将文件保存至分布式系统中的n个服务器中,其中n≥4,且容许≤t/2个服务器出错时仍然能够保证存储数据的安全性,该方法包括如下步骤:对n个服务器进行编码;将欲存储的原文件均分成(n-t)×n个小块信息块;通过容错编码方法产生t×n个小块的校验块;在每n-t小块信息块后添加t小块校验块构成文件块;按编号顺序将文件块存储至n个服务器中。本发明相对于现有技术,首先,由于编码和译码操作只是在有限域上的简单异或和,没有增加太多的时间消耗;其次,在空间上,存储冗余度低但具备较强的容灾能力;再次,恢复某原文件后进行二次编码并存储至新服务器中,能达到可持续容灾的能力。

Description

一种网络分布式编码存储方法
技术领域
本发明涉及基于编码的信息安全网络存储领域,特别是涉及一种网络分布式编码存储方法。
背景技术
当今社会已经进入了信息时代,信息存储一直是人们所关心的重要问题,而提高存储的效率,安全性等是问题的中心。网络的发展带来了新的存储方式——网络存储,随着人们对网络的日渐依赖,网络存储与人们生活,学习,工作息息相关。而网络分布式存储系统更是研究的热门课题,其具备的高性能、高可靠性、高扩展性、透明性、自治性广受好评。
由于一些无法预测的偶发性灾难,可能导致存储数据的丢失,由此将造成难以估量的损失,如2008年的汶川地震,就对四川省的几个县市造成毁灭性的破坏,这些县市的很多重要资料都因存储设备的损毁而不复存在。在此提出一个新的定义,对这种防止因大型灾难丢失数据的行为称之为容灾。因此数据的备份以及恢复成了科研人员最重要的研究领域。当前世界防止数据丢失的主流方法是采用复制备份,在异地生成镜像备份、设置备份服务器等都是重要的备份手段。复制备份具有很有优点,读取方便,恢复速度快,消耗的时间少,效率高,而且硬盘空间价格的不断下降,也促成了这种容灾方法的成功。但复制方案备份还是存在着一些问题:
1、由于对突发性灾难预测的困难,存储备份数据的服务器也有可能遭到破坏,如果只复制一份,很可能和原始数据一起丢失,这样就需要多复制几份从而得到彻底地安全保证。一般地说,采用复制备份方案,复制n份就能容许n个服务器损毁。
2、当采用复制n份的方案来确保数据安全性时,必然造成空间的浪费,虽然当前空间上的价格持续下降,但本着环保绿色的发展观,也是需要尽可能降低空间的浪费。
发明内容
针对现有技术存在的问题,本发明的主要目的在于提供一种冗余度低且具备较强容灾能力的网络分布式编码存储方法。
为实现上述目的,本发明提供了一种网络分布式编码存储方法,将文件保存至分布式系统中的n个服务器中,其中n≥4,且容许≤t/2个服务器出错时仍然能够保证存储数据的安全性并正常提供服务,该网络分布式编码存储方法一实施例包括如下步骤:
(1)对n个服务器进行编号j,0≤j≤n-1;
(2)将欲分存入服务器的各个文件都均分为(n-t)×n个小块信息块,标记为ai,j,其中0≤i<n-t,0≤j<n,当无法均分数据文件时,在文件后面补零直至可以均分;
(3)生成一个参数为(n-t,n-1,t,(n-t)×t/(n-1))的码,即在一个(n-t)×(n-1)的矩阵中选取(n-t)×t个元素,使得每行有且只有t个元素值为1,而每列可以有
Figure GSA00000103316500021
Figure GSA00000103316500022
个值为1的元素。具体方法如下:①生成一个(n-t)×(n-1)的矩阵A,将第0列至第t-1列的所有元素赋值为1,其他元素赋值为0;②对t≤j<n-1,计算矩阵A第j列的权重xj,即数值为1的个数,如果第j列的权重xj小于(n-t)×t/(n-1),必然存在ai,j=0,ai,j′=1使得列j′的数值为1的个数>(n-t)×t/(n-1),其中0≤j′<n-1,且j′≠j,则赋值ai,j=1,ai,j′=0;③计算矩阵A每一列的权重的均值
Figure GSA00000103316500031
并计算矩阵A列重量的方差的平方
Figure GSA00000103316500032
④其中在进行步骤②之前先计算得到矩阵A最初的列重量的方差,然后重复步骤②,计算步骤②元素赋值后矩阵A列重量的方差并每计算得到一次方差,均与前一次方差进行比较,直到矩阵A列重量的方差保持不变,则得到参数为(n-t,n-1,t,(n-t)×t/(n-1))的码;
(4)随机记录步骤(3)所得到的编码矩阵A中所有值为1的元素坐标[p,q]为一个二元组合,将取得的二元组合保存为一个t×(n-t)的二维矩阵;
(5)根据步骤(4)得到的二维矩阵,其对应的信息块为ap,(q+j+1)mod n,将二维矩阵每一行所对应的信息块进行异或和操作即可获得一校验块,ai,j=⊕ap,(q+j+1)mod n,其中n-t≤i<n,0≤j<n,根据相同的方法对于原文件信息块的每一列均产生t块校验块,共有t×n块校验块;
(6)在每n-t小块原文件信息块后添加t小块校验块组成文件块,共同构成一个n×n的二维矩阵组;
(7)把步骤(6)中的二维矩阵组第j列的分块对应存储到第j号服务器中,分存成功。
另外,当需要读取数据时,则首先检测服务器是否存在出错或损毁;若服务器无出错或损毁,则按顺序拼接所有服务器的信息块,获取完整的原文件;若服务器存在出错或损毁,则通过现有服务器中存储的文件块译码获得缺失的信息块,再按顺序拼接信息块,获取完整的原文件,且译码获得缺失的信息块后,可将恢复的信息块进行二次容错编码,将二次容错编码后生成的文件块存储至新服务器中,以达到系统的可持续容灾。
而通过现有服务器中存储的文件块译码获得缺失的信息块,具体包括如下步骤:
(1)构造一个(n-t)×n的文件块二维数组,在相应的位置记录缺失的信息块,标记为“无”,而未缺失的信息块位置标记为“有”,记录剩余校验块的“度”,其中每块信息块视作“度为1”,而校验块的“度”由进行异或操作的信息块的数量得到;
(2)对所有“度”不等于0的校验块,检查它所校验的信息块是否缺失,将未缺失的信息块与相应校验块进行异或,每进行一次异或操作,将校验块的“度”减1,获得的“度”为1的校验块即为对应的缺失信息块,在文件块二维数组中将该恢复的信息块的位置标记改为“有”,同时将该校验块的“度”置为0,并丢弃;
(3)重复步骤(2),将新获得的信息块与相应校验块进行异或,降低“度”值,恢复出其它丢失的信息块,直到文件块二维数组中信息块的位置全标记为“有”;
(4)当文件块二维数组中信息块的位置全标记为“有”时,即得到原文件的所有信息块,译码成功。
本发明相对于现有技术,首先,由于在数据分存过程中增加了编码,且通过译码进行恢复数据,而无论是编码操作还是译码操作也只是在有限域上的简单异或和,并没有复杂计算,也没有增加过多的步骤,这样系统复杂度大大降低,没有增加太多的时间消耗,能满足“常写常读”的环境;其次,在空间上,可以将存储的信息视为共有n块,其中k块为原文件信息块,t块为校验块,k+t=n,采用本编码方法生成的t<k,因此冗余比例n∶k<2(即存储空间不到原文件大小的两倍),且容灾能力可达t/2(即当有少于t/2的服务器出现故障或遭遇损毁时,完全可以利用剩余服务器中存储的文件块进行恢复得到所有的原始数据文件),冗余度低但具备较强的容灾能力;再次,恢复某原文件后立即对该文件进行二次编码并存储至新服务器中,这样能达到可持续容灾的能力。
附图说明
图1为本发明的分布式系统一实施例的组织结构示意图
图2为本发明网络分布式编码存储方法流程图
图3为本发明原文件分块示意图
图4为本发明校验块生成示意图
图5为本发明文件块存储示意图
图6为本发明数据读取及容灾能力恢复流程图
图7为本发明无服务器出错时数据读取示意图
图8为本发明有服务器出错时译码恢复信息块示意图
图9为本发明有服务器出错时数据读取示意图
图10为本发明有服务器出错时容灾能力恢复示意图
具体实施方式
下面结合附图,详细说明本发明的具体实施方式。
图1为本发明的分布式系统一实施例的组织结构示意图,本发明的网络分布式编码存储方法可应用于由若干服务器、PC机等组成的广域网或局域网环境中,由此形成网络分布式存储系统。
如图2所示,为本发明网络分布式编码存储方法流程图。使用该方法可将文件保存至如图1所示的网络分布式存储系统中,该网络分布式存储系统包含n个服务器,其中n≥4,且容许≤t/2个服务器出错时仍然能够保证存储数据的安全性并正常提供服务,则该网络分布式编码存储方法包括如下步骤:
S21、对n个服务器进行编号j,0≤j≤n-1;
S22、将欲存储的原文件均分成(n-t)×n个小块信息块,标记为ai,j,其中0≤i<n-t,0≤j<n,当无法均分数据文件时,在文件后面补零直至可以均分。如图3所示,为本发明原文件分块示意图,即首先将原文件分成(n-t)×n个小块,按顺序为块0、块1、块2,直至块(n-t)*n-3、(n-t)*n-2、(n-t)*n-1,其次将这(n-t)×n个小块信息块依次按(n-t)×n的二维矩阵排列,可以按行分排,也可以按列分排。如按行分排,则将信息块按顺序首先排满第一行,再排第二行,直至第n-t行,即将块0排列为a0,0,块1排列为a0,1,......块n-1排列为a0,n-1,而块n排列为第二行第一列,即a1,0,依次类推,直至an-t-1,n-1;如按列排列,则将信息块按顺序首先排满第一列,再排第二列,直至第n-1列,即将块0排列为a0,0,块1排列为a1,0,......块n-t排列为an-t-1,0,而块n-t+1排列为第一行第二列,即a0,1,依次类推,直至an-t-1,n-1
S23、通过容错编码方法产生t×n个小块的校验块,具体包含步骤(1)~步骤(3)这三个步骤:
步骤(1)、生成一个参数为(n-t,n-1,t,(n-t)×t/(n-1))的码,即在一个(n-t)×(n-1)的矩阵中选取(n-t)×t个元素,使得每行有且只有t个元素值为1,而每列可以有
Figure GSA00000103316500061
Figure GSA00000103316500062
个值为1的元素。具体方法如下:①生成一个(n-t)×(n-1)的矩阵A,将第0列至第t-1列的所有元素赋值为1,其他元素赋值为0;②对t≤j<n-1,计算矩阵A第j列的权重xj,即数值为1的个数,如果第j列的权重xj小于(n-t)×t/(n-1),必然存在ai,j=0,ai,j′=1使得列j′的数值为1的个数>(n-t)×t/(n-1),其中0≤j′<n-1,且j′≠j,则赋值ai,j=1,ai,j′=0;③计算矩阵A每一列的权重的均值并计算矩阵A列重量的方差的平方
Figure GSA00000103316500071
④其中在进行步骤②之前先计算得到矩阵A最初的列重量的方差,然后重复步骤②,计算步骤②元素赋值后矩阵A列重量的方差并每计算得到一次方差,均与前一次方差进行比较,直到矩阵A列重量的方差保持不变,则得到参数为(n-t,n-1,t,(n-t)×t/(n-1))的码;
步骤(2)、随机记录步骤(1)所得到的编码矩阵A中所有值为1的元素坐标[p,q]为一个二元组合,将取得的二元组合保存为一个t×(n-t)的二维矩阵;
步骤(3)、根据步骤(2)得到的二维矩阵,其对应的信息块为ap,(q+j+1)mod n,将二维矩阵每一行所对应的信息块进行异或和操作即可获得一校验块,ai,j=⊕ap,(q+j+1)mod n,其中n-t≤i<n,0≤j<n,根据相同的方法对于原文件信息块的每一列均产生t块校验块,共有t×n块校验块;
如图4所示,为本发明校验块生成示意图,当信息块按ai,j(0≤i<n-t,0≤j<n)的二维矩阵排列好后,再按照步骤S23所述的编码方法对信息块进行异或和操作,得到t×n块校验块。
S24、在每n-t小块信息块后添加t小块校验块构成文件块,共同构成一个n×n的二维矩阵组,如图4所示,每一列的前n-t块为信息块,后t块为校验块;
S25、按编号顺序将文件块存储至n个服务器中,把矩阵组第j列的分块对应存储到第j号服务器中,分存成功。如图5所示,为本发明文件块存储示意图。将信息块a0,0~信息块an-t-1,0,及其校验块an-t,0~校验块an-1,0存入服务器0,直至将信息块a0,n-1~信息块an-t-1,n-1,及其校验块an-t,n-1~校验块an-1,n-1存入服务器n,分存完毕。
如图6所示,为本发明数据读取及容灾能力恢复流程图,具体包括如下步骤:
S61、当需要读取数据时,首先检测服务器是否存在出错或损毁,若服务器无出错或损毁,则至S62,否则,至S63;
S62、按顺序拼接所有服务器的信息块;
S64、获取完整的原文件。
如图7所示,为本发明无服务器出错时数据读取示意图。首先,获取n个服务器中存储的文件块,其中包含(n-t)*n个信息块和t*n个校验块,共同组成n*n的二维矩阵;其次,将信息块取出按顺序排列,这里的排列即存储阶段步骤S22的反向操作。举例来说,若存储阶段步骤S22是按行分排,则此处即将a0,0恢复成块0,a0,1恢复成块1,......,a0,n-1恢复成块n-1,直至an-t-1,n-1恢复成块(n-t)*n-1;若存储阶段步骤S22是按列分排,此处则将a0,0恢复成块0,a1,0恢复成块1,......,an-t-1,0恢复成块n-t,直至an-t-1,n-1恢复成块(n-t)*n-1;最后将块0、块1......块(n-t)*n-2、块(n-t)*n-1按顺序合并即获得完整的原文件。
S63、译码获取缺失的信息块,该译码过程包括如下步骤(1)~步骤(4):
步骤(1)、构造一个(n-t)×n的文件块二维数组,在相应的位置记录缺失的信息块,标记为“无”,而未缺失的信息块位置标记为“有”,记录剩余校验块的“度”,其中每块信息块视作“度为1”,而校验块的“度”由进行异或操作的信息块的数量得到;
步骤(2)、对所有“度”不等于0的校验块,检查它所校验的信息块是否缺失,将未缺失的信息块与相应校验块进行异或,每进行一次异或操作,将校验块的“度”减1,获得的“度”为1的校验块即为对应的缺失信息块,在文件块二维数组中将该恢复的信息块的位置标记改为“有”,同时将该校验块的“度”置为0,并丢弃;
步骤(3)、重复步骤(2),将新获得的信息块与相应校验块进行异或,降低“度”值,恢复出其它丢失的信息块,直到文件块二维数组中信息块的位置全标记为“有”;
步骤(4)、当文件块二维数组中信息块的位置全标记为“有”时,即得到原文件的所有信息块,译码成功。
如图8所示,为本发明有服务器出错时译码恢复信息块示意图,按照步骤S63的译码过程将现有的信息块和相应的校验块进行异或操作来获取丢失的信息块并放在相应的位置。
S62、按顺序拼接所有服务器的信息块和通过译码恢复的信息块;
S64、获取完整的原文件。
如图9所示,为本发明有服务器出错或损毁时数据读取示意图。首先,获取目前现有的服务器中存储的文件块,包括信息块和校验块,如服务器j出错或损毁,则服务器j中存储的信息块a0,j~信息块an-t-1,j,及其校验块an-t,j~校验块an-1,j均丢失;其次,按照步骤S63的译码过程利用现有的信息块和相应的校验块进行异或操作来获取丢失的信息块,如恢复本例中服务器j对应的信息块a0,j~信息块an-t-1,j,并将其排在服务器j对应的位置;再次,将所有信息块取出按顺序排列,这里排列方法与图7中本发明无服务器出错时数据读取时的排列方法相同,这里不再赘述。最后,将块0、块1......块(n-t)*n-2、块(n-t)*n-1按顺序合并即获得完整的原文件。
S65、二次编码获得缺失的文件块。即当译码获得缺失的信息块后,采用与图2中步骤S23相同的方法进行二次编码,恢复丢失的校验块,如服务器j丢失或损毁,即通过译码方法获得缺失的信息块a0,j~信息块an-t-1,j后,再采用二次容错编码产生缺失的校验块an-t,j~校验块an-1,j,将校验块an-t,j~校验块an-1,j放在信息块a0,j~信息块an-t-1,j的后面,使服务器j中丢失的文件块完全恢复;
S66、将编码获得的文件块存储至新服务器中,以达到系统的可持续容灾。
如图10所示,为本发明有服务器出错时容灾能力恢复示意图。当检测到服务器存储出错或损毁时,首先,获取目前现有的服务器中存储的文件块,包括信息块和校验块,如服务器j出错或损毁,则服务器j中存储的信息块a0,j~信息块an-t-1,j,及其校验块an-t,j~校验块an-1,j均丢失;其次,按照步骤S63的译码过程利用现有的信息块和相应的校验块进行异或操作来获取丢失的信息块,如本例中恢复服务器j对应的信息块a0,j~信息块an-t-1,j,并将其排在服务器j对应的位置;再次,采用与图2中步骤S23相同的方法进行二次编码,产生丢失的校验块,如本例中采用二次容错编码恢复缺失的校验块an-t,j~校验块an-1,j,将校验块an-t,j~校验块an-1,j放在信息块a0,j~信息块an-t-1,j的后面,使服务器j中丢失的文件块完全恢复;最后,准备新服务器j,将译码和二次编码后获得的文件块,即信息块a0,j~信息块an-t-1,j以及校验块an-t,j~校验块an-1,j存储至新服务器j中,以达到系统的可持续容灾。
下面对本发明的优选实施例作进一步的描述。
实施例1
在广域网上(也可为局域网)设置一个包含n=31个服务器的网络分布式系统,目标为当t/2=5个服务器出错时仍然能够保证存储数据的安全性并提供正常服务,此时t=10。
所述网络分布式编码存储方法包括如下步骤:
对31个服务器进行编码j,0≤j≤30;
对欲存储入服务器的各个文件进行分块处理,通过补零均分为21×31块,记为a0,0,a0,1,…a1,0,a1,1,…a20,0,…a20,30
生成一个参数为(21,30,10,7)的码,具体方法如下:
构造一个21×30的矩阵A,将第0列至第9列的所有元素赋值为1,其它元素赋值为0,矩阵A如下所示:
Figure GSA00000103316500111
计算上述矩阵A每一列的权重xj,即值为1的元素数量:x0~x9=21,x10~x29=0;矩阵A每一列权重的平均值
Figure GSA00000103316500112
矩阵A列重量的方差的平方初始值:
Figure GSA00000103316500113
Figure GSA00000103316500114
对j从列10到列29,计算矩阵A第j列的值为1的元素数量(x10~x29=0),如果第j列的数值为1的个数小于7,必然存在ai,j=0,ai,j′=1使得列j′的数值为1的个数>7,其中j′为在列0与列29之间的某一列,且j′≠j,则赋值ai,j=1,ai,j′=0,举例i从行(n-t)×t/(n-1),即行7开始计算,即赋值a7,10=1,a7,0=0,结果如下:
继续计算上述矩阵A每一列的权重xj,此时x0=20,x1~x9=21,x10=1,x11~x29=0;矩阵A每一列权重的的平均值
Figure GSA00000103316500122
矩阵A列重量的方差的平方:
Figure GSA00000103316500123
Figure GSA00000103316500124
判断元素赋值运算后的矩阵A列重量的方差S1和最初的方差S0是否相等,因二者不相等,继续计算i=8,依次类推,当第10列的数值为1的个数等于7时,结果如下:
Figure GSA00000103316500131
根据相同的方法计算第11列,直到第29列,每进行一次元素赋值运算,便计算得到一次方差,将计算得到的方差与前一次方差进行比较,直到矩阵A列重量的方差保持不变,则得到参数为(21,30,10,7)的码,最终结果如下:
随机记录上述编码矩阵A中所有值为1的元素坐标,并保存为一个10×21二维二元组集合,该二维二元组集合举例如下:
Array1=[0,0][1,0][3,0][4,0][5,7][11,10][12,10][9,10][12,12][13,14][14,20][18,20][15,20][19,20][20,20][18,21][14,21][19,22][15,22][20,24][15,28]
Array2=[6,0][2,0][5,0][0,1][4,1][1,1][4,2][1,2][3,2][10,10][13,10][9,11][9,12][9,13][9,14][12,17][17,20][19,21][18,22][15,23][14,26]
Array3=[5,1][3,1][2,1][5,2][1,3][4,3][1,4][1,7][7,10][8,10][10,11][11,11][13,11][8,11][9,15][11,19][15,21][20,21][19,23][15,24][15,25]
Array4=[6,1][0,2][3,3][5,3][0,3][4,4][3,4][1,5][4,5][1,6][7,11][13,12][11,12][8,13][13,13][11,13][13,15][16,20][17,21][17,22][15,26]
Array5=[6,2][6,3][0,4][5,4][6,4][6,5][4,6][12,11][8,12][7,12][12,13][12,14][9,16][13,16][9,17][9,19][16,21][20,22][14,22][17,23][20,23]
Array6=[2,2][3,5][0,5][6,6][4,7][5,8][1,8][4,8][1,9][10,12][10,16][8,17][9,18][16,22][16,23][19,24][20,25][20,26][15,27][20,27][15,29]
Array7=[2,3][2,4][5,5][0,6][6,7][0,7][6,8][6,9][7,13][10,13][8,14][10,14][12,15][10,15][13,17][14,23][17,24][14,24][16,24][19,25][19,26]
Array8=[3,6][0,8][4,9][0,9][7,14][11,14][7,15][7,16][10,17][10,18][10,19][18,23][17,25][16,25][14,25][17,26][16,26][17,27][20,28][16,29][20,29]
Array9=[2,5][5,6][2,6][3,7][5,9][11,15][8,15][12,16][11,16][7,17][12,18][13,18][7,18][12,19][7,19][18,24][14,27][16,27][14,28][16,28][17,28]
Array10=[2,7][3,8][2,8][2,9][3,9][8,16][11,17][8,18][11,18][8,19][13,19][18,25][18,26][19,27][18,27][19,28][18,28][17,29][14,29][18,29][19,29]
该二元组集合所对应的信息块为ap,(q+j+1)mod n,将二元组集合每一行所对应的信息块进行异或和操作即可获得一校验块,即校验块ai,j=⊕ap,(q+j+1)mod n(21≤i<31,0≤j<31),该校验块记录为a21,0,a21,1,…a30,0…a30,30,举例如下:
Array1=[0,0][1,0][3,0][4,0][5,7][11,10][12,10][9,10][12,12][13,14][14,20][18,20][15,20][19,20][20,20][18,21][14,21][19,22][15,22][20,24][15,28]
则:a21,0=a0,1⊕a1,1⊕a3,1⊕a4,1⊕a5,8⊕a11,11⊕…⊕a20,25⊕a15,29,“度”为21;
Array2=[6,0][2,0][5,0][0,1][4,1][1,1][4,2][1,2][3,2][10,10][13,10][9,11][9,12][9,13][9,14][12,17][17,20][19,21][18,22][15,23][14,26]
则:a22,0=a6,1⊕a2,1⊕a5,1⊕a0,2⊕a4,2⊕a1,2⊕…⊕a15,24⊕a14,27,“度”为21;
……
Array4=[6,1][0,2][3,3][5,3][0,3][4,4][3,4][1,5][4,5][1,6][7,11][13,12][11,12][8,13][13,13][11,13][13,15][16,20][17,21][17,22][15,26]
则a24,20=a6,22⊕a0,23⊕a3,24⊕a5,24⊕a0,24⊕a4,25⊕…⊕a17,12⊕a15,16,“度”为21;
……
Array10=[2,7][3,8][2,8][2,9][3,9][8,16][11,17][8,18][11,18][8,19][13,19][18,25][18,26][19,27][18,27][19,28][18,28][17,29][14,29][18,29][19,29]
则a30,30=a2,7⊕a3,8⊕a2,8⊕a2,9⊕a3,9⊕a8,16⊕a11,17⊕…⊕a18,29⊕a19,29,“度”为21。
至此编码过程完成,共生成10×31块校验块。
由21×31块原文件信息块和10×31块校验块,共同构成一个31×31的二维矩阵组;
将信息块为a0,j~a20,j和校验块为a21,j~a30,j对应分存到服务器j中,直到31个服务器都分存完毕。此时该原文件存储过程结束,并满足容错5个服务器的能力。
当服务器无出错或损毁,即无任何数据丢失的情况下,若用户需要读取该原文件时,若原文件分块时按行排列,则依次读取信息块a0,0,a0,1,…a1,0,a1,1,…a20,0,…a20,30,进行串联合并即可得到原文件;若原文件分块时按列排列,则依次读取信息块a0,0,a1,0,…a0,1,a1,1,…a0,20,…a20,30,进行串联合并即可得到原文件。
当有服务器出错或损毁时,若用户需要读取该原文件,则首先需要译码出丢失的信息块。假如有5个服务器出错或损毁,里面存储的信息块和校验块均丢失时,假设编号为0,8,13,20,29的服务器出错,首先需要译码出编号为0,8,13,20,29的服务器中包含的信息块,方法如下(对存储于服务器中的每个信息块均采取下述方法):
构造一个21×31的文件信息块二维数组,在相应位置记录被删除的文件块,标记为“无”,而未删除的文件位置标记为“有”,记录剩余校验块的“度”,剩余校验块“度”的初始值为21;
选择一个剩余的“度”不为0的校验块,根据编码步骤中得到的10×21的二维二元组矩阵和上述步骤中的信息块二维数组中标记的信息块“有”、“无”值来检查它所校验的信息块是否丢失,将未丢失的信息块与相应校验块进行异或,每进行一次异或操作,将校验块的“度”减1,获得的“度”为1的校验块即为对应的缺失信息块,在文件信息块数组中将该恢复的信息块的位置标记改为“有”,同时将该校验块的“度”置为0,并丢弃,例如:
由a22,1=a6,2⊕a2,2⊕a5,2⊕a0,3⊕a4,3⊕a1,3⊕…⊕a9,13⊕…⊕a15,25⊕a14,28,该校验块a22,1,该校验块的“度”为21,可以发现a9,13信息块处于出错服务器13上,将现有的信息块a6,2、a2,2、a5,2、a0,3、a4,3、a1,3…a15,25、a14,28分别与a22,1异或,每进行一次异或操作,将校验块的“度”减1,直至校验块的度为“1”,则得到丢失的信息块a9,13,将文件信息块数组中位置为[9,13]的元素标记为“有”。另外,若某校验块对应的缺失的信息块数量不止一个,则某校验块与相应存在的信息块进行异或操作后不能马上得到缺失的信息块,此时需要将运算结果与相关的其它校验块继续进行异或操作,来降低“度”,直至“度”为1;
同理,依次由各个剩余“度”不为0的校验块恢复出丢失的信息块,直到文件信息块数组的文件位置全标记为“有”,至此所有信息块都已恢复,则译码过程成功。
译码成功后,再将所有的信息块,包括原有的和译码恢复的信息块重新按顺序排列即可得到原文件。若原文件分块时按行排列,则依次读取信息块a0,0,a0,1,…a1,0,a1,1,…a20,0,…a20,30,进行串联合并即可得到原文件;若原文件分块时按列排列,则依次读取信息块a0,0,a1,0,…a0,1,a1,1,…a0,20,…a20,30,进行串联合并即可得到原文件。
最后,准备5台新的服务器0、8、13、20、29,采用与上面所述相同的方法进行二次编码,产生丢失的校验块,即服务器0信息块对应的校验块为a21,0~a30,0,服务器8信息块对应的校验块为a21,8~a30,8,服务器13信息块对应的校验块为a21,13~a30,13,服务器20信息块对应的校验块为a21,20~a30,20,服务器29信息块对应的校验块为a21,29~a30,29,将校验块a21,0~a30,0放在信息块a0,0~a20,0的后面,使服务器0中丢失的文件块完全恢复,并放入服务器0中,以此类推,将恢复的文件块依次放入服务器8、13、20、29,以达到系统的可持续容灾。
实施例2
该实施例2与实施例1的区别在于在生成参数为(21,30,10,7)的码时,当j从列10到列29,第j列的数值为1的个数小于7时,元素的赋值运算i从第0行开始计算,下面只描述与实施例1的不同之处,相同之处不再赘述。
对j从列10到列29,计算矩阵A第j列的值为1的元素数量(x10~x29=0),如果第j列的数值为1的个数小于7,必然存在ai,j=0,ai,j′=1使得列j′的数值为1的个数>7,其中j′为在列0与列29之间的某一列,且j′≠j,则赋值ai,j=1,ai,j′=0,i从第0行开始计算,即赋值a0,10=1,a0,0=0,结果如下:
Figure GSA00000103316500191
计算上述矩阵A每一列的权重xj,此时x0=20,x1~x9=21,x10=1,x11~x29=0;矩阵A每一列权重的平均值
Figure GSA00000103316500192
矩阵A列重量的方差的平方:
Figure GSA00000103316500193
判断变换后的矩阵A列重量的方差S1和最初的方差S0是否相等,因二者不相等,继续计算i=2,依次类推,当第10列的数值为1的个数等于7,结果如下:
Figure GSA00000103316500201
根据相同的方法计算第11列,直到第29列,每进行一次元素赋值运算,便计算得到一次方差,将计算得到的方差与前一次方差进行比较,直到矩阵A列重量的方差保持不变,则得到参数为(21,30,10,7)的码,最终结果如下:
Figure GSA00000103316500211
以上介绍了网络分布式编码存储方法。但本发明并不限定于以上实施例,任何未脱离本发明技术方案,即仅仅对其进行本领域普通技术人员所知悉的改进或变更,均属于本发明的保护范围之内。

Claims (5)

1.一种网络分布式编码存储方法,将文件保存至分布式系统中的n个服务器中,其中n≥4,且容许≤t/2个服务器出错时仍然能够保证存储数据的安全性并正常提供服务,其特征在于,所述网络分布式编码存储方法包括如下步骤:
(1)对n个服务器进行编号j,0≤j≤n-1;
(2)将欲分存入服务器的各个文件都均分为(n-t)×n个小块信息块,标记为ai,j,其中0≤i<n-t,0≤j<n,当无法均分数据文件时,在文件后面补零直至可以均分;
(3)生成一个参数为(n-t,n-1,t,(n-t)×t/(n-1))的码,具体方法如下:①生成一个(n-t)×(n-1)的矩阵A,将第0列至第t-1列的所有元素赋值为1,其他元素赋值为0;②对t≤j<n-1,计算矩阵A第j列的权重xj,即数值为1的个数,如果第j列的权重xj小于(n-t)×t/(n-1),必然存在ai,j=0,ai,j′=1使得列j′的数值为1的个数>(n-t)×t/(n-1),其中0≤j′<n-1,且j′≠j,则赋值ai,j=1,ai,j′=0;③计算矩阵A每一列的权重的均值
Figure FSA00000103316400011
并计算矩阵A列重量的方差的平方
其中在进行步骤②之前先计算得到矩阵A最初的列重量的方差,然后重复步骤②,计算步骤②元素赋值后矩阵A列重量的方差并每计算得到一次方差,均与前一次方差进行比较,直到矩阵A列重量的方差保持不变,则得到参数为(n-t,n-1,t,(n-t)×t/(n-1))的码;
(4)随机记录步骤(3)所得到的编码矩阵A中所有值为1的元素坐标[p,q]为一个二元组合,将取得的二元组合保存为一个t×(n-t)的二维矩阵;
(5)根据步骤(4)得到的二维矩阵,其对应的信息块为ap,(q+j+1)modn,将二维矩阵每一行所对应的信息块进行异或和操作即可获得一校验块,ai,j=⊕ap,(q+j+1)mod n,其中n-t≤i<n,0≤j<n,根据相同的方法对于原文件信息块的每一列均产生t块校验块,共有t×n块校验块;
(6)在每n-t小块原文件信息块后添加t小块校验块组成文件块,共同构成一个n×n的二维矩阵组;
(7)把步骤(6)中的二维矩阵组第j列的分块对应存储到第j号服务器中,分存成功。
2.根据权利要求1所述的网络分布式编码存储方法,其中生成一个参数为(n-t,n-1,t,(n-t)×t/(n-1))的码,即在一个(n-t)×(n-1)的矩阵中选取(n-t)×t个元素,使得每行有且只有t个元素值为1,而每列可以有
Figure FSA00000103316400022
个值为1的元素。
3.根据权利要求2所述的网络分布式编码存储方法,其特征在于,所述网络分布式编码存储方法还包括如下步骤:
当需要读取数据时,先检测服务器是否存在出错或损毁;
若服务器无出错或损毁,则按顺序拼接所有服务器的信息块,获取完整的原文件;
若服务器存在出错或损毁,则通过现有服务器中存储的文件块译码获得缺失的信息块,再按顺序拼接信息块,获取完整的原文件。
4.根据权利要求3所述的网络分布式编码存储方法,其特征在于,当服务器存在出错或损毁,通过现有服务器中存储的文件块译码获得缺失的信息块后,可将恢复的信息块进行二次容错编码,将二次容错编码后生成的文件块存储至新服务器中。
5.根据权利要求3或4任一所述的网络分布式编码存储方法,其特征在于,步骤通过现有服务器中存储的文件块译码获得缺失的信息块,具体包括如下步骤:
(1)构造一个(n-t)×n的文件块二维数组,在相应的位置记录缺失的信息块,标记为“无”,而未缺失的信息块位置标记为“有”,记录剩余校验块的“度”,其中每块信息块视作“度为1”,而校验块的“度”由进行异或操作的信息块的数量得到;
(2)对所有“度”不等于0的校验块,检查它所校验的信息块是否缺失,将未缺失的信息块与相应校验块进行异或,每进行一次异或操作,将校验块的“度”减1,获得的“度”为1的校验块即为对应的缺失信息块,在文件块二维数组中将该恢复的信息块的位置标记改为“有”,同时将该校验块的“度”置为0,并丢弃;
(3)重复步骤(2),将新获得的信息块与相应校验块进行异或,降低“度”值,恢复出其它丢失的信息块,直到文件块二维数组中信息块的位置全标记为“有”;
(4)当文件块二维数组中信息块的位置全标记为“有”时,即得到原文件的所有信息块,译码成功。
CN2010101596466A 2010-04-29 2010-04-29 一种网络分布式编码存储方法 Expired - Fee Related CN101834898B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2010101596466A CN101834898B (zh) 2010-04-29 2010-04-29 一种网络分布式编码存储方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2010101596466A CN101834898B (zh) 2010-04-29 2010-04-29 一种网络分布式编码存储方法

Publications (2)

Publication Number Publication Date
CN101834898A true CN101834898A (zh) 2010-09-15
CN101834898B CN101834898B (zh) 2013-01-30

Family

ID=42718826

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010101596466A Expired - Fee Related CN101834898B (zh) 2010-04-29 2010-04-29 一种网络分布式编码存储方法

Country Status (1)

Country Link
CN (1) CN101834898B (zh)

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102055797A (zh) * 2010-11-29 2011-05-11 北京卓微天成科技咨询有限公司 一种云存储的数据存取的方法、装置及系统
CN102279777A (zh) * 2011-08-18 2011-12-14 成都市华为赛门铁克科技有限公司 数据冗余处理方法、装置和分布式存储系统
CN102624866A (zh) * 2012-01-13 2012-08-01 北京大学深圳研究生院 一种存储数据的方法、装置及分布式网络存储系统
CN102685199A (zh) * 2012-01-18 2012-09-19 吴昊 一种基于网络多节点的文件安全存储方法
CN103034814A (zh) * 2012-12-11 2013-04-10 浙江大学 一种数据存取方法
CN103257927A (zh) * 2012-11-12 2013-08-21 盛吉高科(北京)科技有限公司 一种针对通信访问的数据管理系统
WO2013159341A1 (zh) * 2012-04-27 2013-10-31 北京大学深圳研究生院 基于同态的自修复码的编码、解码和数据修复方法及其存储系统
WO2014005279A1 (zh) * 2012-07-03 2014-01-09 北京大学深圳研究生院 一种可精确再生的分布式存储码的构建方法及装置
CN103688514A (zh) * 2013-02-26 2014-03-26 北京大学深圳研究生院 一种最小存储再生码的编码和存储节点修复方法
CN103688515A (zh) * 2013-03-26 2014-03-26 北京大学深圳研究生院 一种最小带宽再生码的编码和存储节点修复方法
WO2015100627A1 (zh) * 2013-12-31 2015-07-09 华为技术有限公司 一种分布式文件存储系统中的数据处理方法及设备
CN105530294A (zh) * 2015-12-04 2016-04-27 中科院成都信息技术股份有限公司 一种海量数据分布式存储的方法
CN105786656A (zh) * 2016-02-17 2016-07-20 中科院成都信息技术股份有限公司 基于随机矩阵的独立磁盘冗余阵列容灾存储方法
WO2016201639A1 (zh) * 2015-06-17 2016-12-22 华为技术有限公司 分布式数据存储方法、控制设备和系统
CN107295070A (zh) * 2017-05-31 2017-10-24 上海交通大学 文件大小异构的分布式编码缓存放置方法及系统
CN108141228A (zh) * 2015-10-09 2018-06-08 华为技术有限公司 分布式存储系统的编码
CN108809517A (zh) * 2018-05-22 2018-11-13 泰康保险集团股份有限公司 一种区块链网络中的信息获取方法及装置
CN109582646A (zh) * 2018-09-14 2019-04-05 唐学军 一种用于文件拆分的冗余和恢复方法及系统
CN110837660A (zh) * 2019-11-05 2020-02-25 广东紫晶信息存储技术股份有限公司 一种数据存储方法及系统、数据校验方法及系统
WO2020113470A1 (zh) * 2018-12-05 2020-06-11 深圳大学 一种数据分块方法、装置及终端设备
CN111435323A (zh) * 2019-01-15 2020-07-21 阿里巴巴集团控股有限公司 信息的传输方法、装置、终端、服务器及存储介质
CN112889033A (zh) * 2018-10-15 2021-06-01 Netapp股份有限公司 提高具有变化的数据冗余方案的系统中的可用存储空间

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6158017A (en) * 1997-07-15 2000-12-05 Samsung Electronics Co., Ltd. Method for storing parity and rebuilding data contents of failed disks in an external storage subsystem and apparatus thereof
CN101316274A (zh) * 2008-05-12 2008-12-03 华中科技大学 一种适用于广域网的数据容灾系统
CN101387975A (zh) * 2008-10-20 2009-03-18 中科院成都信息技术有限公司 一种磁盘阵列系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6158017A (en) * 1997-07-15 2000-12-05 Samsung Electronics Co., Ltd. Method for storing parity and rebuilding data contents of failed disks in an external storage subsystem and apparatus thereof
CN101316274A (zh) * 2008-05-12 2008-12-03 华中科技大学 一种适用于广域网的数据容灾系统
CN101387975A (zh) * 2008-10-20 2009-03-18 中科院成都信息技术有限公司 一种磁盘阵列系统

Cited By (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102055797A (zh) * 2010-11-29 2011-05-11 北京卓微天成科技咨询有限公司 一种云存储的数据存取的方法、装置及系统
CN102279777A (zh) * 2011-08-18 2011-12-14 成都市华为赛门铁克科技有限公司 数据冗余处理方法、装置和分布式存储系统
WO2013023516A1 (zh) * 2011-08-18 2013-02-21 华为数字技术(成都)有限公司 数据冗余处理方法、装置和分布式存储系统
CN102624866B (zh) * 2012-01-13 2014-08-20 北京大学深圳研究生院 一种存储数据的方法、装置及分布式网络存储系统
CN102624866A (zh) * 2012-01-13 2012-08-01 北京大学深圳研究生院 一种存储数据的方法、装置及分布式网络存储系统
WO2013104135A1 (zh) * 2012-01-13 2013-07-18 北京大学深圳研究生院 一种存储数据的方法、装置及分布式网络存储系统
CN102685199A (zh) * 2012-01-18 2012-09-19 吴昊 一种基于网络多节点的文件安全存储方法
CN102685199B (zh) * 2012-01-18 2015-09-02 南京交通职业技术学院 一种基于网络多节点的文件安全存储方法
CN103650462B (zh) * 2012-04-27 2016-12-14 北京大学深圳研究生院 基于同态的自修复码的编码、解码和数据修复方法及其存储系统
WO2013159341A1 (zh) * 2012-04-27 2013-10-31 北京大学深圳研究生院 基于同态的自修复码的编码、解码和数据修复方法及其存储系统
CN103650462A (zh) * 2012-04-27 2014-03-19 北京大学深圳研究生院 基于同态的自修复码的编码、解码和数据修复方法及其存储系统
WO2014005279A1 (zh) * 2012-07-03 2014-01-09 北京大学深圳研究生院 一种可精确再生的分布式存储码的构建方法及装置
CN103257927B (zh) * 2012-11-12 2015-08-12 盛吉高科(北京)科技有限公司 一种针对通信访问的数据管理系统
CN103257927A (zh) * 2012-11-12 2013-08-21 盛吉高科(北京)科技有限公司 一种针对通信访问的数据管理系统
CN103034814A (zh) * 2012-12-11 2013-04-10 浙江大学 一种数据存取方法
CN103034814B (zh) * 2012-12-11 2015-10-21 浙江大学 一种数据存取方法
CN103688514B (zh) * 2013-02-26 2017-07-11 北京大学深圳研究生院 一种最小存储再生码的编码和存储节点修复方法
WO2014131148A1 (zh) * 2013-02-26 2014-09-04 北京大学深圳研究生院 一种最小存储再生码的编码和存储节点修复方法
CN103688514A (zh) * 2013-02-26 2014-03-26 北京大学深圳研究生院 一种最小存储再生码的编码和存储节点修复方法
WO2014153716A1 (zh) * 2013-03-26 2014-10-02 北京大学深圳研究生院 一种最小带宽再生码的编码和存储节点修复方法
CN103688515A (zh) * 2013-03-26 2014-03-26 北京大学深圳研究生院 一种最小带宽再生码的编码和存储节点修复方法
CN103688515B (zh) * 2013-03-26 2016-10-05 北京大学深圳研究生院 一种最小带宽再生码的编码和存储节点修复方法
WO2015100627A1 (zh) * 2013-12-31 2015-07-09 华为技术有限公司 一种分布式文件存储系统中的数据处理方法及设备
AU2013409624B2 (en) * 2013-12-31 2016-11-17 Huawei Technologies Co., Ltd. Data processing method and device in distributed file storage system
US10127233B2 (en) 2013-12-31 2018-11-13 Huawei Technologies Co., Ltd. Data processing method and device in distributed file storage system
WO2016201639A1 (zh) * 2015-06-17 2016-12-22 华为技术有限公司 分布式数据存储方法、控制设备和系统
CN108141228A (zh) * 2015-10-09 2018-06-08 华为技术有限公司 分布式存储系统的编码
CN105530294A (zh) * 2015-12-04 2016-04-27 中科院成都信息技术股份有限公司 一种海量数据分布式存储的方法
CN105786656A (zh) * 2016-02-17 2016-07-20 中科院成都信息技术股份有限公司 基于随机矩阵的独立磁盘冗余阵列容灾存储方法
CN107295070A (zh) * 2017-05-31 2017-10-24 上海交通大学 文件大小异构的分布式编码缓存放置方法及系统
CN107295070B (zh) * 2017-05-31 2019-10-29 上海交通大学 文件大小异构的分布式编码缓存放置方法及系统
CN108809517A (zh) * 2018-05-22 2018-11-13 泰康保险集团股份有限公司 一种区块链网络中的信息获取方法及装置
CN109582646A (zh) * 2018-09-14 2019-04-05 唐学军 一种用于文件拆分的冗余和恢复方法及系统
CN112889033A (zh) * 2018-10-15 2021-06-01 Netapp股份有限公司 提高具有变化的数据冗余方案的系统中的可用存储空间
WO2020113470A1 (zh) * 2018-12-05 2020-06-11 深圳大学 一种数据分块方法、装置及终端设备
CN111435323A (zh) * 2019-01-15 2020-07-21 阿里巴巴集团控股有限公司 信息的传输方法、装置、终端、服务器及存储介质
CN111435323B (zh) * 2019-01-15 2023-06-20 阿里巴巴集团控股有限公司 信息的传输方法、装置、终端、服务器及存储介质
CN110837660A (zh) * 2019-11-05 2020-02-25 广东紫晶信息存储技术股份有限公司 一种数据存储方法及系统、数据校验方法及系统

Also Published As

Publication number Publication date
CN101834898B (zh) 2013-01-30

Similar Documents

Publication Publication Date Title
CN101834898B (zh) 一种网络分布式编码存储方法
CN102270161B (zh) 一种基于纠删码的多等级容错数据存储、读取和恢复方法
CN101387975B (zh) 一种磁盘阵列系统
CN101630282B (zh) 一种基于Erasure编码和副本技术的数据备份方法
CN105956128B (zh) 一种基于简单再生码的自适应编码存储容错方法
US20120137199A1 (en) Cloud Storage Data Access Method, Apparatus and System
CN102012792A (zh) 一种快速重构的raid-6编码及重构方法
CN103746774B (zh) 一种高效数据读取的容错编码方法
TWI287190B (en) Stable storage method
CN105260259A (zh) 一种基于系统最小存储再生码的局部性修复编码方法
CN108228382A (zh) 一种针对evenodd码单盘故障的数据恢复方法
CN101840366A (zh) 环链式n+1位奇偶校验码的存储方法
CN109814807A (zh) 一种数据存储方法及装置
CN106776129A (zh) 一种基于最小存储再生码的多节点数据文件的修复方法
CN111444042A (zh) 一种基于纠删码的区块链数据存储方法
CN102799543B (zh) 在动态变化的存储介质上分散存储数据及恢复方法
CN103838649A (zh) 一种降低二进制编码存储系统中计算量的方法
CN104915609B (zh) 一种基于Lagrange插值法和多云的数据隐藏方法
CN100353331C (zh) 网络信息系统数据异地快速恢复方法
CN104866243A (zh) 优化输入输出负载的raid-6横向斜向校验编码及解码方法
Pâris et al. Three-dimensional redundancy codes for archival storage
CN107357677B (zh) 一种GlusterFS基于纠删码的数据冗余存储方法
CN101241453A (zh) 磁盘冗余阵列的维护方法和装置
CN104156276B (zh) 一种防两块磁盘损坏的raid方法
CN102419697A (zh) 垂直raid-6编码中单盘重构的方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C56 Change in the name or address of the patentee

Owner name: CHENGDU INFORMATION TECHNOLOGY OF CHINESE ACADEMY

Free format text: FORMER NAME: CHENGDU INFORMATION TECHNOLOGY CO., LTD., CAS

CP01 Change in the name or title of a patent holder

Address after: 610041, No. 11, building 5, high tech building, East Road, Chengdu hi tech Zone, Sichuan

Patentee after: CHENGDU INFORMATION TECHNOLOGY OF CHINESE ACADEMY OF SCIENCE Co.,Ltd.

Address before: 610041, No. 11, building 5, high tech building, East Road, Chengdu hi tech Zone, Sichuan

Patentee before: Chengdu Information Technology Co.,Ltd. CAS

C56 Change in the name or address of the patentee
CP02 Change in the address of a patent holder

Address after: 1803, room 18, building 1, building 360, crystal Road, No. 610017, Hui Lu, Chengdu hi tech Zone, Sichuan

Patentee after: CHENGDU INFORMATION TECHNOLOGY OF CHINESE ACADEMY OF SCIENCE Co.,Ltd.

Address before: 610041, No. 11, building 5, high tech building, East Road, Chengdu hi tech Zone, Sichuan

Patentee before: CHENGDU INFORMATION TECHNOLOGY OF CHINESE ACADEMY OF SCIENCE Co.,Ltd.

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130130

CF01 Termination of patent right due to non-payment of annual fee