CN105610992A - 一种分布式流计算系统任务分配负载均衡方法 - Google Patents

一种分布式流计算系统任务分配负载均衡方法 Download PDF

Info

Publication number
CN105610992A
CN105610992A CN201610196427.2A CN201610196427A CN105610992A CN 105610992 A CN105610992 A CN 105610992A CN 201610196427 A CN201610196427 A CN 201610196427A CN 105610992 A CN105610992 A CN 105610992A
Authority
CN
China
Prior art keywords
operator
distributed
node
balancing method
computing system
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
Application number
CN201610196427.2A
Other languages
English (en)
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.)
Inspur Communication Information System Co Ltd
Original Assignee
Inspur Communication Information System 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 Inspur Communication Information System Co Ltd filed Critical Inspur Communication Information System Co Ltd
Priority to CN201610196427.2A priority Critical patent/CN105610992A/zh
Publication of CN105610992A publication Critical patent/CN105610992A/zh
Pending legal-status Critical Current

Links

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/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明公开了一种分布式流计算系统任务分配负载均衡方法,属于分布式流计算技术领域。本发明的分布式流计算系统任务分配负载均衡方法包括以下步骤:S1:用户接收端接收用户流图;S2:主控节点解析用户流图,构造算子节点与数据流边描述的流图,划分出源算子和其他算子;S3:按照算子亲疏关系进行邻接算子合并,并按照分布式系统各个工作节点的网卡性能比例和资源比例进行算子分配。该发明的分布式流计算系统任务分配负载均衡方法能实现数据处理达到秒级甚至是毫秒级时延的性能,并能提高流系统资源的利用与流应用的执行性能,具有很好的推广应用价值。

Description

一种分布式流计算系统任务分配负载均衡方法
技术领域
本发明涉及分布式流计算技术领域,具体提供一种分布式流计算系统任务分配负载均衡方法。
背景技术
随着社会的不断进步,社会经济飞速发展。高性能数据处理系统在工业、医疗、金融及电信等众多领域得到广泛的应用,分布式流计算技术飞速发展。传统的MapReduce用于大规模数据的并行运算,但是其往往是首先拿到一个大的积累后的数据,再进行数据拆分和聚合,导致数据不具备时效性。在大多数领域中,数据的价值会随着时间的流逝而降低,所以事件出现后必须尽快的对数据进行处理,而不是累积,以保证数据的价值。流计算是通过事件机制,类似管道一样,将接收的消息立即进行处理。
由于数据流实时到达,对于大数量、实时处理,必须有具备低延迟、高可靠性和容错能力。而当前几乎所有的流计算处理引擎的数据处理都是通过多个不同功能的算子协调处理实现的,为了达到数据处理秒级甚至是毫秒级时延的性能,算子在多个工作节点的分配方式尤为重要。
发明内容
本发明的技术任务是针对上述存在的问题,提供一种能实现数据处理达到秒级甚至是毫秒级时延性能,并能提高流系统资源的利用与流应用的执行性能的分布式流计算系统任务分配负载均衡方法。
为实现上述目的,本发明提供了如下技术方案:
一种分布式流计算系统任务分配负载均衡方法,包括以下步骤:
S1:用户接收端接收用户流图;
S2:主控节点解析用户流图,构造算子节点与数据流边描述的流图,划分出源算子和其他算子;
S3:按照算子亲疏关系进行邻接算子合并,并按照分布式系统各个工作节点的网卡性能比例和资源比例进行算子分配。
计算出各个工作节点的网卡性能比例与资源比例,并依照资源比例计算应分配到各个工作节点的算子个数。依照各工作节点的网卡性能比例将源算子分配到各个工作节点,依照各工作节点的资源比例将相应个数的算子分配到各个工作节点。
作为优选,步骤S1所述用户流图为xml形式,方便主控节点对用户流图的解析。
作为优选,以备主控节点将每次算子分配后的分配结果做好持久化,当步骤S2中的主控节点出现挂死时,备主控节点重新进行算子分配。
作为优选,步骤S3所述算子合并选取算法,是按照算子与已分配算子的亲近关系最大值和未分配算子的疏远关系最大值进行选取。依照资源比例从高到低进行工作节点算子分配,从未分配算子中选取与该工作节点中已分配算子关系最为亲近并且与其他未分配算子关系最为疏远的算子分配到该节点,直到达到该工作节点应分配的算子个数。
步骤S3所述算子分配到各个工作节点的算法是源算子依照网卡性能比例分配原则进行分配,其他算子按照工作节点的内存和CPU资源比例进行分配。
本发明中,为了保证系统的低时延、快速处理的性能,优先选择使用C/C++开发,能做到跨平台,数据传输使用socket协议传输。其中,每次算子分配时各个工作节点的使用情况是实时获取的,且实际使用的资源比例是当前剩余资源的比例而非总资源的比例,充分考虑到每个工作节点的资源利用率,实现分布式系统各工作节点之间的负载均衡,提高了流系统资源的利用率与流应用的执行性能。
与现有技术相比,本发明具有以下突出的有益效果:
(一)本发明所述方法中依照工作节点的内存和CPU资源比例计算应分配到各个工作节点的算子个数,能充分利用各工作节点的资源,并达到负载均衡的目的;
(二)本发明所述方法是依照资源比例从高到低进行工作节点算子分配,从未分配算子中选取与该工作节点中已分配算子关系最为亲近并且与其他未分配算子关系最为疏远的算子分配到该节点,直到达到该工作节点应分配的算子个数,根据算子的亲疏关系进行分配,保证亲近关系的算子分配到同一台机器上,从而达到高性能计算,实现秒级甚至毫秒级时延的性能。
附图说明
图1是本发明所述分布式流计算系统任务分配负载均衡方法的分布式流计算系统的结构框架图;
图2是本发明所述分布式流计算系统任务分配负载均衡方法的算子节点与数据流边描述的流图示意图。
具体实施方式
下面将结合附图和实施例,对本发明的一种分布式流计算系统任务分配负载均衡方法作进一步详细说明。
实施例
如图1所示,本发明的一种分布式流计算系统任务分配负载均衡方法,包括以下步骤:
S1:用户接收端接收用户流图,用户流图为xml形式,方便主控节点对用户流图的解析。
S2:主控节点解析用户流图,构造算子节点与数据流边描述的流图(如图2所示),划分出源算子和其他算子。主控节点通过解析用户流图,划分出源算子1、2、3和其他算子4、5、6、7、8、9、10、11、12。
S3:按照算子亲疏关系进行邻接算子合并,并按照分布式系统各个工作节点的网卡性能比例和资源比例进行算子分配。资源比例为各个工作节点的内存和CPU资源比例。
计算出各个工作节点的网卡性能比例与资源比例,并依照资源比例计算应分配到各个工作节点的算子个数。依照各工作节点的网卡性能比例将源算子1、2、3分配到各个工作节点,依照各工作节点的资源比例从高到低将算子4、5、6、7、8、9、10、11、12分配到各个工作节点。分配过程中从未分配算子中选取与该工作节点中已分配的算子关系最为亲近并且与其他未分配算子关系最为疏远的算子分配到该节点,直到达到该工作节点应分配的算子个数。
以备主控节点将每次算子分配后的分配结果做好持久化,当步骤S2中的主控节点出现挂死时,备主控节点重新进行算子分配。
其中,每次算子分配时各个工作节点的使用情况是实时获取的,且实际使用的资源比例是当前剩余资源的比例而非总资源的比例,充分考虑到每个工作节点的资源利用率,实现分布式系统各工作节点之间的负载均衡,提高了流系统资源的利用率与流应用的执行性能。
本发明中,为了保证系统的低时延、快速处理的性能,选择使用C/C++开发,能做到跨平台。数据传输使用socket协议传输。
以上所述的实施例,只是本发明较优选的具体实施方式,本领域的技术人员在本发明技术方案范围内进行的通常变化和替换都应包含在本发明的保护范围内。

