一种数据传输平台及方法技术

技术编号:36881972 阅读:10 留言:0更新日期:2023-03-15 21:14
本发明专利技术公开了一种数据传输平台及方法。该数据传输平台部署在每个集群内,每个数据传输平台均包括一个调度器和至少一个节点;调度器通过各个节点选举实现单例,用于对数据传输任务进行统一流控和优先级调度;每个节点均包括接待员、传输客户端和传输服务端;接待员用于接收调度客户端下发的数据传输任务并转发给调度器;传输客户端用于接收并执行调度器下发的数据传输任务;传输服务端用于接收传输客户端传输的数据。调度器能够对数据传输任务进行统一流控和优先级调度,保证在多用户同时传输文件时依然不会占满集群间的网络带宽,保障业务优先级较高的文件优先传输;调度器通过众节点选举实现单例,当该节点故障时会重新选举,实现高可用调度。实现高可用调度。实现高可用调度。

【技术实现步骤摘要】
一种数据传输平台及方法


[0001]本申请涉及大数据
,特别是涉及一种数据传输平台及方法。

技术介绍

[0002]企业在生产和大数据业务处理时往往需要进行跨级群的文件数据的传输,并且都有以下几个痛点:
[0003](1)数据量级大,数据量多,难以处理;
[0004](2)跨地域传输,网络不稳定,对文件数据传输的可靠性和一致性又要求很高;
[0005](3)带宽有限,如果数据传输耗时长且数据量大,很容易挤占集群间的网络带宽,导致其他需要实时通信的业务受到影响。即使对单个任务设置了限流传输,当有多位用户同时传输时,依然会导致集群间网络带宽的挤占;
[0006](4)现有工具一般没有集中式带宽管理和优先级控制,多用户情况下会会相互挤占有限的带宽资源,相互影响;
[0007](5)出于安全原因集群间网络访问受限,只能单向访问,甚至网络不能直接互通只能通过跳板机间接访问;
[0008](6)跨文件系统,S3/FTP/SFTP/HDFS等等多种文件系统下的文件需要能够实现相互传输。
[0009]在进行文件数据传输时,基于FTP/SFTP协议的数据传输是最简单的传输方式,但是存在单点问题,面对tb级别的数据量以及不可靠的网络环境,单节点的往往捉襟见肘,任何的网络波动都有可能导致文件传输中断影响可靠性。并且不能支持跨文件系统的传输。DistCp是Apache提供的Hadoop生态的集群间文件传输工具,能够做到大数据量级的数据迁移。但是该工具并不能支持传输带宽限制,并且需要保证集群间的网络互联互通,且不支持开启Kerberos但时钟不同步的集群间迁移,此外对Hadoop生态以外的文件系统的支持也是一个问题。
[0010]因此,专利技术人认识到,亟需一种能够支持大数据量可靠传输、有完善的限流和优先级管理、支持代理传输、支持多种文件系统的高可用数据传输平台。

技术实现思路

