CN111629028B - 面向分布式多云存储的数据传输调度系统 - Google Patents

面向分布式多云存储的数据传输调度系统 Download PDF

Info

Publication number
CN111629028B
CN111629028B CN202010281456.5A CN202010281456A CN111629028B CN 111629028 B CN111629028 B CN 111629028B CN 202010281456 A CN202010281456 A CN 202010281456A CN 111629028 B CN111629028 B CN 111629028B
Authority
CN
China
Prior art keywords
file
data
files
bandwidth
cloud storage
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
CN202010281456.5A
Other languages
English (en)
Other versions
CN111629028A (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.)
Tsinghua University
Original Assignee
Tsinghua University
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 Tsinghua University filed Critical Tsinghua University
Priority to CN202010281456.5A priority Critical patent/CN111629028B/zh
Publication of CN111629028A publication Critical patent/CN111629028A/zh
Application granted granted Critical
Publication of CN111629028B publication Critical patent/CN111629028B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/563Data redirection of data network streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供面向分布式多云存储的数据传输调度系统。该系统包括:代理服务器作为用户上传及下载中继优化数据传输,将云存储节点链路带宽反馈给调度控制器,并将数据迁移至其他区域云存储节点;调度控制器基于预设优先级在线排队处理用户操作请求,根据云存储节点链路带宽选取访问性能最优节点集合,并自适应调整节点代理服务器数量;本地管理器用于将用户请求操作发送至调度控制器,根据预设数据存储方式与返回的性能最优节点集合交互完成数据传输。本发明可以为大多数云存储服务上层应用程序提供通用完备的数据传输支持,其同时考虑优化数据传输性能与高效利用资源,能够有效平衡用户体验和应用服务商的资源开销。

Description