Claims (5)

1.一种分布式流计算系统任务分配负载均衡方法,其特征在于:包括以下步骤:
S1:用户接收端接收用户流图;
S2:主控节点解析用户流图,构造算子节点与数据流边描述的流图,划分出源算子和其他算子;
S3:按照算子亲疏关系进行邻接算子合并,并按照分布式系统各个工作节点的网卡性能比例和资源比例进行算子分配。
2.根据权利要求1所述的分布式流计算系统任务分配负载均衡方法,其特征在于:步骤S1所述用户流图为xml形式。
3.根据权利要求1或2所述的分布式流计算系统任务分配负载均衡方法,其特征在于:以备主控节点将每次算子分配后的分配结果做好持久化,当步骤S2中的主控节点出现挂死时,备主控节点重新进行算子分配。
4.根据权利要求3所述的分布式流计算系统任务分配负载均衡方法,其特征在于:步骤S3所述算子合并选取算法,是按照算子与已分配算子的亲近关系最大值和未分配算子的疏远关系最大值进行选取。
5.根据权利要求4所述的分布式流计算系统任务分配负载均衡方法,其特征在于:步骤S3所述算子分配到各个工作节点的算法是源算子依照网卡性能比例分配原则进行分配,其他算子按照工作节点的内存和CPU资源比例进行分配。
CN201610196427.2A 2016-03-31 2016-03-31 一种分布式流计算系统任务分配负载均衡方法 Pending CN105610992A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610196427.2A CN105610992A (zh) 2016-03-31 2016-03-31 一种分布式流计算系统任务分配负载均衡方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610196427.2A CN105610992A (zh) 2016-03-31 2016-03-31 一种分布式流计算系统任务分配负载均衡方法

Publications (1)

Publication Number Publication Date
CN105610992A true CN105610992A (zh) 2016-05-25

Family

ID=55990526

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610196427.2A Pending CN105610992A (zh) 2016-03-31 2016-03-31 一种分布式流计算系统任务分配负载均衡方法

Country Status (1)

