CN116233057A - 数据传输方法、云中心、边缘节点及存储介质 - Google Patents
数据传输方法、云中心、边缘节点及存储介质 Download PDFInfo
- Publication number
- CN116233057A CN116233057A CN202111480797.6A CN202111480797A CN116233057A CN 116233057 A CN116233057 A CN 116233057A CN 202111480797 A CN202111480797 A CN 202111480797A CN 116233057 A CN116233057 A CN 116233057A
- Authority
- CN
- China
- Prior art keywords
- node
- nodes
- alternative
- cloud center
- information
- 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.)
- Pending
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 130
- 238000000034 method Methods 0.000 title claims abstract description 114
- 238000003860 storage Methods 0.000 title claims abstract description 17
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 37
- 230000015654 memory Effects 0.000 claims description 54
- 238000009826 distribution Methods 0.000 claims description 26
- 238000010586 diagram Methods 0.000 description 41
- 238000012545 processing Methods 0.000 description 20
- 238000009434 installation Methods 0.000 description 19
- 230000006870 function Effects 0.000 description 14
- 238000012216 screening Methods 0.000 description 14
- 238000004891 communication Methods 0.000 description 8
- 238000004590 computer program Methods 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- KLDZYURQCUYZBL-UHFFFAOYSA-N 2-[3-[(2-hydroxyphenyl)methylideneamino]propyliminomethyl]phenol Chemical compound OC1=CC=CC=C1C=NCCCN=CC1=CC=CC=C1O KLDZYURQCUYZBL-UHFFFAOYSA-N 0.000 description 2
- 201000001098 delayed sleep phase syndrome Diseases 0.000 description 2
- 208000033921 delayed sleep phase type circadian rhythm sleep disease Diseases 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000011022 operating instruction Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 206010033799 Paralysis Diseases 0.000 description 1
- 241000120694 Thestor Species 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/10—Mapping addresses of different types
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请实施例公开了数据传输方法、云中心、边缘节点及存储介质,云中心获取边缘节点的状态信息,并根据状态信息确定可用节点;向可用节点发送收集指令,以获取可用节点的性能信息;根据动态加权负载查询算法和性能信息确定目标节点,使得目标节点与客户端进行数据传输;其中,目标节点为可用节点中负载最小的边缘节点。边缘节点向云中心发送状态信息;接收云中心发送的收集指令,向云中心发送可用节点的性能信息;其中,收集指令用于请求可用节点的相关信息,可用节点是基于状态信息确定的,从而能够有效提高数据传输效率。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及数据传输方法、云中心、边缘节点及存储介质。
背景技术
近年来,随着云计算和大数据技术的不断发展,越来越多的企业采用大数据技术来分析与储存海量数据,其中,分布式文件系统具有高容错性并提供了高吞吐量的数据访问,非常适合大规模数据集上的应用。然而,在现有技术中,基于分布式文件系统进行数据传输时,通常会忽略不同服务器之间性能状态的差异性,从而导致服务器负载不均衡,传输效率低的问题。
发明内容
本申请实施例提供了数据传输方法、云中心、边缘节点及存储介质,能够有效提高数据传输效率。
本申请实施例的技术方案是这样实现的:
第一方面,本申请实施例提供了一种数据传输方法,所述数据传输方法应用于云中心,所述方法包括:
获取边缘节点的状态信息,并根据所述状态信息确定可用节点;
向所述可用节点发送收集指令,以获取所述可用节点的性能信息;
根据动态加权负载查询算法和所述性能信息确定目标节点,使得所述目标节点与客户端进行数据传输;其中,所述目标节点为所述可用节点中负载最小的边缘节点。
第二方面,本申请实施例提供了一种数据传输方法,所述数据传输方法应用于边缘节点,所述方法包括:
向云中心发送状态信息;
接收所述云中心发送的收集指令,向所述云中心发送可用节点的性能信息;其中,所述收集指令用于请求所述可用节点的相关信息,所述可用节点是基于所述状态信息确定的。
第三方面,本申请实施例提供了一种云中心,所述云中心包括获取单元和确定单元,
所述获取单元,用于获取边缘节点的状态信息,并根据所述状态信息确定可用节点;以及向所述可用节点发送收集指令,以获取所述可用节点的性能信息;
所述确定单元,用于根据动态加权负载查询算法和所述性能信息确定目标节点,使得所述目标节点与客户端进行数据传输;其中,所述目标节点为所述可用节点中负载最小的边缘节点。
第四方面,本申请实施例提供了一种边缘节点,所述边缘节点包括发送单元,
所述发送单元,用于向云中心发送状态信息;以及接收所述云中心发送的收集指令,向所述云中心发送可用节点的性能信息;其中,所述收集指令用于请求所述可用节点的相关信息,所述可用节点是基于所述状态信息确定的。
第五方面,本申请实施例提供了一种云中心,所述云中心包括第一处理器、存储有所述第一处理器可执行指令的第一存储器,当所述指令被所述第一处理器执行时,实现如第一方面所述的方法。
第六方面,本申请实施例提供了一种边缘节点,所述边缘节点包括第二处理器、存储有所述第二处理器可执行指令的第二存储器,当所述指令被所述第二处理器执行时,实现如第二方面所述的方法。
第七方面,本申请实施例提供了一种计算机可读存储介质,其上存储有程序,应用于云中心和边缘节点中,所述程序被第一处理器执行时,实现如第一方面所述的方法;所述程序被第二处理器执行时,实现如第二方面所述的方法。
本申请实施例提供了数据传输方法、云中心、边缘节点及存储介质,云中心获取边缘节点的状态信息,并根据状态信息确定可用节点;向可用节点发送收集指令,以获取可用节点的性能信息;根据动态加权负载查询算法和性能信息确定目标节点,使得目标节点与客户端进行数据传输;其中,目标节点为可用节点中负载最小的边缘节点。边缘节点向云中心发送状态信息;接收云中心发送的收集指令,向云中心发送可用节点的性能信息;其中,收集指令用于请求可用节点的相关信息,可用节点是基于状态信息确定的。由此可见,在本申请中,云中心可以对边缘节点进行监控,通过获取边缘节点的状态信息来确定边缘节点中的可用节点,进而基于动态加权负载查询算法和可用节点的性能信息确定目标节点,由于目标节点是可用节点中负载最小的边缘节点,因此,利用目标节点与客户端进行数据传输,可以极大地提高数据传输的效率;也就是说,本申请考虑了不同边缘节点的性能状态存在差异,通过动态负载查询模型和可用节点的性能信息确定可用节点中的目标节点,从而有效选择出负载最小的节点用于数据传输,有效提高数据传输效率。
附图说明
图1为本申请实施例提出的数据传输方法的实现流程示意图一;
图2为本申请实施例提出的数据传输方法的实现流程示意图二;
图3为本申请实施例提出的数据传输方法的实现流程示意图三;
图4为本申请实施例提出的数据传输方法的实现流程示意图四;
图5为本申请实施例提出的数据传输方法的实现流程示意图五;
图6为本申请实施例提出的数据传输方法的实现流程示意图六;
图7为本申请实施例提出的数据传输方法的实现流程示意图七;
图8为本申请实施例提出的数据传输方法的实现流程示意图八;
图9为本申请实施例提出的数据传输方法的实现示意图一;
图10为本申请实施例提出的数据传输方法的实现示意图二;
图11为本申请实施例提出的数据传输方法的实现流程示意图九;
图12为本申请实施例提出的数据传输方法的实现示意图三;
图13为本申请实施例提出的数据传输方法的实现示意图四;
图14为本申请实施例提出的数据传输方法的实现流程示意图十;
图15为本申请实施例提出的数据传输方法的实现流程示意图十一;
图16为本申请实施例提出的数据传输方法的实现流程示意图十二;
图17为本申请实施例提出的云中心的组成结构示意图一;
图18为本申请实施例提出的边缘节点的组成结构示意图一;
图19为本申请实施例提出的云中心的组成结构示意图二;
图20为本申请实施例提出的边缘节点的组成结构示意图二。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。可以理解的是,此处所描述的具体实施例仅用于解释相关申请,而非对该申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关申请相关的部分。
为了解决现有技术中数据传输方法所存在的问题,本申请实施例提供了数据传输方法、云中心、边缘节点及存储介质,云中心获取边缘节点的状态信息,并根据状态信息确定可用节点;向可用节点发送收集指令,以获取可用节点的性能信息;根据动态加权负载查询算法和性能信息确定目标节点,使得目标节点与客户端进行数据传输;其中,目标节点为可用节点中负载最小的边缘节点。边缘节点向云中心发送状态信息;接收云中心发送的收集指令,向云中心发送可用节点的性能信息;其中,收集指令用于请求可用节点的相关信息,可用节点是基于状态信息确定的,能够有效提高数据传输效率。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
实施例一
本申请实施例提供了一种数据传输方法,图1为本申请实施例提出的数据传输方法的实现流程示意图一,如图1所示,云中心的数据传输方法可以包括以下步骤:
步骤101、获取边缘节点的状态信息,并根据状态信息确定可用节点。
在本申请的实施例中,云中心可以先获取边缘节点的状态信息,并根据状态信息确定可用节点。
需要说明的是,在本申请的实施例中,云中心是按照第一时间间隔获取边缘节点的状态信息的,也就是说,状态信息表征在对应的时间段内,边缘节点的运行状态。
进一步地,在本申请的实施例中,边缘节点的数量可以为多个;云中心可以基于边缘节点的地址获取对应的状态信息。
进一步地,在本申请的实施例中,根据状态信息除了可以确定可用节点以外,还可以根据状态信息确定不可用节点。
进一步地,在本申请的实施例中,可以在云中心上部署注册中心,注册中心主要用于按照第一时间间隔获取边缘节点的状态信息,并对边缘节点的状态信息进行管理和维护,根据边缘节点对应的状态信息生成实例列表;例如,实例列表可以为:10.139.12.104Failed;10.139.12.105OK;10.139.12.108OK。
示例性的,在本申请的实施例中,预先将边缘节点A、B、C的网际互连协议(Internet Protocol,IP)地址信息注册到注册中心,进而注册中心基于边缘节点A、B、C的IP地址信息,并按照第一时间间隔获取其对应的状态信息,状态信息可以包括边缘节点的心跳检测结果;A和B的状态信息为可用,则将A和B确定为可用节点,而C的状态信息为不可用,则将C确定为不可用节点。
需要说明的是,在本申请的实施例中,可以在云中心上预先安装hdfs-over-ftp工具;示例性的,预先在云中心上部署节点管理管理模块和用户配置管理模块,进而可以通过用户配置管理模块添加配置信息,例如,配置信息可以包括用户名、密码、最大登陆次数、空闲时间、上传速率以及下载速率等;通过节点管理上传hdfs-over-ftp工具安装包,在确定了安装目录和安装方式以后,通过读取用户配置管理模块中的配置信息实现hdfs-over-ftp工具的自动安装;其中,安装方式分为两种,第一种是将配置信息写在安装目录对应的配置文件中,第二种是将配置信息写入数据库中,利用第二种方式进行安装时,还需要进一步填写数据库信息;如果选择第一种安装方式,当用户信息变更时,需要重启hdfs-over-ftp应用或者采用热加载方式;而如果选择第二种安装方式,当用户信息变更时,则无需重启hdfs-over-ftp应用,可以提高hdfs-over-ftp应用的易用性和可维护性。
步骤102、向可用节点发送收集指令,以获取可用节点的性能信息。
在本申请的实施例中,在云中心获取边缘节点的状态信息,并根据状态信息确定可用节点之后,可以向可用节点发送收集指令,以获取可用节点的性能信息。
需要说明的是,在本申请的实施例中,如果不存在预设节点,则直接基于可用节点确定目标节点,而如果存在预设节点,则根据预设节点和可用节点确定筛选节点,进而基于筛选节点确定目标节点;其中,筛选节点为预设节点和可用节点的交集;例如,用户设置了预设节点A、B、C,而可用节点为A,B;则可以根据预设节点和可用节点确定筛选节点为A,B,进而基于筛选节点A,B确定目标节点。
可以理解的是,在本申请的实施例中,收集指令可以用于获取可用节点的性能信息,进而基于可用节点的性能信息进行目标节点的确定。
还可以理解的是,在本申请的实施例中,如果存在预设节点,则在确定了筛选节点以后,云中心还可以向筛选节点发送收集指令,以获取筛选节点的性能信息,进而基于筛选节点确定目标节点。
进一步地,在本申请的实施例中,性能信息至少包括一种使用率,例如中央处理器(central processing unit,CPU)使用率、内存使用率、网络使用率以及磁盘输入/输出(Input/Output,I/O)使用率。
步骤103、根据动态加权负载查询算法和性能信息确定目标节点,使得目标节点与客户端进行数据传输;其中,目标节点为可用节点中负载最小的边缘节点。
在本申请的实施例中,在云中心向可用节点发送收集指令,以获取可用节点的性能信息之后,可以根据动态加权负载查询算法和性能信息确定目标节点,使得目标节点与客户端进行数据传输;其中,目标节点为可用节点中负载最小的边缘节点。
需要说明的是,在本申请的实施例中,动态负载查询模型可以用于确定目标节点;具体地,根据动态加权负载查询算法和性能信息确定目标节点的方法主要包括:若第一节点的性能信息中的任意一种使用率小于或者等于任意一种使用率对应的使用率阈值,则计算第一节点的实时负载比率;若实时负载比率小于预设负载阈值,则将第一节点确定为备选节点;若备选节点的数量不为零,且第一备选节点对应的第一负载分配权值大于零,则确定备选节点是否包括第二备选节点;若备选节点包括第二备选节点,且第二备选节点对应的第二负载分配权值大于零,则根据第一备选节点和第二备选节点确定初始节点;若备选节点包括第一备选节点和第二备选节点,则将初始节点确定为目标节点;进一步地,若备选节点还包括第三备选节点,则继续基于初始节点和第三备选节点确定最小连接数节点,直到第三备选节点为备选节点中的最后一个节点,将最小连接数节点确定为目标节点。
可以理解的是,在本申请的实施例中,目标节点是可用节点中负载最小的边缘节点,从而利用目标节点实现与客户端之间的数据传输,能够有效提高数据传输的效率,更适用于高并发,大规模数据传输的场景。
进一步地,在本申请的实施例中,由于云中心是按照第一时间间隔获取边缘节点的状态信息,则目标节点也是在相应的时间段内、可用节点中负载最小的边缘节点。
进一步地,在本申请的实施例中,在确定了目标节点以后,由于客户端可以与目标节点建立连接进行数据传输,因此,可以根据客户端的连接信息更新目标节点的连接负载信息。
图2为本申请实施例提出的数据传输方法的实现流程示意图二,如图2所示,云中心根据动态加权负载查询算法和所述性能信息确定目标节点的方法可以包括以下步骤:
步骤201、若第一节点的性能信息中的任意一种使用率小于或者等于任意一种使用率对应的使用率阈值,则计算第一节点的实时负载比率;其中,第一节点为可用节点中的任意一个节点;性能信息至少包括一种使用率。
在本申请的实施例中,云中心根据动态加权负载查询算法和所述性能信息确定目标节点;具体地,若第一节点的性能信息中的任意一种使用率小于或者等于任意一种使用率对应的使用率阈值,则计算第一节点的实时负载比率;其中,第一节点为可用节点中的任意一个节点;性能信息至少包括一种使用率。
需要说明的是,在本申请的实施例中,第一节点为可用节点中的任意一个节点;也就是说,云中心通过获取可用节点中的任意一个节点,即第一节点的性能信息,进而基于第一节点对应的性能信息确定该第一节点是否为目标节点。
需要说明的是,在本申请的实施例中,使用率阈值是与使用率相对应的,也就是说,不同的使用率可以对应有不同的使用率阈值,使用率阈值的大小本申请不做限制。
示例性的,在本申请的实施例中,性能信息包括CPU使用率、内存使用率、网络使用率以及磁盘I/O使用率;第一节点的CPU使用率、内存使用率、网络使用率以及磁盘I/O使用率分别表示为L(Ci)、L(Mi)、L(Ni)、L(Di);使用率阈值分别表示为M(Ci)、M(Mi)、M(Ni)、M(Di);若L(Mi)≤M(Mi),则继续计算第一节点的实时负载比率。
需要说明的是,在本申请的实施例中,若第一节点的性能信息中的全部使用率均大于全部使用率对应的使用率阈值,则将第一节点确定为不可用节点。
示例性的,在本申请的实施例中,对于第一节点,L(Ci)>M(Ci)、L(Mi)>M(Mi)、L(Ni)>M(Ni)、L(Di)>M(Di);则确定第一节点为不可用节点,不利用此节点进行任务分配和数据传输。
示例性的,在本申请的实施例中,可用节点包括a、b、c三个节点,任选a节点作为第一节点,对于a节点的性能信息:L(Ca)>M(Ca)、L(Ma)≤M(Ma)、L(Na)≤M(Na)、L(Da)≤M(Da);对于b节点的性能信息:L(Cb)>M(Cb)、L(Mb)>M(Mb)、L(Nb)>M(Nb)、L(Db)>M(Db);对于c节点的性能信息:L(Cc)≤M(Cc)、L(Mc)≤M(Mc)、L(Nc)≤M(Nc)、L(Dc)>M(Dc);则继续计算a节点和c节点的实时负载比率,即继续基于a节点和c节点确定目标节点。
需要说明的是,在本申请的实施例中,实时负载比率可以通过以下公式进行计算:
其中,R(Si)即为实时负载比率,RL(Si)为实时负载,P(Si)为处理能力极值;RL(Si)可以通过以下公式进行计算:
其中,k1、k2、k3、k4分别为L(Ci)、L(Mi)、L(Ni)、L(Di)对应的权值,且k1+k2+k3+k4=1;k1、k2、k3、k4的数值本申请不作具体限制;处理能力极值P(Si)可以通过以下公式进行计算:
其中,P(Ci)、P(Ni)、P(Mi)、P(Di)分别为CPU处理速度、网络吞吐量、内存大小及磁盘存储速率;p1、p2、p3、p4分别为P(Ci)、P(Ni)、P(Mi)、P(Di)对应的权值,且p1+p2+p3+p4=1;p1、p2、p3、p4的数值本申请不作具体限制。
步骤202、若实时负载比率小于预设负载阈值,则将第一节点确定为备选节点,基于备选节点确定目标节点。
在本申请的实施例中,若第一节点的性能信息中的任意一种使用率小于或者等于任意一种使用率对应的使用率阈值,则计算第一节点的实时负载比率之后,若实时负载比率小于预设负载阈值,则将第一节点确定为备选节点,基于备选节点确定目标节点。
需要说明的是,在本申请的实施例中,为保证用于数据传输的目标节点在负载过重时还有一定缓冲处理能力,同时为了避免出现处理历史任务和新的下发任务而瘫痪,在进行目标节点的确定时,还需要结合预设负载阈值进行约束,预设负载阈值的大小本申请不作限制。
可以理解的是,在本申请的实施例中,如果第一节点的实时负载比率小于预设负载阈值,则可以将第一节点确定为备选节点。
示例性的,在本申请的实施例中,基于上述示例,预设负载阈值为0.9;a节点的实时负载比率为0.8,c节点的实时负载比率为0.76,则可以将a节点和c节点确定为备选节点,继续基于a节点和c节点确定目标节点。
图3为本申请实施例提出的数据传输方法的实现流程示意图三,如图3所示,若第一节点的性能信息中的任意一种使用率小于或者等于所述任意一种使用率对应的使用率阈值,则计算所述第一节点的实时负载比率之后,还可以包括以下步骤:
步骤203、若实时负载比率大于或者等于预设负载阈值,则将第一节点确定为不可用节点。
在本申请的实施例中,若第一节点的性能信息中的任意一种使用率小于或者等于所述任意一种使用率对应的使用率阈值,则计算所述第一节点的实时负载比率之后,若实时负载比率大于或者等于预设负载阈值,则将第一节点确定为不可用节点。
示例性的,在本申请的实施例中,基于上述示例,a节点的实时负载比率为0.91,c节点的实时负载比率为0.76,则将a节点确定为不可用节点。
图4为本申请实施例提出的数据传输方法的实现流程示意图四,如图4所示,基于备选节点确定目标节点的方法可以包括以下步骤:
步骤301、若备选节点的数量不为零,且第一备选节点对应的第一负载分配权值大于零,则确定备选节点是否包括第二备选节点;其中,第一备选节点为备选节点中的任意一个节点。
在本申请的实施例中,基于备选节点确定目标节点,具体地,若备选节点的数量不为零,且第一备选节点对应的第一负载分配权值大于零,则确定备选节点是否包括第二备选节点;其中,第一备选节点为备选节点中的任意一个节点。
可以理解的是,在本申请的实施例中,备选节点是经过上述性能信息和实时负载比率的筛选流程以后确定的,因此,备选节点的数量可能为零,也可能不为零;如果备选节点的数量不为零,则可以继续基于备选节点进行后续的筛选过程,直到确定出目标节点,而如果备选节点的数量为零,则说明在当前对应的时间段内,没有合适的节点用于数据传输。
进一步地,在本申请的实施例中,实时负载分配权值可以通过以下公式进行计算:
可以看出,在本申请的实施例中,实时负载分配权值是基于实时负载比率R(Si)和处理能力极值P(Si)得到的。
可以理解的是,在本申请的实施例中,第一备选节点为备选节点中的任意一个节点;第一负载分配权值为第一备选节点对应的实时负载分配权值。
也就是说,在本申请的实施例中,如果备选节点的数量不为零,则可以计算备选节点的实时负载分配权值,进而基于备选节点的实时负载分配权值确定目标节点。
示例性的,在本申请的实施例中,备选节点的数量不为零,从备选节点中任取一个节点a,即为第一备选节点,节点a对应的第一负载分配权值大于零,则确定备选节点中是否包括第二备选节点;第二备选节点是备选节点中,与第一备选节点不同的节点。
步骤302、若备选节点包括第二备选节点,且第二备选节点对应的第二负载分配权值大于零,则根据第一备选节点和第二备选节点确定初始节点;其中,初始节点为第一备选节点和第二备选节点中负载最小的节点。
在本申请的实施例中,若备选节点的数量不为零,且第一备选节点对应的第一负载分配权值大于零,则确定备选节点是否包括第二备选节点之后,若备选节点包括第二备选节点,且第二备选节点对应的第二负载分配权值大于零,则根据第一备选节点和第二备选节点确定初始节点;其中,初始节点为第一备选节点和第二备选节点中负载最小的节点。
可以理解的是,在本申请的实施例中,第二负载分配权值是第二备选节点对应的实时负载分配权值。
还可以理解的是,在本申请的实施例中,初始节点是基于备选节点中包括第一备选节点和第二备选节点,且第一备选节点对应的第一负载分配权值和第二备选节点对应的第二负载分配权值均大于零的情况下,从第一备选节点和第二备选节点中确定的;初始节点为第一备选节点和第二备选节点中负载最小的节点。
需要说明的是,在本申请的实施例中,确定初始节点的方式是通过计算备选节点的连接数和实时负载分配权值的乘积,进而基于乘积大小进行比较,确定初始节点。
示例性的,在本申请的实施例中,备选节点包括第一备选节点i和第二备选节点j;如果L(Si)×RW(Sj)>L(Sj)×RW(Si);其中,L(Si)为i的连接数,RW(Sj)为j的实时负载分配权值,L(Sj)为j的连接数,RW(Si)为i的实时负载分配权值;则说明i的负载大于j,则将j确定为初始节点。
步骤303、若备选节点包括第一备选节点和第二备选节点,则将初始节点确定为目标节点。
在本申请的实施例中,若备选节点包括第二备选节点,且第二备选节点对应的第二负载分配权值大于零,则根据第一备选节点和第二备选节点确定初始节点之后,若备选节点包括第一备选节点和第二备选节点,则将初始节点确定为目标节点。
需要说明的是,在本申请的实施例中,备选节点包括第一备选节点和第二备选节点是指备选节点仅包括第一备选节点和第二备选节点,即备选节点是由第一备选节点和第二备选节点构成的,则可以直接将初始节点确定为目标节点。
示例性的,在本申请的实施例中,备选节点仅包括a和b,根据a和b确定初始节点为b,则可以直接将初始节点b确定为目标节点。
图5为本申请实施例提出的数据传输方法的实现流程示意图五,如图5所示,若备选节点包括第二备选节点,且第二备选节点对应的第二负载分配权值大于零,则根据第一备选节点和第二备选节点确定初始节点之后,即步骤302之后,还可以包括以下步骤:
步骤304、若备选节点还包括第三备选节点,则继续基于初始节点和第三备选节点确定最小连接数节点,直到第三备选节点为备选节点中的最后一个节点;其中,第三备选节点为备选节点中、与第一节点和第二节点不同的节点。
在本申请的实施例中,若备选节点包括第二备选节点,且第二备选节点对应的第二负载分配权值大于零,则根据第一备选节点和第二备选节点确定初始节点之后,若备选节点还包括第三备选节点,则继续基于初始节点和第三备选节点确定最小连接数节点,直到第三备选节点为备选节点中的最后一个节点;其中,第三节点为备选节点中、与第一节点和第二节点不同的节点。
需要说明的是,在本申请的实施例中,第三备选节点为备选节点中、与第一节点和第二节点不同的节点。
进一步地,在本申请的实施例中,根据初始节点和第三备选节点确定最小连接数节点的方法同样是通过比较备选节点的连接数和实时负载分配权值的乘积。
示例性的,在本申请的实施例中,初始节点为b,备选节点中还包括第三备选节点c,如果L(Sb)×RW(Sb)>L(Sc)×RW(Sc);其中,L(Sb)为b的连接数,RW(Sb)为b的实时负载分配权值,L(Sc)为c的连接数,RW(Sc)为c的实时负载分配权值;则可以确定最小连接数节点为c。
可以理解的是,在本申请的实施例中,最小连接数节点为初始节点和第三备选节点中负载最小的节点。
进一步地,在本申请的实施例中,若备选节点还包括第三备选节点,则继续基于初始节点和第三备选节点确定最小连接数节点,直到第三备选节点为备选节点中的最后一个节点;也就是说,需要遍历备选节点中的所有节点确定出最小连接数节点。
示例性的,在本申请的实施例中,备选节点包括a、b、c,任选第一备选节点为a,第二备选节点为b,基于a和b确定了初始节点为b;则基于第三备选节点c和初始节点b确定最小连接数节点为c,由于c是备选节点中最后一个节点,则遍历结束,并确定最小连接数节点为c。
步骤305、将最小连接数节点确定为目标节点。
在本申请的实施例中,若备选节点还包括第三备选节点,则继续基于初始节点和第三备选节点确定最小连接数节点,直到第三备选节点为备选节点中的最后一个节点之后,可以将最小连接数节点确定为目标节点。
可以理解的是,在本申请的实施例中,最小连接数节点是备选节点中负载最小的节点,则可以将最小连接数节点确定为目标节点。
示例性的,在本申请的实施例中,基于上述示例,基于第三备选节点c和初始节点b确定最小连接数节点为c,说明c为备选节点a、b、c中负载最小的节点,可以将c确定为目标节点。
图6为本申请实施例提出的数据传输方法的实现流程示意图六,如图6所示,根据动态加权负载查询算法和性能信息确定目标节点之后,即步骤103之后,还可以包括以下步骤:
步骤104、向目标节点发送客户端的连接信息;或者,向客户端发送目标节点的连接信息。
在本申请的实施例中,云中心根据动态加权负载查询算法和性能信息确定目标节点之后,可以向目标节点发送客户端的连接信息;或者,向客户端发送目标节点的连接信息。
需要说明的是,在本申请的实施例中,客户端的连接信息是指客户端开放的数据服务端口;目标节点的连接信息是指目标节点的数据服务端口。
可以理解的是,在本申请的实施例中,在确定了目标节点以后,本申请实施例可以通过两种方式令客户端和目标节点建立连接,包括向目标节点发送客户端的连接信息;或者,向客户端发送目标节点的连接信息;从而实现数据传输,文件读写等操作。
进一步地,在本申请的实施例中,云中心向目标节点发送客户端的连接信息属于一种主动模式(PORT);具体地,客户端向云中心主动发送数据连接端口,即客户端的连接信息,进而云中心将客户端的连接信息发送至目标节点,以通知目标节点与客户端建立数据连接,实现数据传输和文件读写等操作。
进一步地,在本申请的实施例中,云中心向客户端发送目标节点的连接信息属于一种被动模式(PASV);具体地,在确定了目标节点以后,云中心向目标节点发送开放端口请求,目标节点在接收到开放端口请求以后,将开放的数据服务端口,即目标节点的连接信息发送给云中心,进而云中心将目标节点的连接信息发送至客户端,从而客户端可以根据目标节点的连接信息与目标节点建立连接,实现数据传输和文件读写等操作。
图7为本申请实施例提出的数据传输方法的实现流程示意图七,如图7所示,边缘节点的数据传输方法可以包括以下步骤:
步骤401、向云中心发送状态信息。
本申请的实施例中,边缘节点可以先向云中心发送状态信息。
在本申请的实施例中,云中心是按照第一时间间隔获取边缘节点的状态信息的,因此状态信息表征在对应的时间段内,边缘节点的运行状态,状态信息可以包括边缘节点的心跳检测结果。
需要说明的是,在本申请的实施例中,可以在边缘节点上安装hdfs-over-ftp工具。
示例性的,边缘节点A、B、C上的hdfs-over-ftp工具启动时,会将边缘节点A、B、C各自的ip地址信息注册到云中心上的注册中心,从而云中心上的注册中心可以根据这些IP地址信息定时获取边缘节点A、B、C的状态信息。
步骤402、接收云中心发送的收集指令,向云中心发送可用节点的性能信息;其中,收集指令用于请求可用节点的相关信息,可用节点是基于状态信息确定的。
本申请的实施例中,边缘节点在向云中心发送状态信息之后,可以接收云中心发送的收集指令,向云中心发送可用节点的性能信息;其中,收集指令用于请求可用节点的相关信息,可用节点是基于状态信息确定的。
可以理解的是,本申请的实施例中,收集指令用于请求可用节点的性能信息,因此,边缘节点通过接收云中心发送的收集指令,就可以向云中心发送可用节点的性能信息。
进一步地,本申请的实施例中,可用节点是基于状态信息确定的,即在边缘节点向云中心发送了状态信息以后,云中心根据状态信息确定了可用节点。
图8为本申请实施例提出的数据传输方法的实现流程示意图八,如图8所示,边缘节点的数据传输方法可以包括以下步骤:
步骤403、接收云中心发送的客户端的连接信息。
本申请的实施例中,边缘节点可以接收云中心发送的客户端的连接信息。
需要说明的是,本申请的实施例中,客户端的连接信息是指客户端开放的数据服务端口,进而目标节点通过接收云中心发送的客户端的连接信息,与客户端建立数据连接。
也就是说,本申请的实施例中,是目标节点接收云中心发送的客户端的连接信息。
步骤404、根据客户端的连接信息与客户端建立连接,以进行数据传输;或者,接收客户端的连接请求,以进行数据传输。
本申请的实施例中,在接收云中心发送的客户端的连接信息之后,可以根据客户端的连接信息与客户端建立连接,以进行数据传输;或者,接收客户端的连接请求,以进行数据传输。
需要说明的是,本申请的实施例中,如果云中心向目标节点发送客户端的连接信息,则目标节点可以根据客户端的连接信息与客户端建立连接;或者,云中心向客户端发送目标节点的连接信息,则目标节点可以接收来自客户端的连接请求,以进行数据传输。
进一步地,在本申请的实施例中,数据传输具体还可以包括断点传续和文件重命名功能,具体地,可以通过改写hdfs-over-ftp源码的方式实现上述断点传续和文件重命名功能。
综上所述,在本申请的实施例中,云中心基于动态加权负载查询算法在边缘节点中确定目标节点,从而可以基于目标节点进行数据传输,有效解决了现有技术在进行数据传输时由于负载不平衡,而造成服务器CPU、内存、带宽、磁盘I/O等资源瓶颈问题;以及大量节点无法做到对应用侧透明,在横向扩展时,用户需要对每个节点上的配置文件或代码进行修改,不便于维护的问题;能够更好的适应大规模数据传输,提高数据传输效率。
本申请实施例提供了数据传输方法,云中心获取边缘节点的状态信息,并根据状态信息确定可用节点;向可用节点发送收集指令,以获取可用节点的性能信息;根据动态加权负载查询算法和性能信息确定目标节点,使得目标节点与客户端进行数据传输;其中,目标节点为可用节点中负载最小的边缘节点。边缘节点向云中心发送状态信息;接收云中心发送的收集指令,向云中心发送可用节点的性能信息;其中,收集指令用于请求可用节点的相关信息,可用节点是基于状态信息确定的。由此可见,在本申请中,云中心可以对边缘节点进行监控,通过获取边缘节点的状态信息来确定边缘节点中的可用节点,进而基于动态加权负载查询算法和可用节点的性能信息确定目标节点,由于目标节点是可用节点中负载最小的边缘节点,因此,利用目标节点与客户端进行数据传输,可以极大地提高数据传输的效率;也就是说,本申请考虑了不同边缘节点的性能状态存在差异,通过动态负载查询模型和可用节点的性能信息确定可用节点中的目标节点,从而有效选择出负载最小的节点用于数据传输,有效提高数据传输效率。
实施例二
基于上述实施例,示例性的,在本申请的另一实施例中,图9为本申请实施例提出的数据传输方法的实现示意图一,如图9所示,在分布式系统(Hadoop Distributed FileSystem,HDFS)中,可以包括云中心和边缘节点,云中心和边缘节点的数量不作限制;云中心上可以部署有用户配置管理、节点管理、负载均衡器以及ftp server四个模块;边缘节点上部署有dataproxy;其中,用户配置管理模块可以用于进行用户配置信息的添加、删除以及修改,并且可以将用户配置信息同步至ftp server和dataproxy;节点管理模块可以用于提供hdfs-over-ftp工具的自动化安装部署、hdfs-over-ftp应用启停以及边缘节点的信息查看等功能;负载均衡器可以用于按照第一时间间隔获取边缘节点的性能信息,并基于动态加权负载查询算法确定目标节点,实现边缘节点的负载均衡分配;ftp server可以用于与客户端进行命令交互以及任务调度,且采用haproxy+keepalive方式,确保其中一个节点故障时系统仍然正常运行,实现主备高可用;进一步地,ftp server还可以读取注册中心中记录的目标节点,进而可以调用负载均衡器匹配到对应的目标节点,将任务下发到目标节点,同时存储和更新目标节点的连接负载信息;dataproxy可以用于接收ftp server的任务调度,以完成数据传输,还可以将任务结果消息通知给ftp server;dataproxy部署在各个边缘节点上,当边缘节点上的hdfs-over-ftp应用启动时,可以将边缘节点的IP地址信息注册到云中心上的注册中心。
进一步地,在本申请的实施例中,可以先在云中心上安装hdfs-over-ftp工具;示例性的,通过用户配置管理模块添加配置信息,配置信息可以包括用户名、密码、最大登陆次数、空闲时间、上传速率以及下载速率等;通过节点管理上传hdfs-over-ftp工具安装包,在确定了安装目录和安装方式以后,通过读取用户配置管理模块中的配置信息实现hdfs-over-ftp工具的自动安装;其中,安装方式分为两种,第一种是将配置信息写在安装目录对应的配置文件中,第二种是将配置信息写入数据库中,利用第二种方式进行安装时,还需要进一步填写数据库信息;如果选择第一种安装方式,当用户信息变更时,需要重启hdfs-over-ftp应用或者采用热加载方式;而如果选择第二种安装方式,当用户信息变更时,则无需重启hdfs-over-ftp应用,可以提高hdfs-over-ftp应用的易用性和可维护性。
可以理解的是,在本申请的实施例中,hdfs-over-ftp工具可以提供用户配置信息管理、部署方式多样化的一键自动化部署;用户可以灵活选择安装方式,当选择数据库安装方式时用户配置信息更新时无需重启工具,可实现程序的热启动,提高了工具的易用性和可维护性,保证了业务连续性。
进一步地,在本申请的实施例中,云中心首先确定可用节点,进而基于可用节点确定目标节点;示例性的,图10为本申请实施例提出的数据传输方法的实现示意图二,如图10所示,在云中心中,ftp server通过注册中心确定边缘节点中的可用节点;其中,边缘节点可以向注册中心注册IP地址信息。
需要说明的是,在本申请的实施例中,如果不存在预设节点,则直接基于可用节点确定目标节点,而如果存在预设节点,则根据预设节点和可用节点确定筛选节点,进而基于筛选节点确定目标节点;也就是说,用户可以通过设置预设节点的方式保障数据传输的隐私性和安全性。
示例性的,在本申请的实施例中,客户端可以向云中心发起数据传输请求,进而云中心的ftp server接收到含有客户端发送的用户名和密码的认证信息之后,根据用户名和密码的认证信息进行认证处理,判断客户端是否设置了预设节点,如果设置了预设节点,则取注册中心中维护的可用节点与预设节点两者的交集,得到筛选节点;进而基于动态加权负载查询算法在筛选节点中确定目标节点。
进一步地,在本申请的实施例中,云中心上的负载均衡器可以采用动态加权负载查询算法确定目标节点;示例性的,首先,负载均衡器按照第二时间间隔获取可用节点的性能信息,例如性能信息包括CPU使用率、内存使用率、网络使用率以及磁盘I/O使用率,分别表示为L(Ci)、L(Mi)、L(Ni)、L(Di);进而负载均衡器将L(Ci)、L(Mi)、L(Ni)、L(Di)与各自的使用率阈值M(Ci)、M(Mi)、M(Ni)、M(Di)进行对比,若第一节点的全部使用率均大于全部使用率对应的使用率阈值,则将第一节点确定为不可用节点;而若第一节点的性能信息中的任意一种使用率小于或者等于任意一种使用率对应的使用率阈值,则计算第一节点的实时负载比率R(Si);进而对实时负载比率和预设负载阈值进行对比;示例性的,预设负载阈值为0.9;若第一节点的实时负载比率小于预设负载阈值,则将第一节点确定为备选节点,基于备选节点确定目标节点。
进一步地,在本申请的实施例中,若第一节点的实时负载比率大于或者等于预设负载阈值,则将第一节点确定为不可用节点。
进一步地,在本申请的实施例中,图11为本申请实施例提出的数据传输方法的实现流程示意图九,如图11所示,备选节点的数量为n,从备选节点中任选一个第一备选节点开始目标节点的确定,此时初始节点为第一备选节点,即i=1;当i≤n时,判断第一备选节点的第一负载分配权值是否大于零,如果是,则选取第二备选节点继续目标节点的确定,即j=i+1,如果不是,则在第一备选节点的基础上,判断是否有第二备选节点,即i++,当备选节点中仅包括第一备选节点,即n=1,则确定第一备选节点为不可用节点,不存在目标节点,即当前时间段内,不存在可以执行任务的目标节点;进一步地,若在第二备选节点的基础上继续确定目标节点,则判断备选节点中是否还包括第二备选节点,若不满足j≤n,则返回第一备选节点,将第一备选节点确定为目标节点,即return Si;若满足j≤n,则说明备选节点中包括第二备选节点,继续判断第二备选节点对应的第二负载分配权值是否大于零,如果第二负载分配权值大于零,即满足RW(Sj)>0,则继续基于第一备选节点和第二备选节点比较连接数和实时负载分配权值的乘积,如果满足L(Si)×RW(Sj)>L(Sj)×RW(Si),则将第二备选节点确定为初始节点,即i=j,进而在第二备选节点的基础上判断是否还有第三备选节点,并继续基于初始节点和第三备选节点确定最小连接数节点;而如果不满足L(Si)×RW(Sj)>L(Sj)×RW(Si),则继续基于备选节点中的下一个节点进行判断,直到遍历完备选节点中的全部节点,即第三备选节点为备选节点中的最后一个节点,则将最小连接数节点确定为目标节点。
进一步地,在本申请的实施例中,在确定了目标节点以后,可以通过两种不同的方式建立客户端和目标节点之间的数据连接;包括被动模式和主动模式,示例性的,图12为本申请实施例提出的数据传输方法的实现示意图三,如图12所示,在被动模式下,云中心向目标节点中的dataproxy发送开放端口请求,dataproxy在接收到开放端口请求后,开放某一个数据服务端口等待客户端的连接,并将开放的数据服务端口,即目标节点的连接信息发送给ftp server,ftp server收到目标节点的连接信息后返回该给客户端,客户端根据目标节点的连接信息与目标节点建立连接,以实现数据传输或文件读写等操作,进而在完成数据传输以后,dataproxy还可以向ftp server发送数据数据关闭连接消息,以结束此次数据传输任务;图13为本申请实施例提出的数据传输方法的实现示意图四,如图13所示,在主动模式下,客户端向ftp sever主动发送数据连接端口,即客户端的连接信息,ftp sever将客户端的连接信息通知至目标节点,进而目标节点根据客户端的连接信息与客户端建立连接,同样的,在完成数据传输以后,dataproxy还可以向ftp server发送数据数据关闭连接消息,以结束此次数据传输任务。
进一步地,在本申请的实施例中,通过改写hdfs-over-ftp源码以支持断点续传及文件重命名等功能,增强工具传输效率,减少业务时延。
具体地,在hdfs-over-ftp源码中,ftp server包的STOR类中的execute方法会调用apiOutputStreamorg.apache.ftpserver.ftplet.FtpFile.createOutputStream(longoffset)throws IO Exception,因此需要hdfs-over-ftp继承该方法,实现文件的断点上传;示例性的,实现文件的断点上传的代码为:
进一步地,对于文件的断点下载功能,hdfs-over-ftp继承InputStreamorg.apache.ftpserver.ftplet.FtpFile.createInputStream(long offset)throwsIOException,以实现文件的断点下载。
示例性的,实现文件的断点下载的代码为:
FSDataInputStream in=fileSystem.open(path);
in.seek(offset)
进一步地,对于文件重命名功能,文件重命名api为:booleanorg.apache.ftpserver.ftplet.FtpFile.move(FtpFile destination),继承该api方法,实现hdfs-over-ftp文件的重命名。
示例性的,实现文件重命名功能的代码为:
由此可见,在本申请的实施例中,支持断点续传及文件重命名等功能,能够在传输过程中出现网络中断和传输异常等的情况下,在原有文件基础上继续传输,降低网络带宽压力,提高传输任务的时效性,减少业务时延。
示例性的,在本申请的实施例中,图14为本申请实施例提出的数据传输方法的实现流程示意图十,如图14所示,数据传输方法可以包括以下步骤:
步骤501、边缘节点向云中心发送状态信息。
在本申请的实施例中,边缘节点可以向云中心发送状态信息。
步骤502、云中心根据状态信息确定可用节点。
在本申请的实施例中,在边缘节点向云中心发送状态信息之后,云中心可以根据状态信息确定可用节点。
步骤503、云中心向可用节点发送收集指令。
在本申请的实施例中,在云中心根据状态信息确定可用节点之后,云中心向可用节点发送收集指令。
步骤504、边缘节点向云中心发送可用节点的性能信息。
在本申请的实施例中,在云中心向可用节点发送收集指令之后,边缘节点可以向云中心发送可用节点的性能信息。
步骤505、云中心根据动态加权负载查询算法和所述性能信息确定目标节点。
在本申请的实施例中,在边缘节点向云中心发送可用节点的性能信息之后,云中心可以根据动态加权负载查询算法和所述性能信息确定目标节点。
图15为本申请实施例提出的数据传输方法的实现流程示意图十一,如图15所示,在云中心根据动态加权负载查询算法和所述性能信息确定目标节点之后,数据传输方法还可以包括以下步骤:
步骤506、云中心向目标节点发送客户端的连接信息。
在本申请的实施例中,在云中心根据动态加权负载查询算法和所述性能信息确定目标节点之后,云中心可以向目标节点发送客户端的连接信息。
步骤507、目标节点根据客户端的连接信息与客户端建立连接,以进行数据传输。
在本申请的实施例中,在云中心向目标节点发送客户端的连接信息之后,目标节点根据客户端的连接信息与客户端建立连接,以进行数据传输。
图16为本申请实施例提出的数据传输方法的实现流程示意图十二,如图16所示,在云中心根据动态加权负载查询算法和所述性能信息确定目标节点之后,数据传输方法还可以包括以下步骤:
步骤508、云中心向客户端发送目标节点的连接信息。
在本申请的实施例中,在云中心根据动态加权负载查询算法和所述性能信息确定目标节点之后,云中心还可以向客户端发送目标节点的连接信息。
步骤509、客户端根据目标节点的连接信息向目标节点发送连接请求。
在本申请的实施例中,在云中心向客户端发送目标节点的连接信息之后,客户端可以根据目标节点的连接信息向目标节点发送连接请求。
步骤510、目标节点接收客户端的连接请求,与客户端建立连接。
在本申请的实施例中,在客户端根据目标节点的连接信息向目标节点发送连接请求之后,目标节点可以接收客户端的连接请求,与客户端建立连接。
综上所述,在本申请的实施例中,云中心基于动态加权负载查询算法在边缘节点中确定目标节点,从而可以基于目标节点进行数据传输,有效解决了现有技术在进行数据传输时由于负载不平衡,而造成服务器CPU、内存、带宽、磁盘I/O等资源瓶颈问题;以及大量节点无法做到对应用侧透明,在横向扩展时,用户需要对每个节点上的配置文件或代码进行修改,不便于维护的问题;能够更好的适应大规模数据传输,提高数据传输效率。
本申请实施例提供了数据传输方法,云中心获取边缘节点的状态信息,并根据状态信息确定可用节点;向可用节点发送收集指令,以获取可用节点的性能信息;根据动态加权负载查询算法和性能信息确定目标节点,使得目标节点与客户端进行数据传输;其中,目标节点为可用节点中负载最小的边缘节点。边缘节点向云中心发送状态信息;接收云中心发送的收集指令,向云中心发送可用节点的性能信息;其中,收集指令用于请求可用节点的相关信息,可用节点是基于状态信息确定的。由此可见,在本申请中,云中心可以对边缘节点进行监控,通过获取边缘节点的状态信息来确定边缘节点中的可用节点,进而基于动态加权负载查询算法和可用节点的性能信息确定目标节点,由于目标节点是可用节点中负载最小的边缘节点,因此,利用目标节点与客户端进行数据传输,可以极大地提高数据传输的效率;也就是说,本申请考虑了不同边缘节点的性能状态存在差异,通过动态负载查询模型和可用节点的性能信息确定可用节点中的目标节点,从而有效选择出负载最小的节点用于数据传输,有效提高数据传输效率。
实施例三
基于上述实施例,在本申请的另一实施例中,图17为本申请实施例提出的云中心的组成结构示意图一,如图17所示,本申请实施例提出的云中心10可以包括获取单元11、确定单元12以及第一发送单元13,
所述获取单元11,用于获取边缘节点的状态信息,并根据所述状态信息确定可用节点;以及向所述可用节点发送收集指令,以获取所述可用节点的性能信息。
所述确定单元12,用于根据动态加权负载查询算法和所述性能信息确定目标节点,使得所述目标节点与客户端进行数据传输;其中,所述目标节点为所述可用节点中负载最小的边缘节点。
进一步地,所述确定单元12,具体用于若第一节点的性能信息中的任意一种使用率小于或者等于所述任意一种使用率对应的使用率阈值,则计算所述第一节点的实时负载比率;其中,所述第一节点为所述可用节点中的任意一个节点;所述性能信息至少包括一种使用率;以及若所述实时负载比率小于预设负载阈值,则将所述第一节点确定为备选节点,基于所述备选节点确定所述目标节点。
进一步地,所述确定单元12,还用于若第一节点的性能信息中的任意一种使用率小于或者等于所述任意一种使用率对应的使用率阈值,则计算所述第一节点的实时负载比率之后,若所述实时负载比率大于或者等于所述预设负载阈值,则将所述第一节点确定为不可用节点。
进一步地,所述确定单元12,还具体用于若所述备选节点的数量不为零,且第一备选节点对应的第一负载分配权值大于零,则确定所述备选节点是否包括第二备选节点;其中,所述第一备选节点为所述备选节点中的任意一个节点;以及若所述备选节点包括所述第二备选节点,且所述第二备选节点对应的第二负载分配权值大于零,则根据第一备选节点和所述第二备选节点确定初始节点;其中,所述初始节点为所述第一备选节点和所述第二备选节点中负载最小的节点;以及若所述备选节点包括所述第一备选节点和所述第二备选节点,则将所述初始节点确定为所述目标节点。
进一步地,所述确定单元12,还具体用于若所述备选节点包括所述第二备选节点,且所述第二备选节点对应的第二负载分配权值大于零,则根据第一备选节点和所述第二备选节点确定初始节点之后,若所述备选节点还包括第三备选节点,则继续基于所述初始节点和所述第三备选节点确定最小连接数节点,直到所述第三备选节点为所述备选节点中的最后一个节点;其中,所述第三备选节点为所述备选节点中、与所述第一节点和所述第二节点不同的节点;以及将所述最小连接数节点确定为所述目标节点。
所述第一发送单元13,用于在所述确定单元12根据动态加权负载查询算法和所述性能信息确定目标节点之后,向所述目标节点发送所述客户端的连接信息;或者,向所述客户端发送所述目标节点的连接信息。
图18为本申请实施例提出的边缘节点的组成结构示意图一,如图18所示,本申请实施例提出的边缘节点20可以包括第二发送单元21和接收单元22,
所述第二发送单元21,用于向云中心发送状态信息;以及接收所述云中心发送的收集指令,向所述云中心发送可用节点的性能信息;其中,所述收集指令用于请求所述可用节点的相关信息,所述可用节点是基于所述状态信息确定的。
所述接收单元22,用于接收所述云中心发送的客户端的连接信息;以及根据所述客户端的连接信息与客户端建立连接,以进行数据传输;或者,接收所述客户端的连接请求,以进行数据传输。
图19为本申请实施例提出的云中心的组成结构示意图二,如图19所示,本申请实施例提出的云中心10还可以包括第一处理器14、存储有第一处理器14可执行指令的第一存储器15,进一步地,云中心10还可以包括第一通信接口16,和用于连接第一处理器14、第一存储器15以及第一通信接口16的第一总线17。
在本申请的实施例中,上述第一处理器14可以为特定用途集成电路(ApplicationSpecific Integrated Circuit,ASIC)、数字信号处理器(Digital Signal Processor,DSP)、数字信号处理装置(Digital Signal Processing Device,DSPD)、可编程逻辑装置(ProgRAMmable Logic Device,PLD)、现场可编程门阵列(Field ProgRAMmable GateArray,FPGA)、中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器中的至少一种。可以理解地,对于不同的设备,用于实现上述处理器功能的电子器件还可以为其它,本申请实施例不作具体限定。第一处理器14还可以包括第一存储器15,该第一存储器15可以与第一处理器14连接,其中,第一存储器15用于存储可执行程序代码,该程序代码包括计算机操作指令,第一存储器15可能包含高速RAM存储器,也可能还包括非易失性存储器,例如,至少两个磁盘存储器。
在本申请的实施例中,第一总线17用于连接第一通信接口16、第一处理器14以及第一存储器15以及这些器件之间的相互通信。
在本申请的实施例中,第一存储器15,用于存储指令和数据。
进一步地,在本申请的实施例中,上述第一处理器14,用于获取边缘节点的状态信息,并根据所述状态信息确定可用节点;向所述可用节点发送收集指令,以获取所述可用节点的性能信息;根据动态加权负载查询算法和所述性能信息确定目标节点,使得所述目标节点与客户端进行数据传输;其中,所述目标节点为所述可用节点中负载最小的边缘节点。
在实际应用中,上述第一存储器15可以是易失性存储器(volatile memory),例如随机存取存储器(Random-Access Memory,RAM);或者非易失性存储器(non-volatilememory),例如只读存储器(Read-Only Memory,ROM),快闪存储器(flash memory),硬盘(Hard Disk Drive,HDD)或固态硬盘(Solid-State Drive,SSD);或者上述种类的存储器的组合,并向第一处理器14提供指令和数据。
图20为本申请实施例提出的边缘节点的组成结构示意图二,如图20所示,本申请实施例提出的边缘节点20还可以包括第二处理器23、存储有第二处理器23可执行指令的第二存储器24,进一步地,边缘节点20还可以包括第二通信接口25,和用于连接第二处理器23、第二存储器24以及第二通信接口25的第二总线26。
在本申请的实施例中,上述第二处理器23可以为特定用途集成电路(ApplicationSpecific Integrated Circuit,ASIC)、数字信号处理器(Digital Signal Processor,DSP)、数字信号处理装置(Digital Signal Processing Device,DSPD)、可编程逻辑装置(ProgRAMmable Logic Device,PLD)、现场可编程门阵列(Field ProgRAMmable GateArray,FPGA)、中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器中的至少一种。可以理解地,对于不同的设备,用于实现上述处理器功能的电子器件还可以为其它,本申请实施例不作具体限定。第二处理器23还可以包括第二存储器24,该第二存储器24可以与第二处理器23连接,其中,第二存储器24用于存储可执行程序代码,该程序代码包括计算机操作指令,第二存储器24可能包含高速RAM存储器,也可能还包括非易失性存储器,例如,至少两个磁盘存储器。
在本申请的实施例中,第二总线26用于连接第二通信接口25、第二处理器23以及第二存储器24以及这些器件之间的相互通信。
在本申请的实施例中,第二存储器24,用于存储指令和数据。
进一步地,在本申请的实施例中,上述第二处理器23,用于向云中心发送状态信息;接收所述云中心发送的收集指令,向所述云中心发送可用节点的性能信息;其中,所述收集指令用于请求所述可用节点的相关信息,所述可用节点是基于所述状态信息确定的。
在实际应用中,上述第二存储器24可以是易失性存储器(volatile memory),例如随机存取存储器(Random-Access Memory,RAM);或者非易失性存储器(non-volatilememory),例如只读存储器(Read-Only Memory,ROM),快闪存储器(flash memory),硬盘(Hard Disk Drive,HDD)或固态硬盘(Solid-State Drive,SSD);或者上述种类的存储器的组合,并向第二处理器23提供指令和数据。
另外,在本实施例中的各功能模块可以集成在一个分析单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
集成的单元如果以软件功能模块的形式实现并非作为独立的产品进行销售或使用时,可以存储在一个计算机可读取存储介质中,基于这样的理解,本实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或processor(处理器)执行本实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本申请实施例提供了云中心、边缘节点及存储介质,云中心获取边缘节点的状态信息,并根据状态信息确定可用节点;向可用节点发送收集指令,以获取可用节点的性能信息;根据动态加权负载查询算法和性能信息确定目标节点,使得目标节点与客户端进行数据传输;其中,目标节点为可用节点中负载最小的边缘节点。边缘节点向云中心发送状态信息;接收云中心发送的收集指令,向云中心发送可用节点的性能信息;其中,收集指令用于请求可用节点的相关信息,可用节点是基于状态信息确定的。由此可见,在本申请中,云中心可以对边缘节点进行监控,通过获取边缘节点的状态信息来确定边缘节点中的可用节点,进而基于动态加权负载查询算法和可用节点的性能信息确定目标节点,由于目标节点是可用节点中负载最小的边缘节点,因此,利用目标节点与客户端进行数据传输,可以极大地提高数据传输的效率;也就是说,本申请考虑了不同边缘节点的性能状态存在差异,通过动态负载查询模型和可用节点的性能信息确定可用节点中的目标节点,从而有效选择出负载最小的节点用于数据传输,有效提高数据传输效率。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的实现流程示意图和/或方框图来描述的。应理解可由计算机程序指令实现流程示意图和/或方框图中的每一流程和/或方框、以及实现流程示意图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在实现流程示意图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在实现流程示意图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在实现流程示意图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。
Claims (13)
1.一种数据传输方法,其特征在于,所述数据传输方法应用于云中心,所述方法包括:
获取边缘节点的状态信息,并根据所述状态信息确定可用节点;
向所述可用节点发送收集指令,以获取所述可用节点的性能信息;
根据动态加权负载查询算法和所述性能信息确定目标节点,使得所述目标节点与客户端进行数据传输;其中,所述目标节点为所述可用节点中负载最小的边缘节点。
2.根据权利要求1所述的方法,其特征在于,所述根据动态加权负载查询算法和所述性能信息确定目标节点,包括:
若第一节点的性能信息中的任意一种使用率小于或者等于所述任意一种使用率对应的使用率阈值,则计算所述第一节点的实时负载比率;其中,所述第一节点为所述可用节点中的任意一个节点;所述性能信息至少包括一种使用率;
若所述实时负载比率小于预设负载阈值,则将所述第一节点确定为备选节点,基于所述备选节点确定所述目标节点。
3.根据权利要求2所述的方法,其特征在于,所述若第一节点的性能信息中的任意一种使用率小于或者等于所述任意一种使用率对应的使用率阈值,则计算所述第一节点的实时负载比率之后,所述方法还包括:
若所述实时负载比率大于或者等于所述预设负载阈值,则将所述第一节点确定为不可用节点。
4.根据权利要求2所述的方法,其特征在于,所述基于所述备选节点确定所述目标节点,包括:
若所述备选节点的数量不为零,且第一备选节点对应的第一负载分配权值大于零,则确定所述备选节点是否包括第二备选节点;其中,所述第一备选节点为所述备选节点中的任意一个节点;
若所述备选节点包括所述第二备选节点,且所述第二备选节点对应的第二负载分配权值大于零,则根据第一备选节点和所述第二备选节点确定初始节点;其中,所述初始节点为所述第一备选节点和所述第二备选节点中负载最小的节点;
若所述备选节点包括所述第一备选节点和所述第二备选节点,则将所述初始节点确定为所述目标节点。
5.根据权利要求4所述的方法,其特征在于,所述若所述备选节点包括所述第二备选节点,且所述第二备选节点对应的第二负载分配权值大于零,则根据第一备选节点和所述第二备选节点确定初始节点之后,所述方法还包括:
若所述备选节点还包括第三备选节点,则继续基于所述初始节点和所述第三备选节点确定最小连接数节点,直到所述第三备选节点为所述备选节点中的最后一个节点;其中,所述第三备选节点为所述备选节点中、与所述第一节点和所述第二节点不同的节点;
将所述最小连接数节点确定为所述目标节点。
6.根据权利要求1所述的方法,其特征在于,所述根据动态加权负载查询算法和所述性能信息确定目标节点之后,所述方法还包括:
向所述目标节点发送所述客户端的连接信息;或者,
向所述客户端发送所述目标节点的连接信息。
7.一种数据传输方法,其特征在于,所述数据传输方法应用于边缘节点,所述方法包括:
向云中心发送状态信息;
接收所述云中心发送的收集指令,向所述云中心发送可用节点的性能信息;其中,所述收集指令用于请求所述可用节点的相关信息,所述可用节点是基于所述状态信息确定的。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
接收所述云中心发送的客户端的连接信息;
根据所述客户端的连接信息与客户端建立连接,以进行数据传输;或者,
接收所述客户端的连接请求,以进行数据传输。
9.一种云中心,其特征在于,所述云中心包括获取单元和确定单元,
所述获取单元,用于获取边缘节点的状态信息,并根据所述状态信息确定可用节点;以及向所述可用节点发送收集指令,以获取所述可用节点的性能信息;
所述确定单元,用于根据动态加权负载查询算法和所述性能信息确定目标节点,使得所述目标节点与客户端进行数据传输;其中,所述目标节点为所述可用节点中负载最小的边缘节点。
10.一种边缘节点,其特征在于,所述边缘节点包括发送单元,
所述发送单元,用于向云中心发送状态信息;以及接收所述云中心发送的收集指令,向所述云中心发送可用节点的性能信息;其中,所述收集指令用于请求所述可用节点的相关信息,所述可用节点是基于所述状态信息确定的。
11.一种云中心,其特征在于,所述云中心包括第一处理器、存储有所述第一处理器可执行指令的第一存储器,当所述指令被所述第一处理器执行时,实现如权利要求1-6任一项所述的方法。
12.一种边缘节点,其特征在于,所述边缘节点包括第二处理器、存储有所述第二处理器可执行指令的第二存储器,当所述指令被所述第二处理器执行时,实现如权利要求7-8所述的方法。
13.一种计算机可读存储介质,其上存储有程序,应用于云中心和边缘节点中,所述程序被第一处理器执行时,实现如权利要求1-6任一项所述的方法;所述程序被第二处理器执行时,实现如权利要求7-8所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111480797.6A CN116233057A (zh) | 2021-12-06 | 2021-12-06 | 数据传输方法、云中心、边缘节点及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111480797.6A CN116233057A (zh) | 2021-12-06 | 2021-12-06 | 数据传输方法、云中心、边缘节点及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116233057A true CN116233057A (zh) | 2023-06-06 |
Family
ID=86568499
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111480797.6A Pending CN116233057A (zh) | 2021-12-06 | 2021-12-06 | 数据传输方法、云中心、边缘节点及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116233057A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190141610A1 (en) * | 2018-09-28 | 2019-05-09 | Dario Sabella | Mec-based distributed computing environment with multiple edge hosts and user devices |
CN111787069A (zh) * | 2020-06-09 | 2020-10-16 | 中移雄安信息通信科技有限公司 | 业务接入请求的处理方法、装置、设备及计算机存储介质 |
CN111866950A (zh) * | 2020-06-16 | 2020-10-30 | 华为技术有限公司 | Mec中数据传输的方法和通信装置 |
CN112333108A (zh) * | 2019-08-05 | 2021-02-05 | 南京中兴新软件有限责任公司 | 业务调度的方法及装置 |
CN112769892A (zh) * | 2020-12-11 | 2021-05-07 | 北京邮电大学 | 多台移动设备的分布式计算网络系统的构建方法及系统 |
CN112799789A (zh) * | 2021-03-22 | 2021-05-14 | 腾讯科技(深圳)有限公司 | 一种节点集群管理方法、装置、设备及存储介质 |
-
2021
- 2021-12-06 CN CN202111480797.6A patent/CN116233057A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190141610A1 (en) * | 2018-09-28 | 2019-05-09 | Dario Sabella | Mec-based distributed computing environment with multiple edge hosts and user devices |
CN112333108A (zh) * | 2019-08-05 | 2021-02-05 | 南京中兴新软件有限责任公司 | 业务调度的方法及装置 |
WO2021023018A1 (zh) * | 2019-08-05 | 2021-02-11 | 南京中兴新软件有限责任公司 | 业务调度的方法及装置 |
CN111787069A (zh) * | 2020-06-09 | 2020-10-16 | 中移雄安信息通信科技有限公司 | 业务接入请求的处理方法、装置、设备及计算机存储介质 |
CN111866950A (zh) * | 2020-06-16 | 2020-10-30 | 华为技术有限公司 | Mec中数据传输的方法和通信装置 |
CN112769892A (zh) * | 2020-12-11 | 2021-05-07 | 北京邮电大学 | 多台移动设备的分布式计算网络系统的构建方法及系统 |
CN112799789A (zh) * | 2021-03-22 | 2021-05-14 | 腾讯科技(深圳)有限公司 | 一种节点集群管理方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10466933B1 (en) | Establishing a persistent connection with a remote secondary storage system | |
WO2022007552A1 (zh) | 处理节点的管理方法、配置方法及相关装置 | |
US9830240B2 (en) | Smart storage recovery in a distributed storage system | |
EP2901308B1 (en) | Load distribution in data networks | |
JP6141189B2 (ja) | ファイルシステムにおける透過的なフェイルオーバーの提供 | |
US9143452B2 (en) | Data processing | |
US9992274B2 (en) | Parallel I/O write processing for use in clustered file systems having cache storage | |
US11553014B2 (en) | Downloading of server-based content through peer-to-peer networks | |
KR101063556B1 (ko) | 컴퓨팅 시스템에서 데이터를 업로드하기 위한 방법, 장치 및 컴퓨터 프로그램 제품 | |
US10657108B2 (en) | Parallel I/O read processing for use in clustered file systems having cache storage | |
CN108028833A (zh) | 一种nas数据访问的方法、系统及相关设备 | |
WO2005122532A1 (en) | Optimized concurrent data download within a grid computing environment | |
US9830091B2 (en) | Policy-based data tiering using a cloud architecture | |
US20150220438A1 (en) | Dynamic hot volume caching | |
JP2019016042A (ja) | データ取得プログラム、装置、及び方法 | |
US10545667B1 (en) | Dynamic data partitioning for stateless request routing | |
CN110602232A (zh) | 基于对等网络思想的终端系统版本下载方法、装置及系统 | |
US11595471B1 (en) | Method and system for electing a master in a cloud based distributed system using a serverless framework | |
CN111431951B (zh) | 一种数据处理方法、节点设备、系统及存储介质 | |
CN114827177B (zh) | 一种分布式文件系统的部署方法、装置及电子设备 | |
CN116233057A (zh) | 数据传输方法、云中心、边缘节点及存储介质 | |
CN115225645A (zh) | 一种服务更新方法、装置、系统和存储介质 | |
US11943093B1 (en) | Network connection recovery after virtual machine transition in an on-demand network code execution system | |
CN108733805B (zh) | 文件交互方法、系统、计算机设备和存储介质 | |
US9270530B1 (en) | Managing imaging of multiple computing devices |
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 |