面向分布式多云存储的数据传输调度系统
技术领域
本发明属于云存储技术领域,尤其涉及面向分布式多云存储的数据传输调度系统。
背景技术
云存储服务相较于传统网络存储具有易于访问、维护成本低、可扩展性高等优势,近年来被越来越多的企业应用和个人用户所使用。目前亚马逊AWS、微软Azure、谷歌云平台、阿里云等流行云服务商都部署了全球分布式数据中心,用以向不同地区用户提供有质量保障的在线数据存储和内容分发服务。在此基础上,云存储服务应用利用公有云平台的分布式节点构建内容分发网络(CDN),向用户提供低时延的数据访问。例如谷歌Drive和微软OneDrive等个人云利用各自部署的全球骨干网络在分布式节点间进行高带宽数据传输,从而提升文件同步整体效率。
然而,分布式云存储节点一般都存在访问时延高度不稳定的情况,云存储服务的最优访问性能会随时间变化从不同节点获得。对于某一特定地区用户来说,通常访问性能最好的云存储节点有可能在某一时段性能非常差甚至不可使用,上传/下载文件时通过DNS解析云存储服务域名所得IP地址对应访问节点往往不是当前性能最优节点。针对以上问题,测量实验表明整合多个云的分布式节点作为存储节点部署系统可以降低数据访问时延,但如何合理确定各节点的数据传输量使整体性能最优仍需要进一步研究。另一方面,云存储服务需要在一定时限内执行用户请求的文件上传/下载以及各种目录操作以保证用户体验。而一些统计显示云存储服务的用户请求呈现周期性突发,集中处理突发到达的大量请求以及超量预留资源都会给云服务器带来巨大开销。因此,如何有效调整云服务器和网络带宽资源分配以平衡用户体验和资源开销亟待解决。
发明内容
本发明的目的在于提供面向分布式多云存储的数据传输调度系统,优化数据传输性能以满足用户实时性需求,同时尽可能降低应用服务商的计算、存储和网络带宽资源开销,以解决上述现有技术中存在的实际问题。
为了实现上述目的,本发明采用的技术方案是:
面向分布式多云存储的数据传输调度系统,包括:代理服务器、调度控制器和本地管理器;其中:
所述代理服务器与本区域云存储节点邻近部署,作为用户上传及下载中继优化数据传输,在线估算云存储节点链路带宽反馈给所述调度控制器,并在闲时将数据迁移至其他区域云存储节点;
所述调度控制器基于预设优先级在线排队处理用户操作请求,周期性收集云存储节点链路带宽,选取访问性能最优节点集合提供给当前请求操作的客户端,并自适应调整若干节点的代理服务器数量;
所述本地管理器在客户端监控用户请求操作,将用户请求操作发送至所述调度控制器,根据预设数据存储方式与返回的性能最优节点集合交互完成数据传输。
所述代理服务器包括带宽测量模块、传输优化模块和数据迁移模块;其中:
所述带宽测量模块根据周期性传输测量预设文件和预设时间段内数据上传及下载的时延记录,估算用户与云存储节点之间的链路带宽。具体地,在闲时与若干客户端之间传输预设大小测试文件以获得链路测量传输时间,并据此计算初始测量带宽;按状态反馈周期进行时间分段,在每个时间段内记录所有客户端历史上传和下载数据用时;当每次传输请求到达时,计算当前时间段内最近预设数量文件的链路带宽的调和平均值作为当前可用带宽;若传输的实际文件数量小于预设数量,则按实际文件数量求取平均带宽作为当前可用带宽;若尚无文件传输,则获取初始测量带宽作为当前可用带宽。
所述传输优化模块以低时延访问邻近存储节点的数据,与客户端数据传输过程中进行优化处理。具体地,当客户端发送上传或下载请求时,接收客户端生成的请求文件的校验和列表;在维护的元数据列表中查找节点中存储的相似文件;若存在所述相似文件,对于文件上传,向客户端返回该文件的校验和列表使其生成增量文件上传,接收增量文件生成新版本文件,调用云API将新版本文件存储于节点;对于文件下载,调用云API获取节点中的文件版本生成增量文件,返回至客户端生成新版本文件;若不存在所述相似文件,采用常规上传或下载处理,对超过预设容量的文件分别进行压缩处理。
所述数据迁移模块在无数据传输时为跨地理区域用户构建哈希树对比云存储节点间的元数据一致性,将待迁移文件经过优化传输迁移至其他区域云存储节点。具体地,计算用户所有文件的哈希值,按照文件本地存储路径分簇生成哈希树;待两个云存储节点均无数据传输时启动数据迁移,由两个代理服务器从上至下交换哈希树各层对比哈希值,确定待迁移文件;源端代理调用云API从源节点获取待迁移文件,根据文件大小进行打包或压缩处理;在代理之间建立网络长连接传输文件;目的端代理将文件解压,调用云API存储至目的节点;待所有文件完成迁移,删除源节点中文件及对应的元数据。
所述调度控制器包括请求排队模块和代理适配模块;其中:
所述请求排队模块由请求到达时间与预计完成时间之和定义预设优先级,根据预设优先级排队处理用户文件操作请求。具体地,当用户请求到达时,记录到达时间并将请求加入处理队列;计算待传输文件的预计完成时间;将不涉及传输的文件操作对应的完成时间设置为固定值;将处理队列按照由请求到达时间与预计完成时间之和定义的预设优先级进行排序;将排序后的操作分类添加至若干个消息队列,由每个消息队列的处理线程通知客户端执行操作,并提供当前性能最优节点集合。
所述代理适配模块根据云存储节点若干代理服务器反馈的实际带宽与最大带宽之比分别与预设拥塞阈值和预设空闲阈值进行比较,动态调整代理服务器数量,并确定单次数据传输的中继代理。具体地,当实际带宽与最大带宽之比小于预设拥塞阈值时,在节点处增加部署一个代理服务器;当实际带宽与最大带宽之比大于预设空闲阈值时,在节点处回收带宽最低的代理服务器;当客户端请求数据传输时,根据所有代理服务器反馈的当前实际带宽,选取带宽最高的代理服务器作为数据传输的中继代理。
所述本地管理器包括传输管理模块。所述传输管理模块根据所述调度控制器返回的性能最优节点集合,按照多副本存储方式和冗余编码存储方式分别选取节点集合上传和下载文件,并通过查询元数据处理文件删除操作。具体地,对于多副本存储方式,上传数据到当前性能最优节点,另随机选取预设数量的节点闲时上传副本;下载时根据有数据节点的链路带宽进行下载量分配;对于冗余编码存储方式,对数据分块并使用纠删码冗余编码,随机选取预设数量的节点进行上传;下载时将冗余块的下载节点选取归约为0-1整数规划问题,采用分支限界方法求近似最优解;对于不涉及数据传输的文件删除操作,删除所有节点存储的数据和分块。
本发明提供的面向分布式多云存储的数据传输调度系统,有益效果体现在可以为大多数云存储服务上层应用程序提供通用完备的数据传输支持。不同于现有云存储数据传输优化和任务调度技术仅考虑特定场景下最优化问题,其同时考虑优化数据传输性能与高效利用资源,采用包括针对两种数据存储方式的传输优化、基于优先级的请求排队、代理数量自适应等方法,能够有效平衡用户体验和应用服务商的资源开销。
附图说明
图1为本发明的系统整体结构图;
图2为本发明的带宽测量模块工作流程图;
图3为本发明的传输优化模块工作流程图;
图4为本发明的数据迁移模块工作流程图;
图5为本发明的请求排队模块工作流程图;
图6为本发明的代理适配模块工作流程图;
图7为本发明的传输管理模块工作流程图。
具体实施方式
下面结合附图详细说明本发明的实施方式:
本发明提出面向分布式多云存储的数据传输调度系统,其整体结构图如图1所示,包括:代理服务器、调度控制器和本地管理器;其中:
所述代理服务器与本区域云存储节点邻近部署,作为用户上传及下载中继优化数据传输,在线估算云存储节点链路带宽反馈给所述调度控制器,并在闲时将数据迁移至其他区域云存储节点;
所述调度控制器基于预设优先级在线排队处理用户操作请求,周期性收集云存储节点链路带宽,选取访问性能最优节点集合提供给当前请求操作的客户端,并自适应调整若干节点的代理服务器数量;
所述本地管理器在客户端监控用户请求操作,将用户请求操作发送至所述调度控制器,根据预设数据存储方式与返回的性能最优节点集合交互完成数据传输。
所述代理服务器包括带宽测量模块、传输优化模块和数据迁移模块;其中:
所述带宽测量模块根据实时测量的用户上传/下载数据时延估算当前云存储节点的可用带宽,如图2所示,其工作流程如下:
1)在闲时与各客户端之间周期性传输特定大小(设为SF)测试文件测量链路传输用时,使用BWl=SF/Tl估算各段链路l的上下行带宽记为初始测量带宽;
2)按照向调度控制器反馈状态周期将时间分段,在每个时间段内记录每个客户端历史上传/下载数据用时;
3)在每次传输请求到达时,计算当前时间段内最近k个文件(通常可取k=5)的链路带宽
Figure BDA0002446734250000051
求其调和平均值作为当前可用带宽
Figure BDA0002446734250000052
4)如果当前时间段内不足k个文件传输,按实际个数求平均值作为当前可用带宽;
5)如果当前时间段内还没有文件传输,则仍取上述初始测量带宽作为当前可用带宽值。
此处需要说明的是,由于传输链路带宽会随时间经常变化,只利用周期性粗粒度的带宽估算会对传输工作量的最优分配带来很大影响;观测发现网络状况通常在短时间尺度上保持稳定可以相对精确预测,因此上述工作流程可以细粒度地估算链路带宽变化情况。
所述传输优化模块在中继传输的过程中对数据传输进行增量编码、压缩等优化处理,如图3所示,其工作流程如下:
1)在客户端发送上传/下载请求时,接收客户端生成的请求文件f的校验和列表,这里是对于所有上传和存在本地版本的下载情况;
2)根据校验和列表在维护的元数据中查找节点中存储的相似文件f’,若存在相似文件则对上传和下载分别执行步骤3)和步骤4),若无文件匹配则跳转到步骤5);
3)对于文件上传,向客户端返回f’的校验和列表用于生成增量文件,随后接收增量文件上传并最终生成新版本文件f,调用云API存储于节点;
4)对于存在f的文件下载,调用云API获取节点中的文件版本f’,生成增量文件返回给客户端,用于最终生成新版本文件f’;
5)对于其他情况采用一般的上传/下载,对大文件(如大小超过10MB)在上传下载前进行压缩,例如使用bzip2,完成后另一方解压处理。
此处需要说明的是,由于代理服务器可以低时延从云存储节点存取数据(例如亚马逊同一区域的EC2和S3之间数据传输速率在上百Mbps);同时云存储数据集表明大多数文件都被用户修改过,在云和客户端存储的版本有明显相似性,因此上述工作流程能有效降低整体传输时延和网络流量。
所述数据迁移模块在无数据传输的闲时将跨地理区域用户的数据迁移到其他区域云存储节点,如图4所示,其工作流程如下:
1)对用户所有文件计算哈希值,将文件按在客户端的存储路径分簇,通过字符串连接“+”计算包含n个文件{fi}(i=1,2,…,n)的目录d的哈希值Hash(d0)=Hash(Hash(d0)+∑Hash(fi)),其中Hash(d0)为存储路径计算的哈希值,按存储路径逐层迭代计算,最终生成一棵高度为h的哈希树;
2)当两个云存储节点都无数据传输时启动数据迁移,两个代理服务器间按哈希树从上至下逐层交换对比目录哈希值,哈希值匹配代表目录下所有文件一致,对不匹配目录对比下层目录或文件直至最下层文件,在最多h次交互内可以确定所有需要迁移文件,对于每个文件执行下面步骤3)至步骤5);
3)源端代理服务器调用云API从源云存储节点获取文件,判断文件大小是否超过阈值(这里同样取10MB),对于大文件使用bzip2压缩,对于小文件等待其他文件打包成阈值大小的传输块;
4)代理服务器之间建立一个网络长连接,传输小文件打包成的块或大文件,目的端代理服务器异步确认传输成功文件或打包块;
5)目的端代理服务器解压文件或解开打包传输块,调用云API将文件存储到目的云存储节点;
6)当完成所有文件迁移,删除源云存储节点处文件及其元数据。
此处需要说明的是,为了不影响用户数据传输性能,云存储节点间的数据迁移只在无用户数据传输的闲时进行,会出现暂停迁移的情况。因此在每次启动迁移时,都需要对比源端和目的端节点间用户数据一致性,确定实际需要迁移的文件。通过在代理服务器间采用压缩和打包等传输优化技术,可以提升数据迁移的传输效率减少其占用时间。
所述调度控制器包括请求排队模块和代理适配模块;其中:
所述请求排队模块采用一个基于优先级的处理队列对用户的文件上传/下载等操作请求进行排队,如图5所示,其工作流程如下:
1)当用户请求到达调度控制器时,记录其到达时间tA,将该请求加入处理队列;
2)对于大小为Sf文件的传输操作(上传/下载)计算预计完成时间tOT=Sf*(1-β)/BWa,其中BWa代表当前各代理服务器与该客户端间最大的估算链路可用带宽,冗余率β表示经过上述传输优化处理文件减少的传输量,此处根据该文件历史记录预测(未经历过传输优化的文件β=0);
3)对于不涉及数据传输的文件删除等操作,为tOT设置较小的固定值(例如根据当前云存储服务的处理能力可设置为0.5s);
4)将各请求优先级RP定义为请求到达时间tA和预计完成时间tOT之和,调整队列按RP值对请求排序,RP值小的请求优先;
5)排序后的操作分类添加到多个消息队列,由各自的处理线程通知客户端执行对应操作,向其提供当前性能最优的云存储节点。
此处需要说明的是,云存储场景中用户对小任务(小文件操作)时效性要求往往比对大任务(大文件操作)更敏感,而传统先来先服务方法使稍晚于大任务到达的小任务需要等待很长时间,最短任务优先方法使大任务会在小任务不断到达的情况下饿死,为此上述工作流程同时考虑请求到达时间和任务大小。
所述代理适配模块根据各代理服务器反馈的当前与客户端间所有链路的可用带宽,动态调整各云存储节点的代理服务器数量,如图6所示,其工作流程如下:
1)当某个云存储节点所有正在使用的代理服务器实际带宽(当前所有链路可用带宽的最大值)与额定最大带宽的比率都小于一个拥塞阈值θc时,在该节点处增加部署一个代理服务器以均衡现有代理服务器的负载;
2)当某个云存储节点所有正在使用的代理服务器实际带宽与最大带宽的比率都大于一个空闲阈值θl时,在该节点处将带宽最低的代理服务器在其完成当前数据传输后回收以节省资源;
3)当客户端请求数据传输时,根据相关云存储节点所有代理服务器反馈的当前实际带宽,选取其中带宽最高的代理服务器作为传输的中继代理。
此处需要说明的是,为了降低代理服务器数量的频繁波动,上述工作流程采用了一种惰性机制,当所有代理均满足低于或超过阈值时才增加或减少代理服务器。根据对主流云存储服务传输带宽变化情况的测量和对典型文件传输数据集的分析,建议可将拥塞阈值和空闲阈值分别设置为20%和60%。
所述本地管理器除上述与代理服务器传输优化模块交互优化传输的功能外,还包括传输管理模块。
所述传输管理模块向调度控制器发送用户操作请求,根据反馈向/从性能最优云存储节点集里节点上传/下载数据,如图7所示,其工作流程如下:
1)对于多副本存储方式上传操作,上传数据到当前链路带宽最大(即性能最优)的云存储节点,并使用一致性散列法从性能最优节点集里随机另选取m个节点,闲时上传数据副本用于备份(总副本数n=m+1);
2)对于冗余编码存储方式上传操作,上传数据前一般按固定大小分块并使用R-S纠删码进行冗余编码,对于每个冗余块,采用一致性散列法从性能最优节点集里随机选取n个节点各异步上传一次;
3)对于多副本存储方式下载操作,将总下载工作量w对于所有存有数据的n个节点按w=∑wr,r=1,2,…,n分配,使下载用时
Figure BDA0002446734250000091
相等达到整体最小(
Figure BDA0002446734250000092
为各下载链路可用带宽);
4)对于冗余编码方式下载操作,每个分块需要下载p个冗余块来恢复数据,与节点r和分块i之间存储指示变量sri和下载指示变量dri满足关系
Figure BDA0002446734250000095
整个文件下载用时为从各服务节点下载用时最大者
Figure BDA0002446734250000093
(bi为冗余块大小,
Figure BDA0002446734250000094
为各下载链路可用带宽),将该0-1整数规划问题转化为整数线性规划问题,采用分支限界法求{dri}近似最优解;
5)对于不涉及数据传输的文件删除操作,向所有节点负责维护元数据的代理服务器查询是否存在相关数据或分块,若存在则调用API执行删除。
此处需要说明的是,为了保证数据可恢复并降低传输开销,每个文件或冗余块最少可以仅在3个节点各存储一份副本(即上述n=3),相应地对于采用R-S纠删码进行冗余编码,上述p=2。步骤3)中“从各节点下载用时相等时整体用时最小”结论可以简单用反证法证明。
通过以上描述,本领域的技术人员可以清楚地了解到实施方式可借助软件加必需的硬件平台的方式来实现。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,通过部署在云服务器和个人计算机等设备,执行系统整体或者某些部分所述的方法。
以上实施方式仅用以说明本发明的技术方案,而非对其限制;本领域的普通技术人员应当理解:可以对该实施方式所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明技术方案的精神和范围。