[0011]基于此,针对上述技术问题,提供一种能够支持限流和优先级管理的的高可用数据传输平台,以解决现有技术存在的现有据传输平台没有集中式带宽管理和优先级控制的问题。
[0012]为了实现上述目的,本申请提供如下技术方案:
[0013]第一方面,一种数据传输平台,部署在每个集群内,每个集群的数据传输平台均包括一个调度器和至少一个节点;所述调度器通过各个节点选举实现单例,用于对接收到的数据传输任务进行统一流控和优先级调度;每个节点均包括:
[0014]接待员,用于与调度客户端和所述调度器进行通信,接收所述调度客户端下发的
数据传输任务并转发给所述调度器;所述调度客户端创建在本地客户端上或创建在所述数据传输平台上;
[0015]传输客户端,用于与所述调度器进行通信,接收并执行所述调度器下发的数据传输任务,将数据传输给目标集群的数据传输平台的传输服务端,并将执行结果返回给所述调度器;
[0016]传输服务端,用于与传输客户端进行通信,接收传输客户端传输的数据,并在数据完成传输后自动校验文件,将校验结果返回给传输客户端。
[0017]可选地,所述传输客户端还用于与目标集群的数据传输平台的传输服务端创建一条传输通道,将数据通过传输通道传输到目标集群的数据传输平台的传输服务端。
[0018]进一步可选地,所述传输通道用于按照调度器设置的流量限制自动对传输进行限流,并且支持多种数据压缩格式。
[0019]进一步可选地,所述传输通道包括背压控制器、环形缓冲区、后端监控器、压缩器、解压缩器、帧编码器、帧解码器、前端监控器、写缓冲区和读缓冲区。
[0020]进一步可选地,在所述传输通道中的消息写流程包括:
[0021]外部系统通过数据流的方式向传输通道写入数据;
[0022]背压控制器通过前端监控器提供的写缓冲区使用情况判断是否处于写缓冲区可写入状态;如果写缓冲区不可写,则触发写端背压,进行阻塞等待;
[0023]后端监控器统计消息的读写数据量情况;
[0024]压缩器对消息进行压缩;
[0025]压缩后的消息通过帧编码器进行编码,将压缩后的消息封装成一个一个的数据帧;
[0026]前端监控器统计实际网络传输的数据量情况和写缓冲区的使用情况;
[0027]消息写入到写缓冲区并准备发送;
[0028]在所述传输通道中的消息的读流程包括:
[0029]网络消息被写入到读缓冲区内;
[0030]前端监控器统计网络接收的数据量情况和读缓冲区的使用情况;
[0031]帧解码器对网络消息进行解码,生成数据帧;
[0032]解压缩器对数据帧进行解压缩获取实际传输的数据;
[0033]后端监控区获取实际读取的消息大小和环形缓冲区的使用情况;
[0034]背压控制器判断环形缓冲区是否已满,如果已满则触发读端背压,轮训等待缓冲区有剩余空间时将数据写入到环形缓冲区下;
[0035]外部系统通过数据流的方式读取环形缓冲区的数据进行后续的处理。
[0036]可选地,所述数据传输平台采用GOSSIP协议。
[0037]可选地,所述传输客户端和传输服务端支持PUSH和PULL两种数据传输模式。
[0038]进一步可选地,所述接待员还用于为客户端查询需要进行迁移的文件信息,便于调度客户端创建数据迁移任务。
[0039]第二方面,一种数据传输方法,应用于第一方面所提供的数据传输平台,所述方法包括:
[0040]集群A的接待员接收创建在本地客户端上的第一调度客户端下发的第一数据传输
任务,并转发给集群A的调度器;
[0041]集群A的调度器对接收到的所述第一数据传输任务进行任务校验和优先级调度,并为所述第一数据传输任务注册占用带宽,然后将所述第一数据传输任务下发给集群A的传输客户端;
[0042]集群A的传输客户端与目标集群B的传输服务端创建连接,并按照调度器注册的带宽大小向目标集群B的传输服务端进行数据传输;集群A的传输客户端实时将传输进度通过集群A的接待员推送给所述第一调度客户端;
[0043]传输完成时,集群A的传输客户端接收目标集群B的传输服务端返回的校验结果;
[0044]传输完成后,集群A的传输客户端向集群A的调度器返回任务结果,集群A的调度器释放所述第一数据传输任务占用的带宽后,通过集群A的接待员向所述第一调度客户端返回所述第一数据传输任务的最终结果。
[0045]可选地,所述方法还包括:
[0046]目标集群B的传输服务端在接收到集群A的传输客户端发来的数据时,在目标集群B上创建第二调度客户端,所述第二调度客户端向目标集群B的接待员下发第二数据传输任务;
[0047]目标集群B的接待员接收所述第二调度客户端下发的第二数据传输任务,并转发给目标集群B的调度器;
[0048]目标集群B的调度器对接收到的所述第二数据传输任务进行任务校验和优先级调度,并为所述第本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据传输平台,其特征在于,部署在每个集群内,每个集群的数据传输平台均包括一个调度器和至少一个节点;所述调度器通过各个节点选举实现单例,用于对接收到的数据传输任务进行统一流控和优先级调度;每个节点均包括:接待员,用于与调度客户端和所述调度器进行通信,接收所述调度客户端下发的数据传输任务并转发给所述调度器;所述调度客户端创建在本地客户端上或创建在所述数据传输平台上;传输客户端,用于与所述调度器进行通信,接收并执行所述调度器下发的数据传输任务,将数据传输给目标集群的数据传输平台的传输服务端,并将执行结果返回给所述调度器;传输服务端,用于与传输客户端进行通信,接收传输客户端传输的数据,并在数据完成传输后自动校验文件,将校验结果返回给传输客户端。2.根据权利要求1所述的数据传输平台,其特征在于,所述传输客户端还用于与目标集群的数据传输平台的传输服务端创建一条传输通道,将数据通过传输通道传输到目标集群的数据传输平台的传输服务端。3.根据权利要求2所述的数据传输平台,其特征在于,所述传输通道用于按照调度器设置的流量限制自动对传输进行限流,并且支持多种数据压缩格式。4.根据权利要求2所述的数据传输平台,其特征在于,所述传输通道包括背压控制器、环形缓冲区、后端监控器、压缩器、解压缩器、帧编码器、帧解码器、前端监控器、写缓冲区和读缓冲区。5.根据权利要求4所述的数据传输平台,其特征在于,在所述传输通道中的消息写流程包括:外部系统通过数据流的方式向传输通道写入数据;背压控制器通过前端监控器提供的写缓冲区使用情况判断是否处于写缓冲区可写入状态;如果写缓冲区不可写,则触发写端背压,进行阻塞等待;后端监控器统计消息的读写数据量情况;压缩器对消息进行压缩;压缩后的消息通过帧编码器进行编码,将压缩后的消息封装成一个一个的数据帧;前端监控器统计实际网络传输的数据量情况和写缓冲区的使用情况;消息写入到写缓冲区并准备发送;在所述传输通道中的消息的读流程包括:网络消息被写入到读缓冲区内;前端监控器统计网络接收的数据量情况和读缓冲区的使用情况;帧解码器对网络消息进行解码,生成数据帧;解压缩器对数据帧进行解压缩获取实际传输的数据;后端监控区获取实际读取的消息大小和环形缓冲区的使用情况;背压控制器判断环形缓冲区是否已满,如果已满则触发读端背压,轮训等待缓冲区有剩余空间时将数据写入到环形缓冲区下;外部系统通过数据流的方式读取环形缓冲区的数据进行后续的处理。6.根据权利要求1所述的数据传输平台,其...

【专利技术属性】
技术研发人员:施力陈明坤
申请(专利权)人:联洋国融北京科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1