Country Link
CN (1) CN105610992A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108243228A (zh) * 2016-12-27 2018-07-03 中国电信股份有限公司 用于数据调度的方法和智能伺服集群
CN109343958A (zh) * 2018-09-25 2019-02-15 江苏满运软件科技有限公司 计算资源分配方法、装置、电子设备、存储介质
CN109345377A (zh) * 2018-09-28 2019-02-15 北京九章云极科技有限公司 一种数据实时处理系统及数据实时处理方法
CN109981710A (zh) * 2017-12-28 2019-07-05 中移物联网有限公司 一种面向物联网流计算的负载均衡和容错方法
CN111737531A (zh) * 2020-06-12 2020-10-02 深圳计算科学研究院 一种应用驱动的图划分调整方法和系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104020994A (zh) * 2014-05-30 2014-09-03 华为技术有限公司 基于流系统的流过程定义装置和流过程定义方法
CN104267939A (zh) * 2014-09-17 2015-01-07 华为技术有限公司 一种业务处理的方法、装置及系统
CN104504143A (zh) * 2015-01-04 2015-04-08 华为技术有限公司 一种流图优化方法及其装置
CN104683488A (zh) * 2015-03-31 2015-06-03 百度在线网络技术(北京)有限公司 流式计算系统及其调度方法和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104020994A (zh) * 2014-05-30 2014-09-03 华为技术有限公司 基于流系统的流过程定义装置和流过程定义方法
CN104267939A (zh) * 2014-09-17 2015-01-07 华为技术有限公司 一种业务处理的方法、装置及系统
CN104504143A (zh) * 2015-01-04 2015-04-08 华为技术有限公司 一种流图优化方法及其装置
CN104683488A (zh) * 2015-03-31 2015-06-03 百度在线网络技术(北京)有限公司 流式计算系统及其调度方法和装置

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108243228A (zh) * 2016-12-27 2018-07-03 中国电信股份有限公司 用于数据调度的方法和智能伺服集群
CN108243228B (zh) * 2016-12-27 2020-09-29 中国电信股份有限公司 用于数据调度的方法和智能伺服集群
CN109981710A (zh) * 2017-12-28 2019-07-05 中移物联网有限公司 一种面向物联网流计算的负载均衡和容错方法
CN109981710B (zh) * 2017-12-28 2021-10-29 中移物联网有限公司 一种面向物联网流计算的负载均衡和容错方法
CN109343958A (zh) * 2018-09-25 2019-02-15 江苏满运软件科技有限公司 计算资源分配方法、装置、电子设备、存储介质
CN109343958B (zh) * 2018-09-25 2021-05-11 广州回头车信息科技有限公司 计算资源分配方法、装置、电子设备、存储介质
CN109345377A (zh) * 2018-09-28 2019-02-15 北京九章云极科技有限公司 一种数据实时处理系统及数据实时处理方法
CN111737531A (zh) * 2020-06-12 2020-10-02 深圳计算科学研究院 一种应用驱动的图划分调整方法和系统
CN111737531B (zh) * 2020-06-12 2021-05-28 深圳计算科学研究院 一种应用驱动的图划分调整方法和系统

Similar Documents

Publication Publication Date Title
CN105610992A (zh) 一种分布式流计算系统任务分配负载均衡方法
US10630737B2 (en) Data processing method in stream computing system, control node, and stream computing system
CN107196870B (zh) 一种基于dpdk的流量动态负载均衡方法
CN113315700B (zh) 算力资源调度方法、装置和存储介质
Wen et al. Effective load balancing for cloud-based multimedia system
CN106873945A (zh) 基于批处理和流式处理的数据处理架构及数据处理方法
CN103412786A (zh) 一种高性能服务器架构系统及数据处理方法
CN107015942B (zh) 一种多核cpu发包的方法及装置
CN103049336A (zh) 一种基于哈希的网卡软中断负载均衡方法
CN110187960A (zh) 一种分布式资源调度方法及装置
CN108280018B (zh) 一种节点工作流通信开销效率分析优化方法及系统
CN105471700B (zh) 一种消息处理的方法、装置和系统
CN103179009B (zh) 一种分布式管理系统的动态自适应调用方法
CN104580322A (zh) 一种分布式数据流处理方法及装置
WO2017114180A1 (zh) 调整组件逻辑线程数量的方法及装置
CN105204948A (zh) 虚拟机物理内存配置方法及装置
Kyung et al. A load distribution scheme over multiple controllers for scalable SDN
CN105245367B (zh) 一种序列号生成方法及电子设备
CN102752208B (zh) 防止半连接攻击的方法及系统
CN106878356B (zh) 一种调度方法及计算节点
CN103207775A (zh) 采用gpu加速进行实时网络流应用程序的处理方法
WO2012159493A1 (zh) 一种用于实现用户信息共享的即时通讯系统及方法
CN103152428A (zh) 云平台上节点间进行服务通信的方法
TWI735520B (zh) 調整元件邏輯執行緒數量的方法及裝置
CN106547642A (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20160525