CN100579016C - 一种网络数据的分布式存储下载系统、设备及方法 - Google Patents

一种网络数据的分布式存储下载系统、设备及方法 Download PDF

Info

Publication number
CN100579016C
CN100579016C CN200610033379A CN200610033379A CN100579016C CN 100579016 C CN100579016 C CN 100579016C CN 200610033379 A CN200610033379 A CN 200610033379A CN 200610033379 A CN200610033379 A CN 200610033379A CN 100579016 C CN100579016 C CN 100579016C
Authority
CN
China
Prior art keywords
data
slice
download
information
memory node
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.)
Expired - Fee Related
Application number
CN200610033379A
Other languages
English (en)
Other versions
CN1859115A (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 CN200610033379A priority Critical patent/CN100579016C/zh
Publication of CN1859115A publication Critical patent/CN1859115A/zh
Application granted granted Critical
Publication of CN100579016C publication Critical patent/CN100579016C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

本发明适用于通信领域,提供了一种网络数据的分布式存储下载系统、设备及方法,所述系统包括:源数据终端,用于对源数据进行线性编码,生成多个数据片,以及对下载的源数据的数据片进行线性解码,恢复源数据。存储节点,与所述源数据终端连接,用于下载存储所述数据片;以及索引服务器,与所述源数据终端以及存储节点连接,用于管理所述源数据终端的数据片信息以及所述存储节点的网络信息,控制所述源数据终端或者存储节点下载所述源数据的数据片。本发明通过数据的线性编码分割、分布式存储以及多点下载,避免了因数据片的丢失导致数据恢复困难,增加了用户的数据存储空间,提高了数据下载的速度和可靠性。

Description

一种网络数据的分布式存储下载系统、设备及方法
技术领域
本发明属于通信领域,尤其涉及一种网络数据的分布式存储下载系统、设备和方法。
背景技术
随着通信网络的发展和终端能力的不断增强,用户可以使用的数据类型越来越多,除了基本的通讯录、通话记录、短信彩信记录之外,还包括铃音、图片、视频以及游戏等多媒体数据。丰富的数据应用要求在本地存储之外存储数据。但非本地存储对数据存储和传输的安全性要求较高。
图1示出了现有技术中实现数据存储的网络结构,用户数据存储在数据服务器中,数据服务器为每个终端分配一块存储空间中。当终端需要下载数据时,通过网络访问数据服务器,下载所需要的数据。在这种方式中,数据在数据服务器上集中存储,数据下载时采用单点传输,数据传输速度慢。当用户数量较多时,数据服务器将面临较大的通信负载。同时,一旦数据服务器发生安全故障时,将造成数据丢失,安全性不高。
比特流(Bit Torrent,BT)下载技术是常见的数据下载方式,如图2所示。BT服务器将数据分割为若干数据块,各数据块可以作为一个独立的部分在网络中传输。每个参加下载的终端既从其他终端上下载数据,同时自身也向其他终端提供下载,因此参与下载的终端数量越多,下载速度也越快。在这种方式中,终端必须获取了全部数据块才能还原出完整的数据,因此每一个数据块都是必不可少的。由于网络传输的不确定性,数据块可能在网络中丢失,从而造成不能恢复整个数据。同时,由于存储节点的传输速度不一,会延长整个数据的恢复时间。
发明内容
本发明的目的在于提供一种网络数据的分布式存储下载系统,旨在解决现有技术中在实现数据的分布式存储下载过程中数据下载不稳定、可靠性低的问题。
本发明的另一目的在于提供一种网络数据的分布式存储下载设备;
本发明的另一目的在于提供一种网络数据的分布式存储下载控制设备;
本发明的另一目的在于提供一种网络数据的分布式存储方法;
本发明的另一目的在于提供一种网络数据的分布式下载方法。
本发明是这样实现的,一种网络数据的分布式存储下载系统,所述系统包括:
源数据终端,用于对源数据进行线性编码,生成多个数据片,以及对下载的源数据的数据片进行线性解码,恢复源数据。
存储节点,与所述源数据终端连接,用于下载存储所述数据片;以及
索引服务器,与所述源数据终端以及存储节点连接,用于管理所述源数据终端的数据片信息以及所述存储节点的网络信息,控制所述源数据终端或者存储节点下载所述源数据的数据片。
所述源数据终端包括:
数据存储单元,用于对源数据进行分段线性编码,生成多个数据片,并将数据片信息上报索引服务器。
所述数据存储单元包括:
数据分段模块,用于将源数据分为多个数据段;
数据编码模块,用于对所述数据段进行线性编码,生成多个数据片,每个数据片中包含所述源数据的部分数据段;
数据片存储模块,用于存储所述数据片;以及
数据片信息发送模块,用于将存储的数据片信息上报索引服务器。
所述源数据终端进一步包括:
数据下载单元,用于下载存储在存储节点上的源数据的数据片,对所述数据片进行线性解码,合并恢复源数据。
所述数据下载单元包括:
下载请求模块,用于向索引服务器发送数据下载请求,接收索引服务器返回的下载节点列表,所述下载节点列表中记录有存储源数据的数据片的存储节点的网络地址信息以及需要下载的数据片信息;
数据下载模块,用于根据所述下载节点列表与所述存储节点连接通信,下载所述数据片信息对应的数据片;
数据解码模块,用于对下载的数据片进行线性解码,恢复线性编码前的数据段;
数据合并模块,用于对所述数据段进行合并,恢复源数据;以及
数据存储模块,用于存储所述源数据。
所述数据下载单元进一步包括:
统计上报模块,用于统计下载过程中存储节点的数据传输速度信息,上报索引服务器。
所述存储节点包括:
下载请求模块,用于向索引服务器发送数据下载请求,接收索引服务器返回的下载节点列表,所述下载节点列表中记录有源数据终端的网络地址信息以及需要下载的数据片信息;
数据下载模块,用于根据所述下载节点列表与源数据终端连接通信,下载所述数据片信息对应的数据片;
数据片存储模块,用于存储下载的数据片。
所述存储节点进一步包括:
数据编码模块,用于对下载的数据片重新进行线性编码,生成新的数据片。
所述索引服务器包括:
数据片信息接收模块,用于接收源数据终端发送的数据片信息;
数据片信息数据库,用于存储所述数据片信息,以及与所述数据片信息对应的存储节点的网络信息;
鉴权验证模块,用于接收源数据终端或者存储节点的数据下载请求,对源数据终端或者存储节点的下载权限进行验证;
下载控制模块,用于根据所述源数据终端或者存储节点的数据下载请求,查询数据片信息数据库,返回下载节点列表,所述下载节点列表中记录有存储源数据的数据片的源数据终端或者存储节点的网络地址信息以及需要下载的数据片信息。
所述索引服务器进一步包括:
统计信息接收模块,用于接收源数据终端上报的存储节点的数据传输速度信息,更新所述数据片信息数据库中的存储节点信息。
一种网络数据的分布式存储下载设备,其特征在于,所述设备与索引服务器及存储节点连接,包括:
数据存储单元,用于对源数据进行分段线性编码,生成多个数据片,并将数据片信息上报索引服务器,以及
数据下载单元,用于下载存储在存储节点上的源数据的数据片,对所述数据片进行线性解码,合并恢复源数据。
所述数据存储单元包括:
数据分段模块,用于将源数据分为多个数据段;
数据编码模块,用于对所述数据段进行线性编码,生成多个数据片,每个数据片中包含所述源数据的部分数据段;
数据片存储模块,用于存储所述数据片;以及
数据片信息发送模块,用于将存储的数据片信息上报索引服务器。
所述数据下载单元包括:
下载请求模块,用于向索引服务器发送数据下载请求,接收索引服务器返回的下载节点列表,所述下载节点列表中记录有存储源数据的数据片的存储节点的网络地址信息以及需要下载的数据片信息;
数据下载模块,用于根据所述下载节点列表与所述存储节点连接通信,下载所述数据片信息对应的数据片;
数据解码模块,用于对下载的数据片进行线性解码,恢复线性编码前的数据段;
数据合并模块,用于对所述数据段进行合并,恢复源数据;以及
数据存储模块,用于存储所述源数据。
所述数据下载单元进一步包括:
统计上报模块,用于统计下载过程中存储节点的数据传输速度信息。
一种网络数据的分布式存储下载控制设备,所述控制设备与源数据终端以及存储节点连接,用于管理所述源数据终端的数据片信息以及所述存储节点的网络信息,控制所述源数据终端或者存储节点下载所述源数据的数据片。
所述控制设备包括:
数据片信息接收模块,用于接收源数据终端发送的数据片信息;
数据片信息数据库,用于存储所述数据片信息,以及与所述数据片信息对应的存储节点的网络信息;
鉴权验证模块,用于接收源数据终端或者存储节点的数据下载请求,对源数据终端或者存储节点的下载权限进行验证;
下载控制模块,用于根据所述源数据终端或者存储节点的数据下载请求,查询数据片信息数据库,返回下载节点列表,所述下载节点列表中记录有存储源数据的数据片的源数据终端或者存储节点的网络地址信息以及需要下载的数据片信息。
所述控制设备进一步包括:
统计信息接收模块,用于接收源数据终端上报的存储节点的数据传输速度信息,更新所述数据片信息数据库中的存储节点信息。
一种利用上述系统实现的网络数据的分布式存储方法,所述方法包括下述步骤:
A.源数据终端对数据进行分段线性编码,生成多个数据片;
B.索引服务器控制存储节点下载存储所述数据片。
所述步骤A进一步包括下述步骤:
A1.将源数据分成n个数据段;
A2.通过m个线性无关向量对所述n个数据段进行线性编码,生成m个数据片,每个数据片中包含所述源数据的部分数据段;
A3.存储所述m个数据片;
其中,1<n≤m。
所述步骤B进一步包括下述步骤:
B1.索引服务器接收存储节点的数据下载请求;
B2.索引服务器向存储节点返回节点下载列表,所述节点下载列表中包含有源数据终端的网络地址信息以及需要下载的数据片信息;
B3.存储节点根据所述下载节点列表与源数据终端连接通信,下载所述数据片信息对应的数据片。
所述步骤B进一步包括下述步骤:
B4.存储节点对下载的数据片进行线性编码,生成新的数据片。
一种利用上述系统实现的网络数据的分布式下载方法,所述方法包括下述步骤:
A.源数据终端登陆索引服务器,获取节点下载信息;
B.源数据终端根据所述节点下载信息与存储节点连接,下载相应的数据片,恢复源数据。
所述步骤A包括下述步骤:
A1.源数据终端向索引服务器发送数据下载请求;
A2.索引服务器接收源数据终端的数据下载请求,对源数据终端的下载权限进行验证;
A3.验证通过后,根据所述数据下载请求,返回下载节点列表,所述下载节点列表中记录有存储源数据的数据片的存储节点的网络地址信息以及需要下载的数据片信息。
所述步骤B包括下述步骤:
B1.根据所述节点下载信息与存储节点连接,下载相应的数据片;
B2.对下载的数据片进行线性解码,恢复线性编码前的数据段;
B3.对所述数据段进行合并,恢复源数据;
B4.存储所述源数据。
所述步骤B进一步包括下述步骤:
B5.源数据终端统计下载过程中存储节点的数据传输速度信息,上报索引服务器;
B6.索引服务器根据所述存储节点的数据传输速度信息,更新对应的存储节点信息。
本发明通过数据的线性编码分割、分布式存储以及多点下载,避免了因数据片的丢失导致数据恢复困难,增加了用户的数据存储空间,提高了数据下载的速度和可靠性。
附图说明
图1是现有技术中现有技术中实现数据存储的网络结构图;
图2是现有技术中比特流下载的实现原理图;
图3是本发明适用的网络结构图;
图4是本发明中源数据在索引服务器的控制下实现数据分布式存储的流程图;
图5是本发明中源数据终端从存储节点上下载数据的实现流程图;
图6是本发明提供的索引服务器的结构图;
图7是本发明提供的源数据终端的结构图;
图8是本发明提供的存储节点的结构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
在本发明中,源数据终端将源数据存储在网络上的存储节点上,实现数据的分布式存储,在将数据存储到存储节点上前,源数据终端将源数据进行分段编码,生成多个数据片。当需要下载数据时,源数据终端从存储节点上下载相应的数据片,对下载后的数据片进行解码合并恢复完成的源数据。
图3示出了本发明适用的网络结构,移动电话、个人计算机或者个人数字助理(Personal Digital Assistant,PDA)等终端通过Web或者无线方式与索引服务器连接通信,终端之间可以进行点对点(P2P)通信。每个终端既是源数据终端和数据下载终端,又同时作为其他终端的存储设备,即存储节点。源数据终端可以将自身的数据在索引服务器的控制下存储到存储节点上,从而实现数据的分布式存储。当需要下载数据时,终端与存储节点之间通过P2P方式通信,下载存储在存储节点上的数据。
本发明中,为了实现多点同时传输,提高数据的传输速度和可靠性,源数据终端在将数据发布到网络上前,对源数据进行分段和线性编码处理。
首先,将源数据(File)平均划分为n个数据段(Segment,Seg),即File=Seg1+Seg2+......+Segn
数据段的大小和数量可以通过两种方式来确定,一种方式是首先确定数据段的数量,如分为100个数据段,然后用源数据的大小除以数据段的数量,即可得到每个数据段的大小。另一种方式也可以首先确定数据段的大小,例如1024K,然后用源数据的大小除以数据段的大小,即可得到数据段的数量。具体采用哪种方式可以通过源数据终端灵活设置。
然后,根据划分的数据段对数据进行线性编码,生成多个数据片(Piece),每个数据片包含了数据的部分数据段信息:
Piece1(a11,a12,......a1n)=a11×Seg1+a12×Seg2+......+a1n×Segn
Piece2(a21,a22,......a2n)=a21×Seg1+a22×Seg2+......+a2n×Segn
……
Piecem(am1,am2,......amn)=am1×Seg1+am2×Seg2+......+amn×Segn
其中,1<n≤m。
在上述的m个向量,即
(a11,a12,......a1n)
(a21,a22,......a2n)
……
(am1,am2,......amn)中须有n个为线性无关向量,以保证终端后续下载数据时能够顺利对数据片进行解码,恢复完整的源数据。
图4示出了本发明中源数据终端在索引服务器的控制下实现数据分布式存储的过程,详述如下:
1.源数据终端按以上描述对源数据进行分段编码。此时,所有的数据片都仍然保存在源数据终端。
2.源数据终端将本地数据片可访问信息通知索引服务器,索引服务器生成初始的数据片分布信息,即源数据终端对源数据进行分段编码后的数据片标识。
3.当存储节点需要下载自身保存在网络上的数据时,向索引服务器发起数据下载请求,索引服务器向存储节点返回节点下载列表。节点下载列表中除了包含存储该存储节点数据片信息的其他存储节点的网络地址信息以及其他存储节点存储的该存储节点的数据片信息外,还包含源数据终端的网络地址信息以及需要该存储节点下载源数据终端的数据片信息。这样就可以达到存储节点在下载自身数据的同时,也下载存储了源数据终端的数据的目的。
4.存储节点根据节点下载列表中源数据终端的网络地址信息到源数据终端上下载相应的数据片,存储在本地,供源数据终端或者其他存储节点访问下载。
存储节点下载哪些数据片以及下载的数据片的数量等由索引服务器通过节点下载列表控制。同时,索引服务器将相应存储节点的数据片下载信息记录到数据片分布列表,此时数据片分布列表中包含了存储节点标识以及每个存储节标识对应的数据片标识等信息。
作为本发明的一个优选实施例,存储节点下载了相应的数据片后,可以对数据片重新进行线性编码,生成新的数据片,从而进一步丰富源数据的数据片分布,有助于后续源数据终端下载恢复源数据。存储节点是否对存储的数据片进行重新线性编码可以用户灵活设置。
图5示出了源数据终端从网络的存储节点上下载的数据的过程,详述如下:
1.源数据终端向索引服务器发出数据下载请求。
2.索引服务器对源数据终端进行鉴权,验证源数据终端的数据下载权限,如果鉴权失败,则退出本流程。鉴权成功后,索引服务器查询源数据终端的数据片分布列表,提取数据片分布列表中存储节点传输速度最快的多个节点,形成下载节点列表发送给源数据终端。
3.源数据终端向下载节点列表中的各个存储节点发起多点同时下载,下载存储节点中存储的数据片。
4.当数据片下载完成后,源数据终端对数据片进行线性解码,获取相应的数据段,将数据端合并恢复完整的源数据。同时,统计在本次下载过程中同各个存储节点的数据传输速度。
5.源数据终端将存储节点的数据传输速度统计信息上报给索引服务器。
6.索引服务器根据源数据终端上报的存储节点的数据传输速度统计信息对数据片分布列表进行重新排序和更新。
为了便于理解,本发明通过一个示例对上述源数据的分段以及线性编解码过程进行具体说明。
假设源数据终端拥有源数据File=1123,划分为如下4个数据段:
Seg1=1,
Seg2=1,
Seg3=2,
Set4=3,
假设使用源数据终端采用如下4个线性无关向量对数据段进行线性编码:
(1,1,0,0);
(0,1,1,0);
(0,0,1,1);
(1,0,0,2);
线性编码后生成如下4个数据片:
Piece1(1,1,0,0)=1×1+1×1+0×2+0×3=2;
Piece2(0,1,1,0)=0×1+1×1+1×2+0×3=3;
Piece3(0,0,1,1)=0×1+0×1+1×2+1×3=5;
Piece4(1,0,0,2)=1×1+0×1+0×2+2×3=7;
存储节点A从源数据终端上下载了Piece1(1,1,0,0)=2和Piece2(0,1,1,0)=3两个数据片,使用Piece1和Piece2再次线性编码,构造一个新的数据片Piece5
Piece5=1×Piece1+1×Piece2
=1×2(1,1,0,0)+1×3(0,1,1,0)
=5(1,2,1,0)。
然后,存储节点A将Piece1、Piece2、Piece5分发到网络中供其他存储节点下载存储。
当源数据终端从存储节点A以及其他存储节点上下载数据片时,假设Piece2在传输过程中被丢失,源数据终端获取了Piece1、Piece3、Piece4、Piece54个数据片:
Piece1(1,1,0,0)=1×Seg1+1×Seg2+0×Seg3+0×Seg4=2;
Piece3(0,0,1,1)=0×Seg1+0×Seg2+1×Seg3+1×Seg4=5;
Piece4(1,0,0,2)=1×Seg1+0×Seg2+0×Seg3+2×Seg4=7;
Piece5(1,2,1,0)=1×Seg1+2×Seg2+1×Seg3+0×Seg4=5;
源数据终端对这4个线性无关的数据片进行线性解码,获得以上线性方程组的解,从而获得源数据的所有数据段,恢复出完整的源数据1123:
Seg1=1;
Seg2=1;
Seg3=2;
Seg4=3。
图6示出了索引服务器600的结构,包括数据片信息接收模块601、数据片信息数据库602,鉴权验证模块603、下载控制模块604以及统计信息接收模块605。
数据片信息接收模块601接收源数据终端发送的可访问的数据片信息,将数据片信息存储到数据片信息数据库602。数据片信息数据库602存储和维护源数据终端的数据片信息以及存储相应数据片的存储节点的网络信息,包括存储节点的网络地址信息以及存储节点的传输速度等信息。
当收到源数据终端或者存储节点的数据下载请求时,鉴权验证模块603对源数据终端或者存储节点进行鉴权,验证源数据终端或者存储节点的下载权限。验证通过后,下载控制模块604查询数据片信息数据库602,向源数据终端或者存储节点返回节点下载列表,节点列表中记录有源数据终端或者存储节点的网络地址信息以及需要下载的数据片信息。统计信息接收模块605接收源数据终端上报的存储节点的数据传输速度统计信息,对数据片信息数据库602中的存储节点信息进行更新。
图7示出了源数据终端700的结构,包括数据存储单元701以及数据下载单元702,数据存储单元701包括数据分段模块7011、数据编码模块7012、数据片存储模块7013以及数据片信息发送模块7014;数据下载单元702包括下载请求模块7021、数据下载模块7022、数据解码模块7023、数据合并模块7024、数据存储模块7025以及统计上报模块7026。
源数据在网络上存储前,数据分段模块7011对源数据进行分段,生成多个数据段,数据编码模块7012对数据段进行线性编码,生成多个数据片,并将数据片存储在数据片存储模块7013。数据片信息发送模块7014将可访问的数据片信息上报索引服务器。
当需要下载数据时,下载请求模块7021向索引服务器发送数据下载请求,接收索引服务器返回的节点下载列表。数据下载模块7022根据索引服务器提供的节点下载列表,与节点下载列表中记录的存储节点连接通信,下载存储节点中存储的相应的数据片。数据解码模块7023对下载获得的数据片进行线性解码,获得线性编码前的数据段。数据合并模块7024对数据段进行合并,恢复完整的源数据。数据存储模块7025对源数据进行存储。下载完成后,统计上报模块7026统计下载过程中各个存储节点的数据传输速度,上报给索引服务器。
图8示出了存储节点的结构,包括下载请求模块801、数据下载模块802、数据片存储模块803以及数据编码模块804。
当需要下载数据时,下载请求模块801向索引服务器发送数据下载请求,接收索引服务器返回的节点下载列表。数据下载模块802根据索引服务器提供的节点下载列表,与节点下载列表中记录的源数据终端连接通信,下载源数据终端的相应的数据片。数据片存储模块803存储下载的数据片。数据编码模块804对下载的数据片进行重新线性编码,生成新的数据片。
需要说明的是,为了描述方便,在前文将源数据终端和存储节点的功能和模块结构分开进行了描述。容易理解的是,实际的网络结构中只存在索引服务器和存储节点/源数据终端两种实体,一个终端既是源数据终端,又是其他终端的存储节点。因此,存储节点和源数据终端的功能和结构是相同的。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (24)

1、一种网络数据的分布式存储下载系统,其特征在于,所述系统包括:
源数据终端,用于对源数据进行分段线性编码,生成多个数据片,以及对下载的源数据的数据片进行线性解码,恢复源数据;
存储节点,与所述源数据终端连接,用于下载存储所述数据片;以及
索引服务器,与所述源数据终端以及存储节点连接,用于管理所述源数据终端的数据片信息以及所述存储节点的网络信息,控制所述源数据终端将所述数据片存储在存储节点上,控制所述源数据终端或者存储节点下载所述源数据的数据片。
2、如权利要求1所述的网络数据的分布式存储下载系统,其特征在于,所述源数据终端包括:
数据存储单元,用于对源数据进行分段线性编码,生成多个数据片,并将数据片信息上报索引服务器。
3、如权利要求2所述的网络数据的分布式存储下载系统,其特征在于,所述数据存储单元包括:
数据分段模块,用于将源数据分为多个数据段;
数据编码模块,用于对所述数据段进行线性编码,生成多个数据片,每个数据片中包含所述源数据的部分数据段;
数据片存储模块,用于存储所述数据片;以及
数据片信息发送模块,用于将存储的数据片信息上报索引服务器。
4、如权利要求2所述的网络数据的分布式存储下载系统,其特征在于,所述源数据终端进一步包括:
数据下载单元,用于下载存储在存储节点上的源数据的数据片,对所述数据片进行线性解码,合并恢复源数据。
5、如权利要求4所述的网络数据的分布式存储下载系统,其特征在于,所述数据下载单元包括:
下载请求模块,用于向索引服务器发送数据下载请求,接收索引服务器返回的节点下载列表,所述节点下载列表中记录有存储源数据的数据片的存储节点的网络地址信息以及需要下载的数据片信息;
数据下载模块,用于根据所述节点下载列表与所述存储节点连接通信,下载所述数据片信息对应的数据片;
数据解码模块,用于对下载的数据片进行线性解码,恢复线性编码前的数据段;
数据合并模块,用于对所述数据段进行合并,恢复源数据;以及
数据存储模块,用于存储所述源数据。
6、如权利要求5所述的网络数据的分布式存储下载系统,其特征在于,所述数据下载单元进一步包括:
统计上报模块,用于统计下载过程中存储节点的数据传输速度信息,上报索引服务器。
7、如权利要求1所述的网络数据的分布式存储下载系统,其特征在于,所述存储节点包括:
下载请求模块,用于向索引服务器发送数据下载请求,接收索引服务器返回的节点下载列表,所述节点下载列表中记录有源数据终端的网络地址信息以及需要下载的数据片信息;
数据下载模块,用于根据所述节点下载列表与源数据终端连接通信,下载所述数据片信息对应的数据片;
数据片存储模块,用于存储下载的数据片。
8、如权利要求7所述的网络数据的分布式存储下载系统,其特征在于,所述存储节点进一步包括:
数据编码模块,用于对下载的数据片重新进行线性编码,生成新的数据片。
9、如权利要求1所述的网络数据的分布式存储下载系统,其特征在于,所述索引服务器包括:
数据片信息接收模块,用于接收源数据终端发送的数据片信息;
数据片信息数据库,用于存储所述数据片信息,以及与所述数据片信息对应的存储节点的网络信息;
鉴权验证模块,用于接收源数据终端或者存储节点的数据下载请求,对源数据终端或者存储节点的下载权限进行验证;
下载控制模块,用于根据所述源数据终端或者存储节点的数据下载请求,查询数据片信息数据库,返回节点下载列表,所述节点下载列表中记录有存储源数据的数据片的源数据终端或者存储节点的网络地址信息以及需要下载的数据片信息。
10、如权利要求9所述的网络数据的分布式存储下载系统,其特征在于,所述索引服务器进一步包括:
统计信息接收模块,用于接收源数据终端上报的存储节点的数据传输速度信息,更新所述数据片信息数据库中的存储节点信息。
11、一种网络数据的分布式存储下载设备,其特征在于,所述设备与索引服务器及存储节点连接,包括:
数据存储单元,用于对源数据进行分段线性编码,生成多个数据片,并将数据片信息上报索引服务器,以及在索引服务器的控制下将所述数据片存储在存储节点上;
数据下载单元,用于下载存储在存储节点上的源数据的数据片,对所述数据片进行线性解码,合并恢复源数据。
12、如权利要求11所述的网络数据的分布式存储下载设备,其特征在于,所述数据存储单元包括:
数据分段模块,用于将源数据分为多个数据段;
数据编码模块,用于对所述数据段进行线性编码,生成多个数据片,每个数据片中包含所述源数据的部分数据段;
数据片存储模块,用于存储所述数据片;以及
数据片信息发送模块,用于将存储的数据片信息上报索引服务器。
13、如权利要求11所述的网络数据的分布式存储下载设备,其特征在于,所述数据下载单元包括:
下载请求模块,用于向索引服务器发送数据下载请求,接收索引服务器返回的节点下载列表,所述节点下载列表中记录有存储源数据的数据片的存储节点的网络地址信息以及需要下载的数据片信息;
数据下载模块,用于根据所述节点下载列表与所述存储节点连接通信,下载所述数据片信息对应的数据片;
数据解码模块,用于对下载的数据片进行线性解码,恢复线性编码前的数据段;
数据合并模块,用于对所述数据段进行合并,恢复源数据;以及
数据存储模块,用于存储所述源数据。
14、如权利要求13所述的网络数据的分布式存储下载设备,其特征在于,所述数据下载单元进一步包括:
统计上报模块,用于统计下载过程中存储节点的数据传输速度信息。
15、一种网络数据的分布式存储下载控制设备,其特征在于,所述控制设备与源数据终端以及存储节点连接,用于管理所述源数据终端的数据片信息以及所述存储节点的网络信息,控制所述源数据终端将所述源数据的数据片存储在存储节点上,并控制所述源数据终端或者存储节点下载所述源数据的数据片;其中,所述数据片由所述源数据终端对源数据进行分段线性编码得到,所述数据片可以由所述源数据终端进行线性解码以恢复源数据;
所述控制设备包括:
数据片信息接收模块,用于接收源数据终端发送的数据片信息;
数据片信息数据库,用于存储所述数据片信息,以及与所述数据片信息对应的存储节点的网络信息;
鉴权验证模块,用于接收源数据终端或者存储节点的数据下载请求,对源数据终端或者存储节点的下载权限进行验证;
下载控制模块,用于在鉴权验证模块验证通过后根据所述源数据终端或者存储节点的数据下载请求,查询数据片信息数据库,返回节点下载列表,所述节点下载列表中记录有存储源数据的数据片的源数据终端或者存储节点的网络地址信息以及需要下载的数据片信息。
16、如权利要求15所述的网络数据的分布式存储下载控制设备,其特征在于,所述控制设备进一步包括:
统计信息接收模块,用于接收源数据终端上报的存储节点的数据传输速度信息,更新所述数据片信息数据库中的存储节点信息。
17、一种网络数据的分布式存储方法,其特征在于,所述方法包括下述步骤:
A.源数据终端对数据进行分段线性编码,生成多个数据片;
B.索引服务器控制存储节点下载存储所述数据片。
18、如权利要求17所述的网络数据的分布式存储方法,其特征在于,所述步骤A进一步包括下述步骤:
A1.将源数据分成n个数据段;
A2.通过m个线性无关向量对所述n个数据段进行线性编码,生成m个数据片,每个数据片中包含所述源数据的部分数据段;
A3.存储所述m个数据片;
其中,1<n≤m。
19、如权利要求17所述的网络数据的分布式存储方法,其特征在于,所述步骤B进一步包括下述步骤:
B1.索引服务器接收存储节点的数据下载请求;
B2.索引服务器向存储节点返回节点下载列表,所述节点下载列表中包含有源数据终端的网络地址信息以及需要下载的数据片信息;
B3.存储节点根据所述节点下载列表与源数据终端连接通信,下载所述数据片信息对应的数据片。
20、如权利要求19所述的网络数据的分布式存储方法,其特征在于,所述步骤B进一步包括下述步骤:
B4.存储节点对下载的数据片进行线性编码,生成新的数据片。
21、一种网络数据的分布式下载方法,其特征在于,所述方法包括下述步骤:
A.源数据终端登录索引服务器,获取节点下载信息;
B.源数据终端根据所述节点下载信息与存储节点连接,下载所述索引服务器控制所述源数据终端存储在所述存储节点上的数据片,恢复源数据。
22.如权利要求21所述的网络数据的分布式下载方法,其特征在于,所述步骤A包括下述步骤:
A1.源数据终端向索引服务器发送数据下载请求;
A2.索引服务器接收源数据终端的数据下载请求,对源数据终端的下载权限进行验证;
A3.验证通过后,根据所述数据下载请求,返回节点下载列表,所述节点下载列表中记录有存储源数据的数据片的存储节点的网络地址信息以及需要下载的数据片信息。
23.如权利要求21所述的网络数据的分布式下载方法,其特征在于,所述步骤B包括下述步骤:
B1.根据所述节点下载信息与存储节点连接,下载相应的数据片;
B2.对下载的数据片进行线性解码,恢复线性编码前的数据段;
B3.对所述数据段进行合并,恢复源数据;
B4.存储所述源数据。
24.如权利要求23所述的网络数据的分布式下载方法,其特征在于,所述步骤B进一步包括下述步骤:
B5.源数据终端统计下载过程中存储节点的数据传输速度信息,上报索引服务器;
B6.索引服务器根据所述存储节点的数据传输速度信息,更新对应的存储节点信息。
CN200610033379A 2006-01-24 2006-01-24 一种网络数据的分布式存储下载系统、设备及方法 Expired - Fee Related CN100579016C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200610033379A CN100579016C (zh) 2006-01-24 2006-01-24 一种网络数据的分布式存储下载系统、设备及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200610033379A CN100579016C (zh) 2006-01-24 2006-01-24 一种网络数据的分布式存储下载系统、设备及方法

Publications (2)

Publication Number Publication Date
CN1859115A CN1859115A (zh) 2006-11-08
CN100579016C true CN100579016C (zh) 2010-01-06

Family

ID=37297982

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200610033379A Expired - Fee Related CN100579016C (zh) 2006-01-24 2006-01-24 一种网络数据的分布式存储下载系统、设备及方法

Country Status (1)

Country Link
CN (1) CN100579016C (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014012246A1 (zh) * 2012-07-20 2014-01-23 北京大学深圳研究生院 用于分布式网络存储的自修复码的编码、重构和恢复方法

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101267383B (zh) * 2007-03-14 2011-08-17 中国移动通信集团公司 数据传送方法及系统
CN101325540A (zh) * 2007-06-11 2008-12-17 华为技术有限公司 提高基于随机网络编码的多播传输效率的方法及装置
CN101184104B (zh) * 2007-12-21 2010-12-15 腾讯科技(深圳)有限公司 一种分布式存储系统及方法
CN101505472B (zh) * 2008-02-05 2011-07-20 华为技术有限公司 一种用户数据服务器系统和装置
CN101635669B (zh) * 2008-07-25 2011-11-09 中国科学院声学研究所 一种用于数据共享系统中获取数据片段的方法
CN101504670A (zh) * 2009-03-04 2009-08-12 成都市华为赛门铁克科技有限公司 数据操作方法、系统、客户端和数据服务器
CN101895468B (zh) * 2010-07-09 2015-09-16 中兴通讯股份有限公司 一种终端设备、核心网服务器、业务聚合系统及方法
CN102137164A (zh) * 2011-04-06 2011-07-27 上海少思网络科技有限公司 一种分布式节点资源共享的方法
CN102624866B (zh) * 2012-01-13 2014-08-20 北京大学深圳研究生院 一种存储数据的方法、装置及分布式网络存储系统
CN103650462B (zh) * 2012-04-27 2016-12-14 北京大学深圳研究生院 基于同态的自修复码的编码、解码和数据修复方法及其存储系统
CN102693297B (zh) * 2012-05-16 2015-03-11 华为技术有限公司 数据处理方法、节点和提取、转换和加载etl系统
CN103703446B (zh) * 2012-06-11 2016-08-17 北京大学深圳研究生院 网络存储中抗拜占庭失效的数据重构、失效数据恢复方法及装置
WO2014005279A1 (zh) * 2012-07-03 2014-01-09 北京大学深圳研究生院 一种可精确再生的分布式存储码的构建方法及装置
US9172743B2 (en) 2012-12-31 2015-10-27 Futurewei Technologies, Inc. Scalable storage systems with longest prefix matching switches
CN104735115A (zh) * 2013-12-24 2015-06-24 乐视网信息技术(北京)股份有限公司 一种p2p下载方法及装置
CN104471918B (zh) * 2014-03-24 2017-11-03 华为技术有限公司 文件下载方法、装置和系统
CN104883381B (zh) * 2014-05-27 2018-09-04 陈杰 分布式存储的数据存取方法及系统
CN104301233A (zh) * 2014-10-31 2015-01-21 易准科技发展(上海)有限公司 路由访问方法、路由访问系统及用户终端
CN104571957B (zh) * 2014-12-29 2018-03-27 成都极驰科技有限公司 一种数据读取方法及组装装置
CN104753815A (zh) * 2015-03-24 2015-07-01 网宿科技股份有限公司 一种基于流缓存的透明传输加速网络以及方法
CN105187556B (zh) * 2015-09-29 2019-04-12 北京奇艺世纪科技有限公司 一种数据回源的方法、装置及边缘服务器
CN106792629B (zh) * 2015-11-25 2021-03-19 深圳市六二九科技有限公司 一种智能卡数据系统及使用方法
CN107436725B (zh) * 2016-05-25 2019-12-20 杭州海康威视数字技术股份有限公司 一种数据写、读方法、装置及分布式对象存储集群
CN109347920A (zh) * 2018-09-18 2019-02-15 杭州格原信息技术有限公司 一种应用于勘察设计行业的网盘系统
CN109361952A (zh) * 2018-12-14 2019-02-19 司马大大(北京)智能系统有限公司 视频管理方法、装置、系统及电子设备
CN109887576A (zh) * 2019-01-29 2019-06-14 中国人民解放军总医院 一种医学数据分布式存储方法及系统
CN110149384B (zh) * 2019-05-09 2022-06-24 北京猫盘技术有限公司 基于网络存储设备集群的数据分布式存储方法及装置
CN114125572B (zh) * 2021-11-22 2022-06-03 江苏经贸职业技术学院 一种基于p2p的视频数据分发与存储系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于数据分割的复制算法RSREPL的研究与实现. 王意洁,卢锡城.计算机工程,第30卷第20期. 2004
基于数据分割的复制算法RSREPL的研究与实现. 王意洁,卢锡城.计算机工程,第30卷第20期. 2004 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014012246A1 (zh) * 2012-07-20 2014-01-23 北京大学深圳研究生院 用于分布式网络存储的自修复码的编码、重构和恢复方法

Also Published As

Publication number Publication date
CN1859115A (zh) 2006-11-08

Similar Documents

Publication Publication Date Title
CN100579016C (zh) 一种网络数据的分布式存储下载系统、设备及方法
CN102017492B (zh) 用于对传输数据块编码以提高切换性能的方法和装置
CN100369026C (zh) 用于客户-服务器通信系统的事务加速器
CN101764831B (zh) 一种流媒体数据共享方法、共享系统和流媒体节点
KR100812343B1 (ko) 푸쉬 콘텐츠 다운로드를 위한 시스템, 방법, 및 컴퓨터프로그램 생성물
EP1410643B1 (en) Method for streaming media with multiple description bitstreams
CN104067594A (zh) 在http服务器之间分配源数据和修复数据的内容传送系统
CN101427246A (zh) 用于提供分布式、分散式数据存储与检索的系统和方法
CN101729273A (zh) 一种流媒体分发系统、方法及装置
CN104737518A (zh) 用于数据表示和传输的系统和方法
CN102523298A (zh) 基于移动终端的视频采集分享系统及其处理方法
CN102246451A (zh) 信道容量自适应中继器
CN109067578A (zh) 一种组播快速切换的方法和装置
CN101197841B (zh) 音频定向传送方法及装置
Hassanzadeh et al. On coding for cache-aided delivery of dynamic correlated content
US20080002654A1 (en) Authorisation in Cellular Communications System
CN102088331B (zh) 一种数据传输方法及网络节点
CN101977243A (zh) 云数据存储分配(ddcs)
CN1157513A (zh) 一种对电子软件分布进行可调整和可靠传输的系统和方法
CN102739650A (zh) 结合广电网和互联网的文件传输系统
CN102142934A (zh) 基于分层网络拓扑实现分布式的近似理想lt编码的方法
CN101945125A (zh) 一种文件传输的方法和装置
CN105827700A (zh) 一种动态文件的传输方法、装置及电子设备
CN116455685A (zh) 一种在广播网络下的pbft改进共识方法
CN103841141A (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
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100106

Termination date: 20200124

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