【技术实现步骤摘要】
流计算系统中的数据处理方法、控制节点及流计算系统
本专利技术涉及计算机
,尤其涉及一种流计算系统中的数据处理方法、控制节点及流计算系统。
技术介绍
当前,数据密集型业务已经得到了广泛的应用,典型的数据密集型业务包括金融服务、网络监控、电信数据管理、Web应用等等。在数据密集型业务中,数据具有量大、快速、时变的特点,因此数据不宜用持久稳定关系建模,而适宜用瞬态数据流建模,由此产生了数据流计算的研究。数据流计算是一种类似流水线式的数据处理模式,数据流计算来自于一个理念:数据的价值随着时间的流逝而降低,所以由事件触发生成数据之后必须尽快地对其进行处理,最好数据产生时便立刻对其进行处理,即发生一个事件就立即进行一次数据处理,而不是将数据缓存起来批量处理。在流计算系统中,数据流计算是基于流式数据处理模型进行的,如图1所示,业务数据处理逻辑通常需要转化为无回路有向图(DirectedAcyclicGraph,DAG;或称为流图)所示的数据处理模式,图中的算子(Operator)承载实际的数据处理操作,数据流(stream)代表各Operator间的数据传输,其中所有Operator可以被分布化执行。现有技术中,一种设置数据流计算的流式数据处理模型的方案是:物理单元(physicalequipment,PE,或者称为执行单元)与逻辑单元(在DAG图中一般用Operator标示,或称为工作节点)为多对一的关系,该方案支持静态配置Operator的并发度,即根据用户静态配置的Operator的并发度,每个Operator在业务执行过程中,根据该并发度调用对应个数的执行 ...
【技术保护点】
一种流计算系统中的数据处理方法,所述流计算系统包括控制节点和多个工作节点,其特征在于,该方法包括:所述控制节点根据配置的各个工作节点的并发度,调用所述多个工作节点中的一个或多个工作节点对数据流进行处理;其中,所述一个或多个工作节点中的每个工作节点包含一个或多个执行单元,所述每个工作节点的并发度用于表示所述每个工作节点所包含的执行单元的个数;当所述每个工作节点被调用对数据流进行处理时,具体由所述每个工作节点所包含的执行单元处理数据流;所述控制节点收集所述一个或多个工作节点中每个工作节点与其它工作节点之间的数据流量信息和所述一个或多个工作节点中每个工作节点的处理速度信息;所述控制节点根据收集到的数据流量信息和处理速度信息确定所述一个或多个工作节点中的每个工作节点的优化并发度;所述控制节点确定所述一个或多个工作节点中的每个工作节点的优化并发度与所述每个工作节点的并发度是否相同,如果不相同,则按照所述每个工作节点的优化并发度对所述每个工作节点的并发度进行调整。
【技术特征摘要】
1.一种流计算系统中的数据处理方法,所述流计算系统包括控制节点和多个工作节点,其特征在于,该方法包括:所述控制节点根据配置的各个工作节点的并发度,调用所述多个工作节点中的一个或多个工作节点对数据流进行处理;其中,所述一个或多个工作节点中的每个工作节点包含一个或多个执行单元,所述每个工作节点的并发度用于表示所述每个工作节点所包含的执行单元的个数;当所述每个工作节点被调用对数据流进行处理时,具体由所述每个工作节点所包含的执行单元处理数据流;所述控制节点收集所述一个或多个工作节点中每个工作节点与其它工作节点之间的数据流量信息和所述一个或多个工作节点中每个工作节点的处理速度信息;所述控制节点根据收集到的数据流量信息和处理速度信息确定所述一个或多个工作节点中的每个工作节点的优化并发度;所述控制节点确定所述一个或多个工作节点中的每个工作节点的优化并发度与所述每个工作节点的并发度是否相同,如果不相同,则按照所述每个工作节点的优化并发度对所述每个工作节点的并发度进行调整。2.如权利要求1所述的方法,其特征在于,所述控制节点按照所述每个工作节点的优化并发度对所述每个工作节点的并发度进行调整,包括:当所述每个工作节点的优化并发度大于所述每个工作节点的并发度时,所述控制节点根据所述每个工作节点的优化并发度为所述每个工作节点新增至少一个执行单元,或当所述工作节点的优化并发度小于该工作节点的并发度时,删除所述每个工作节点的至少一个执行单元,使得所述每个工作节点当前包含的执行单元个数所表征的所述每个工作节点的并发度与所述每个工作节点的优化并发度相同。3.如权利要求2所述的方法,其特征在于,所述控制节点根据所述每个工作节点的优化并发度为所述每个工作节点新增至少一个执行单元包括:所述控制节点生成用于创建新的执行单元的第一控制指令并发送给所述每个工作节点,使得所述每个工作节点接收到所述第一控制指令后创建至少一个新执行单元,并创建所述新执行单元与其它执行单元的数据通道,其中所述每个工作节点当前包含的执行单元的总个数所表征的所述每个工作节点的并发度与所述每个工作节点的优化并发度相同。4.如权利要求2或3所述的方法,其特征在于,所述控制节点删除所述每个工作节点的至少一个执行单元包括:所述控制节点生成用于删除所述每个工作节点的执行单元的第二控制指令并发送给所述每个工作节点,使得所述每个工作节点接收到所述第二控制指令后删除所述每个工作节点的至少一个执行单元,并删除与所述删除的执行单元连接的数据通道,其中所述每个工作节点当前包含的执行单元的总个数所表征的所述每个工作节点的并发度与所述每个工作节点的优化并发度相同。5.如权利要求4所述的方法,其特征在于,在根据所述每个工作节点的优化并发度为所述每个工作节点新增至少一个执行单元,或删除所述每个工作节点的至少一个执行单元之后,所述方法还包括:所述控制节点根据新增或删除的至少一个执行单元,调整所述每个工作节点对应的上游工作节点的数据派发策略,所述数据派发策略用于表示所述每个工作节点在派发数据时,接收数据的设备以及接收数据的设备在接收数据时的数据量;所述控制节点向所述上游工作节点发送调整后的数据派发策略,使得所述上游工作节点根据调整后的数据派发策略,在确定下游的目标工作节点对应的目标执行单元后,将数据包对应派发到所述目标执行单元。6.如权利要求4所述的方法,其特征在于,在根据所述每个工作节点的优化并发度为所述每个工作节点新增至少一个执行单元,或删除所述每个工作节点的至少一个执行单元之后,所述方法还包括:所述控制节点根据新增或删除的至少一个执行单元,调整所述每个工作节点对应的上游工作节点的数据派发策略;所述控制节点向所述上游工作节点发送调整后的数据派发策略,使得所述上游工作节点根据调整后的数据派发策略,确定目标工作节点所属的工作节点组,所述工作节点组包括至少一个工作节点;并从所述工作节点组中确定下游的目标工作节点,以及在确定所述目标工作节点对应的目标执行单元后,将数据包对应派发到所述目标执行单元。7.一种流计算系统中的控制节点,所述流计算系统包括所述控制节点和多个工作节点,其特征在于,所述控制节点包括:调用单元,用于根据配置的各个工作节点的并发度,调用所述多个工作节点中的一个或多个工作节点对数据流进行处理;其中,所述一个或多个工作节点中的每个工作节点包含一个或多个执行单元,所述每个工作节点的并发度用于表示所述每个工作节点所包含的执行单元的个数;当所述每个工作节点被调用对数据流进行处理时,具体由所述每个工作节点所包含的执行单元处理数据流;信息收集单元,用于收集所述一个或多个工作节点中每个工作节点与其它工作节点之间的数据流量信息和所述一个或多个工作节点中每个工作节点的处理速度信息;计算单元,用于根据所述信息收集单元收集到的数据流量信息和处理速度信息确定所述一个或多个工作节点中的每个工作节点的优化并发度;调整单元,用于确定所述一个或多个工作节点中的每个工作节点的优化并发度与所述每个工作节点的并发度是否相同,如果不相同,则按照所述每个工作节点的优化并发度对所述每个工作节点的并发度进行调整。8.如权利要求7所述的控制节点,其特征在于,在所述按照所述每个工作节点的优化并发度对所述每个工作节点的并发度进行调整的...
【专利技术属性】
技术研发人员:史云龙,夏命榛,何诚,
申请(专利权)人:华为技术有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。