Claims (1)

1.面向分布式多云存储的数据传输调度系统,其特征在于,包括:代理服务器、调度控制器和本地管理器;其中:
所述代理服务器与本区域云存储节点邻近部署,作为用户上传及下载中继优化数据传输,在线估算云存储节点链路带宽反馈给所述调度控制器,并在闲时将数据迁移至其他区域云存储节点;
所述调度控制器基于预设优先级在线排队处理用户操作请求,周期性收集云存储节点链路带宽,选取访问性能最优节点集合提供给当前请求操作的客户端,并自适应调整若干节点的代理服务器数量;
所述本地管理器在客户端监控用户请求操作,将用户请求操作发送至所述调度控制器,根据预设数据存储方式与返回的性能最优节点集合交互完成数据传输;
所述本地管理器包括传输管理模块,所述传输管理模块根据所述调度控制器返回的性能最优节点集合,按照多副本存储方式和冗余编码存储方式分别选取节点集合上传和下载文件,并通过查询元数据处理文件删除操作,对应的工作流程包括:
对于多副本存储方式上传操作,上传数据到性能最优的云存储节点,并使用一致性散列法从性能最优节点集里随机另选取m个节点,闲时上传数据副本用于备份,总副本数n=m+1;
对于冗余编码存储方式上传操作,上传数据前按预设固定大小分块并使用R-S纠删码进行冗余编码,对于每个冗余块,采用一致性散列法从性能最优节点集里随机选取n个节点各异步上传一次;
对于多副本存储方式下载操作,将总下载工作量w对于所有存有数据的n个节点按w=∑wr,r=1,2,…,n分配,使下载用时
Figure FDA0003456687860000011
相等达到整体最小,
Figure FDA0003456687860000012
为各下载链路可用带宽;
对于冗余编码方式下载操作,每个分块需要下载p个冗余块来恢复数据,与节点r和分块i之间存储指示变量sri和下载指示变量dri满足关系∑dri=p,dri≤sri∈{0,1},整个文件下载用时为从各服务节点下载用时最大者
Figure FDA0003456687860000021
bi为冗余块大小,
Figure FDA0003456687860000022
为各下载链路可用带宽,将0-1整数规划问题转化为整数线性规划问题,采用分支限界法求{dri}近似最优解;
对于不涉及数据传输的文件删除操作,向所有节点负责维护元数据的代理服务器查询是否存在相关数据或分块,若存在则调用API执行删除;
所述代理服务器包括带宽测量模块、传输优化模块和数据迁移模块;其中:
所述带宽测量模块根据周期性传输测量预设文件和预设时间段内数据上传及下载的时延记录,估算用户与云存储节点之间的链路带宽,对应的工作流程包括:
在闲时与各客户端之间周期性传输特定大小测试文件测量链路传输用时,使用BWl=SF/Tl估算各段链路l的上下行带宽记为初始测量带宽;
按照向调度控制器反馈状态周期将时间分段,在每个时间段内记录每个客户端历史上传/下载数据用时;
在每次传输请求到达时,计算当前时间段内最近k个文件的链路带宽
Figure FDA0003456687860000023
求其调和平均值作为当前可用带宽
Figure FDA0003456687860000024
如果当前时间段内不足k个文件传输,按实际个数求平均值作为当前可用带宽;
如果当前时间段内还没有文件传输,则仍取上述初始测量带宽作为当前可用带宽值;
所述传输优化模块以低时延访问邻近存储节点的数据,与客户端数据传输过程中进行优化处理,对应的工作流程包括:
1)在客户端发送上传/下载请求时,接收客户端生成的请求文件f的校验和列表,这里是对于所有上传和存在本地版本的下载情况;
2)根据校验和列表在维护的元数据中查找节点中存储的相似文件f’,若存在相似文件则对上传和下载分别执行步骤3)和步骤4),若无文件匹配则跳转到步骤5);
3)对于文件上传,向客户端返回f’的校验和列表用于生成增量文件,随后接收增量文件上传并最终生成新版本文件f,调用云API存储于节点;
4)对于存在f的文件下载,调用云API获取节点中的文件版本f’,生成增量文件返回给客户端,用于最终生成新版本文件f’;
5)对于其他情况采用一般的上传/下载,对大文件在上传下载前进行压缩,完成后另一方解压处理;
所述数据迁移模块在无数据传输时为跨地理区域用户构建哈希树对比云存储节点间的元数据一致性,将待迁移文件经过优化传输迁移至其他区域云存储节点,对应的工作流程包括:
1)对用户所有文件计算哈希值,将文件按在客户端的存储路径分簇,通过字符串连接“+”计算包含n个文件{fi}(i=1,2,…,n)的目录d的哈希值Hash(d)=Hash(Hash(d0)+∑Hash(fi)),其中Hash(d0)为存储路径计算的哈希值,按存储路径逐层迭代计算,最终生成一棵高度为h的哈希树;
2)当两个云存储节点都无数据传输时启动数据迁移,两个代理服务器间按哈希树从上至下逐层交换对比目录哈希值,哈希值匹配代表目录下所有文件一致,对不匹配目录对比下层目录或文件直至最下层文件,在最多h次交互内可以确定所有需要迁移文件,对于每个文件执行下面步骤3)至步骤5);
3)源端代理服务器调用云API从源云存储节点获取文件,判断文件大小是否超过阈值,对于大文件使用bzip2压缩,对于小文件等待其他文件打包成阈值大小的传输块;
4)代理服务器之间建立一个网络长连接,传输小文件打包成的块或大文件,目的端代理服务器异步确认传输成功文件或打包块;
5)目的端代理服务器解压文件或解开打包传输块,调用云API将文件存储到目的云存储节点;
6)当完成所有文件迁移,删除源云存储节点处文件及其元数据;
所述调度控制器包括请求排队模块和代理适配模块;其中:
所述请求排队模块由请求到达时间与预计完成时间之和定义预设优先级,根据预设优先级排队处理用户文件操作请求,对应的工作流程包括:
当用户请求到达调度控制器时,记录其到达时间tA,将该请求加入处理队列;
对于大小为Sf文件的传输操作计算预计完成时间tOT=Sf*(1-β)/BWa,其中BWa代表当前各代理服务器与该客户端间最大的估算链路可用带宽,冗余率β表示经过上述传输优化处理文件减少的传输量,此处根据该文件历史记录预测;
对于不涉及数据传输的文件删除等操作,为tOT设置较小的固定值;
将各请求优先级RP定义为请求到达时间tA和预计完成时间tOT之和,调整队列按RP值对请求排序,RP值小的请求优先;
排序后的操作分类添加到多个消息队列,由各自的处理线程通知客户端执行对应操作,向其提供当前性能最优的云存储节点;
所述代理适配模块根据云存储节点若干代理服务器反馈的实际带宽与最大带宽之比分别与预设拥塞阈值和预设空闲阈值进行比较,动态调整代理服务器数量,并确定单次数据传输的中继代理,对应的工作流程包括:
当某个云存储节点所有正在使用的代理服务器实际带宽与额定最大带宽的比率都小于一个拥塞阈值θc时,在该节点处增加部署一个代理服务器以均衡现有代理服务器的负载;
当某个云存储节点所有正在使用的代理服务器实际带宽与最大带宽的比率都大于一个空闲阈值θl时,在该节点处将带宽最低的代理服务器在其完成当前数据传输后回收以节省资源;
当客户端请求数据传输时,根据相关云存储节点所有代理服务器反馈的当前实际带宽,选取其中带宽最高的代理服务器作为传输的中继代理。
CN202010281456.5A 2020-04-10 2020-04-10 面向分布式多云存储的数据传输调度系统 Active CN111629028B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010281456.5A CN111629028B (zh) 2020-04-10 2020-04-10 面向分布式多云存储的数据传输调度系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010281456.5A CN111629028B (zh) 2020-04-10 2020-04-10 面向分布式多云存储的数据传输调度系统

Publications (2)

Publication Number Publication Date
CN111629028A CN111629028A (zh) 2020-09-04
CN111629028B true CN111629028B (zh) 2022-02-25

Family

ID=72259631

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010281456.5A Active CN111629028B (zh) 2020-04-10 2020-04-10 面向分布式多云存储的数据传输调度系统

Country Status (1)

Country Link
CN (1) CN111629028B (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112290676B (zh) * 2020-10-20 2022-06-24 中腾微网(北京)科技有限公司 现场数据与云存储系统相结合的光伏电站控制系统
CN112637354B (zh) * 2020-12-28 2022-10-18 同方威视科技江苏有限公司 基于云存储的数据传输管理方法、系统与设备
CN113194330A (zh) * 2021-03-25 2021-07-30 电子科技大学 一种碎片化多云视频资源管理方法及系统
CN113242278B (zh) * 2021-04-19 2023-04-14 中国电影科学技术研究所 基于电影云端制作异构网络的通信方法、装置和电子设备
CN113472849B (zh) * 2021-05-31 2022-10-28 济南浪潮数据技术有限公司 一种节点的管理方法、系统、设备以及介质
CN113572813B (zh) * 2021-06-22 2022-06-14 复旦大学 一种基于网络编码的数据备份方法
CN114500514B (zh) * 2022-02-14 2023-12-12 京东科技信息技术有限公司 用于云存储的文件传输方法及装置、电子设备和存储介质
CN114584552B (zh) * 2022-02-28 2023-06-23 西安交通大学 面向分布式ct文件传输的调度方法、系统、设备及介质
CN114546980B (zh) * 2022-04-25 2022-07-08 成都云祺科技有限公司 一种nas文件系统的备份方法、系统及存储介质
CN114666284B (zh) * 2022-05-23 2022-11-15 阿里巴巴(中国)有限公司 一种流量控制方法、装置、电子设备及可读存储介质
CN116614379B (zh) * 2023-07-18 2023-10-10 中移(苏州)软件技术有限公司 迁移服务的带宽调整方法、装置及相关设备
CN116980641B (zh) * 2023-09-22 2023-12-15 江西云眼视界科技股份有限公司 视频迁移的异步处理方法、系统、计算机及存储介质
CN117459901B (zh) * 2023-12-26 2024-03-26 深圳市彩生活网络服务有限公司 一种基于定位技术的云平台数据智能管理系统及方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105491145A (zh) * 2015-12-21 2016-04-13 清华大学 多厂商云存储服务的聚合系统及方法
CN107018185A (zh) * 2017-03-28 2017-08-04 清华大学 云存储系统的同步方法和装置
CN108989384A (zh) * 2018-05-31 2018-12-11 华为技术有限公司 一种数据处理的方法、多云管理系统以及相关设备
US10547679B1 (en) * 2018-01-02 2020-01-28 Architecture Technology Corporation Cloud data synchronization based upon network sensing

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8799413B2 (en) * 2010-05-03 2014-08-05 Panzura, Inc. Distributing data for a distributed filesystem across multiple cloud storage systems
US8918368B2 (en) * 2011-09-26 2014-12-23 Gladinet, Inc. System and method for providing access to a file in real time during a cloud storage upload process
US10198447B2 (en) * 2015-09-14 2019-02-05 Komprise Inc. Electronic file migration system and various methods of transparent data migration management

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105491145A (zh) * 2015-12-21 2016-04-13 清华大学 多厂商云存储服务的聚合系统及方法
CN107018185A (zh) * 2017-03-28 2017-08-04 清华大学 云存储系统的同步方法和装置
US10547679B1 (en) * 2018-01-02 2020-01-28 Architecture Technology Corporation Cloud data synchronization based upon network sensing
CN108989384A (zh) * 2018-05-31 2018-12-11 华为技术有限公司 一种数据处理的方法、多云管理系统以及相关设备

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
CoCloud: Enabling efficient cross-cloud file collaboration based on inefficient web APIs;Jinlong E.等;《 IEEE INFOCOM 2017 - IEEE Conference on Computer Communications》;20171005;第1-8页 *
CoCloud: Enabling Efficient Cross-Cloud File Collaboration Based on Inefficient Web APIs;Jinlong E.等;《IEEE Transactions on Parallel and Distributed Systems》;20180101;第29卷(第1期);第1-12页 *
HyCloud: Tweaking Hybrid Cloud Storage Services for Cost-Efficient Filesystem Hosting;Jinlong E等;《 IEEE INFOCOM 2019 - IEEE Conference on Computer Communications》;20190617;全文 *

Also Published As

Publication number Publication date
CN111629028A (zh) 2020-09-04

Similar Documents

Publication Publication Date Title
CN111629028B (zh) 面向分布式多云存储的数据传输调度系统
US11010188B1 (en) Simulated data object storage using on-demand computation of data objects
TWI528191B (zh) File Handling Method Based on Cloud Storage, System and Server Cluster System
US7773522B2 (en) Methods, apparatus and computer programs for managing performance and resource utilization within cluster-based systems
JP5901024B2 (ja) コンテンツ配信に利用される動的バインド
US8275787B2 (en) System for managing data collection processes
CN111200657B (zh) 一种管理资源状态信息的方法和资源下载系统
US8131693B2 (en) Methods and systems for transferring data over electronic networks
US20110213879A1 (en) Multi-level Decision Support in a Content Delivery Network
US20150309874A1 (en) A method and apparatus for code length adaptation for access to key-value based cloud storage systems
CN103024081B (zh) 适用于有时效保证通讯系统的点对点通讯的终端调度方法
US11102289B2 (en) Method for managing resource state information and system for downloading resource
US11347550B1 (en) Autoscaling and throttling in an elastic cloud service
WO2002093846A1 (en) Method of transferring a divided file
CN110716808A (zh) 业务处理方法、装置、计算机设备和存储介质
US20050058138A1 (en) Communications management system
CN108667920B (zh) 一种雾计算环境业务流量加速系统及其业务流量加速方法
JP7211632B2 (ja) 通信資源を評価するためのシステムおよび方法
US10635334B1 (en) Rule based data transfer model to cloud
JP3672483B2 (ja) コンテンツ配信装置、コンテンツ配信方法、コンテンツ配信プログラムを記録した記録媒体
Tlili et al. Daresch: deadline-aware request scheduling for cloud storage services
US11695644B2 (en) Communication management apparatus and communication management method
US11861176B2 (en) Processing of input/ouput operations by a distributed storage system based on latencies assigned thereto at the time of receipt
JP4483633B2 (ja) ハードウェアリソースの状態を管理するための情報処理装置、方法及びプログラム
CN116633921A (zh) 基于边缘缓存的cdn-p2p网络及缓存方法、缓存放置方法

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