CN116527544A - 分布式数据处理方法、电子设备、可读存储介质及产品 - Google Patents

分布式数据处理方法、电子设备、可读存储介质及产品 Download PDF

Info

Publication number
CN116527544A
CN116527544A CN202210077512.2A CN202210077512A CN116527544A CN 116527544 A CN116527544 A CN 116527544A CN 202210077512 A CN202210077512 A CN 202210077512A CN 116527544 A CN116527544 A CN 116527544A
Authority
CN
China
Prior art keywords
data
node
workload
data set
nodes
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
CN202210077512.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.)
Shenyang Jingyi Zhijia Technology Co ltd
Original Assignee
Shenyang Jingyi Zhijia Technology 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 Shenyang Jingyi Zhijia Technology Co ltd filed Critical Shenyang Jingyi Zhijia Technology Co ltd
Priority to CN202210077512.2A priority Critical patent/CN116527544A/zh
Publication of CN116527544A publication Critical patent/CN116527544A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0882Utilisation of link capacity
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本申请提供了一种分布式数据处理方法、电子设备、计算机可读存储介质以及计算机程序产品。分布式数据处理方法包括:根据流经待测集群中各节点的数据包,确定各节点中的任一个在不同时间的工作量;基于待测集群的数据分析策略和待测集群中各节点的工作量,生成待测集群的预测工作量分析结果;以及根据预测工作量分析结果,确定待测集群中的预期超负荷节点,其中数据包包括多个数据、每个数据的流经节点标识以及每个数据的流经节点时间。本申请提供的分布式数据处理方法,可实时统计各个节点的工作量,并可及时预测待测集群中的预期超负荷节点,避免分布式数据系统崩溃。

Description

分布式数据处理方法、电子设备、可读存储介质及产品
技术领域
本申请涉及分布式系统技术领域,更具体地,涉及一种分布式数据处理方法、一种电子设备、一种计算机可读存储介质以及一种计算机程序产品。
背景技术
数据倾斜是指分布式系统在执行大数据任务过程中,某些节点(或包括多个节点的分区)处理的数据,显著高于其他节点,从而使得这些节点的处理速度低于平均的处理速度,拖慢整个任务的执行过程。进一步地,若倾斜数据超过节点本身设置的内存上限,还会使该节点宕掉,甚至出现分布式数据系统崩溃的情况。
此外,随着分布式系统技术的发展,日益增长的海量数据还进一步加剧了上述数据倾斜的问题。
常规的处理方法通常为在分布式系统发生数据倾斜后,通过例如Web UI(WebsiteUser Interface,网络产品界面设计)主动查看当前运行的阶段中各个任务分配的数据量以及确认已发生数据倾斜的节点位置。
因而,上述常规的处理方法无法预先判断可能发生数据倾斜的节点,并规避可能诱发数据倾斜的数据问题。
发明内容
本申请至少一个实施方式提供了一种可至少部分解决相关技术中存在的上述问题的分布式数据处理方法、电子设备、计算机可读存储介质和计算机程序产品。
根据本申请至少一个实施方式提供的分布式数据处理方法、电子设备、计算机可读存储介质和计算机程序产品,通过对流经待测集群中各节点的数据添加其所流经节点的标识和流经上述节点的时间,实现了通过较为便捷的方式,实时统计待测集群中各节点的工作量(可理解为节点的数据负荷情况)。
在本申请至少一个实施方式中,基于诸如斜率法、Cox-Stuart检验法等待测集群的数据分析策略以及实时统计待测集群中各节点的工作量,不仅可预先判断待测集群中可能发生数据倾斜的节点,并可根据的预测工作量分析结果规避可能诱发数据倾斜的数据问题。
此外,在本申请至少一个实施方式中,通过将节点所在终端的主机名作为数据的流经节点标识,可准确、便捷地确定待测集群中每个节点的工作量,极大地提高了预先判断可能发生数据倾斜的节点的效率。
具体地,本申请一方面提供了一种分布式数据处理方法,所述方法包括:根据流经待测集群中各节点的数据包,确定所述各节点中的任一个在不同时间的工作量;基于所述待测集群的数据分析策略和所述待测集群中所述各节点的工作量,生成所述待测集群的预测工作量分析结果;以及根据所述预测工作量分析结果,确定所述待测集群中的预期超负荷节点,其中,所述数据包包括多个数据、每个所述数据的流经节点标识以及每个所述数据的流经节点时间。
在本申请一个实施方式中,基于所述待测集群的数据分析策略和所述待测集群中所述各节点的所述工作量,生成所述待测集群的预测工作量分析结果包括:将所述各节点中的任一个在不同时间的所述工作量,按照时间顺序排列,以形成所述各节点中的任一个的时序数据集;基于所述数据分析策略处理所述时序数据集,以获得所述各节点中的任一个的工作量变化趋势;以及将所述待测集群中所述各节点的工作量变化趋势汇总,以获得所述预测工作量分析结果。
在本申请一个实施方式中,基于所述数据分析策略处理所述时序数据集,以获得所述各节点中的任一个的工作量变化趋势包括:对所述时序数据集中各数据进行线性拟合,以获得与所述时序数据集对应的节点的工作量变化趋势,其中所述各数据为已按照时间顺序排列的、与所述时序数据集对应的节点在不同时间的所述工作量。
在本申请一个实施方式中,对所述时序数据集中各数据进行线性拟合,以获得与所述时序数据集对应的节点的工作量变化趋势包括:计算线性拟合曲线的斜率值;以及通过所述斜率值,确定与所述时序数据集对应的节点的工作量变化趋势,其中,如果所述斜率值大于零,则确定与所述时序数据集对应的节点的所述工作量变化趋势为上升趋势;以及如果所述斜率值小于零,则确定与所述时序数据集对应的节点的所述工作量变化趋势为下降趋势。
在本申请一个实施方式中,对所述时序数据集中各数值进行线性拟合包括:采用最小二乘法对所述时序数据集中各数值进行线性拟合。
在本申请一个实施方式中,基于所述数据分析策略处理所述时序数据集,以获得所述各节点中的任一个的工作量变化趋势包括:将所述时序数据集中具有预定间隔的两个数据设置为一个数据组,并比较所述数据组中两个数据的大小,其中所述两个数据为已按照时间顺序排列的、与所述时序数据集对应的节点在不同时间的所述工作量;以及将所述时序数据集中各数据组的比较结果汇总,以获得与所述时序数据集对应的节点的工作量变化趋势。
在本申请一个实施方式中,将所述时序数据集中各数据组的比较结果汇总,以获得与所述时序数据集对应的节点的工作量变化趋势包括:将排序在前的数据大于排序在后的数据的数据组的比较结果设置为负,并将排序在前的数据小于排序在后的数据的数据组的比较结果设置为正;将所述时序数据集中各数据组的比较结果汇总,并通过比较结果为正的数据组的第一数量和比较结果为负的数据组的第二数量,确定与所述时序数据集对应的节点的工作量变化趋势,其中,如果所述第一数量大于所述第二数量,则确定与所述时序数据集对应的节点的所述工作量变化趋势为上升趋势;以及如果所述第一数量小于所述第二数量,则确定与所述时序数据集对应的节点的所述工作量变化趋势为下降趋势。
在本申请一个实施方式中,将所述时序数据集中具有预定间隔的两个数据设置为一个数据组,并比较所述数据组中两个数据的大小包括:采用Cox-Stuart趋势验证法,将所述时序数据集中具有预定间隔的两个数据设置为一个数据组,并比较所述数据组中两个数据的大小。
在本申请一个实施方式中,根据所述预测工作量分析结果,确定所述待测集群中的预期超负荷节点包括:在所述待测集群中节点的工作量变化趋势大于预定阈值时,确定所述节点为所述预期超负荷节点。
根据流经待测集群中各节点的数据包,确定所述各节点中的任一个在不同时间的工作量包括:
在本申请一个实施方式中,根据流经待测集群中各节点的数据包,确定所述各节点中的任一个在不同时间的工作量包括:在流经第一节点的数据中添加与所述第一节点对应的流经节点标识和与所述第一节点对应的流经节点时间,其中所述第一节点为所述各节点中的任一个;以及确定在第一时间与所述第一节点对应的流经节点标识的数量,并将其作为所述第一节点在所述第一时间的工作量,其中所述第一时间为任一个与所述第一节点对应的流经节点时间。
在本申请一个实施方式中,所述数据的流经节点标识为所述节点所在终端的主机名。
在本申请一个实施方式中,所述数据的流经节点时间为设置于所述节点的实时流程序接收所述数据时对应的时间戳。
本申请另一方面提供了一种电子设备,其包括至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如本申请一方面提供的任一项分布式数据处理方法。
本申请又一方面提供了存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行如本申请一方面提供的任一项分布式数据处理方法。
本申请又一方面提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现如本申请一方面提供的任一项分布式数据处理方法。
附图说明
通过阅读参照以下附图所作的对非限制性实施例的详细描述,本申请的其它特征、目的和优点将会变得更明显。其中:
图1是根据本申请一个实施方式的分布式数据处理方法的流程图;
图2是根据本申请一个实施方式的分布式数据流向示意图;
图3是根据本申请一个实施方式的分布式数据处理方法的流程示意图;
图4是根据本申请一个实施方式的分布式数据处理方法的数据标识示意图;以及
图5是根据本申请一个实施方式的电子设备的示意图。
具体实施方式
为了更好地理解本申请,将参考附图对本申请的各个方面做出更详细的说明。应理解,这些详细说明只是对本申请的示例性实施方式的描述,而非以任何方式限制本申请的范围。在说明书全文中,相同的附图标号指代相同的元件。表述“和/或”包括相关联的所列项目中的一个或多个的任何和全部组合。
应注意,在本说明书中,第一、第二、第三等的表述仅用于将一个特征与另一个特征区域分开来,而不表示对特征的任何限制,尤其不表示任何的先后顺序。
在附图中,为了便于说明,已稍微调整了部件的厚度、尺寸和形状。附图仅为示例而并非严格按比例绘制。如在本文中使用的,用语“大致”、“大约”以及类似的用语用作表近似的用语,而不用作表程度的用语,并且旨在说明将由本领域普通技术人员认识到的、测量值或计算值中的固有偏差。
还应理解的是,诸如“包括”、“包括有”、“具有”、“包含”和/或“包含有”等表述在本说明书中是开放性而非封闭性的表述,其表示存在所陈述的特征、元件和/或部件,但不排除一个或多个其它特征、元件、部件和/或它们的组合的存在。此外,当诸如“...中的至少一个”的表述出现在所列特征的列表之后时,其修饰整列特征,而非仅仅修饰列表中的单独元件。此外,当描述本申请的实施方式时,使用“可”表示“本申请的一个或多个实施方式”。并且,用语“示例性的”旨在指代示例或举例说明。
除非另外限定,否则本文中使用的所有措辞(包括工程术语和科技术语)均具有与本申请所属领域普通技术人员的通常理解相同的含义。还应理解的是,除非本申请中有明确的说明,否则在常用词典中定义的词语应被解释为具有与它们在相关技术的上下文中的含义一致的含义,而不应以理想化或过于形式化的意义解释。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。另外,除非明确限定或与上下文相矛盾,否则本申请所记载的方法中包含的具体步骤不必限于所记载的顺序,而可以任意顺序执行或并行地执行。下面将参考附图并结合实施例来详细说明本申请。
此外,在本申请中当使用“连接”或“联接”时可表示相应部件之间为直接的接触或间接的接触,除非有明确的其它限定或者能够从上下文推导出的除外。
图1是根据本申请一个实施方式的分布式数据处理方法的流程图1000。如图1所示,本申请提供一种分布式数据处理方法1000包括:
S1,根据流经待测集群中各节点的数据包,确定各节点中的任一个在不同时间的工作量,其中数据包包括多个数据、每个数据的流经节点标识以及每个数据的流经节点时间。
S2,基于待测集群的数据分析策略和待测集群中各节点的工作量,生成待测集群的预测工作量分析结果。
S3,根据预测工作量分析结果,确定待测集群中的预期超负荷节点。
下面将结合图2至图4详细说明上述分布式数据处理方法1000的各个步骤。
步骤S1
数据倾斜是指分布式系统在执行大数据任务过程中,某些节点(或包括多个节点的分区)处理的数据,显著高于其他节点,从而使得这些节点的处理速度低于平均的处理速度,拖慢整个任务的执行过程。进一步地,若倾斜数据超过节点本身设置的内存上限,还会使该节点宕掉,甚至出现分布式数据系统崩溃的情况。此外,随着分布式系统技术的发展,日益增长的海量数据还进一步加剧了上述数据倾斜的问题。
根据本申请至少一个实施方式提供的分布式数据处理方法,通过对流经待测集群中各节点的数据添加其所流经节点的标识和流经上述节点的时间,可通过较为便捷的方式,实时统计待测集群中各节点的工作量(可理解为节点的数据负荷情况)。
此外,在本申请至少一个实施方式中,通过将节点所在终端的主机名作为数据的流经节点标识,可准确、便捷地确定待测集群中每个节点的工作量,极大地提高了预先判断可能发生数据倾斜的节点的效率。
图2是根据本申请一个实施方式的分布式数据流向示意图。图3是根据本申请一个实施方式的分布式数据处理方法的流程示意图。图4是根据本申请一个实施方式的分布式数据处理方法的数据标识示意图。
具体地,如图2至图4所示,在本申请的一个实施方式中,步骤S1的根据流经待测集群中各节点的数据包,确定各节点中的任一个在不同时间的工作量,其中数据包包括多个数据、每个数据的流经节点标识以及每个数据的流经节点时间可例如包括:在流经第一节点的数据中添加与第一节点对应的流经节点标识和与第一节点对应的流经节点时间,其中第一节点为所述各节点中的任一个;以及确定在第一时间与第一节点对应的流经节点标识的数量,并将其作为第一节点在第一时间的工作量,其中第一时间为任一个与第一节点对应的流经节点时间。
分布式系统是由多个自治的计算机节点作为分布式节点,通过通信网络组成的机群系统,其可作为服务器侧来为客户端提供数据,因此客户端可通过分布式系统中的任意一个分布式节点进行数据访问。在本申请提供的分布式数据处理方法中,待测集群可包括多个计算机节点(以下简称节点)或包括多个分区,每个分区可包括上述多个节点。
如图2和图3所示,以分布式系统中数据01、数据02和数据03的流经待测集群的过程为例,详细说明根据流经待测集群中各节点的数据包,确定各节点中的任一个在不同时间的工作量的过程。
数据01、数据02和数据03通过分布式系统的消息通道在待测集群的节点A、节点B、节点C、节点D、节点E和节点F间流转。以数据01为例,节点A的例如实时流程序接收数据01时,可生成与节点A对应的唯一标识Axx01,该唯一标识可包括例如数据01流经节点A的流经节点时间(例如,时间t1)以及节点A的标识,可将上述唯一标识添加在数据01中,生成数据01-Axx01。之后,数据01-Axx01可在节点A处的应用程序中进行相关加工处理,在完成相关加工处理后,可调用下一个处理逻辑,例如数据01-Axx01进入节点E。在进入节点E后,节点E的例如实时流程序接收数据01-Axx01时,可生成与节点E对应的唯一标识Exx01,该唯一标识可包括例如数据01-Axx01流经节点E的流经节点时间(例如,时间t2)以及节点E的标识,可将上述唯一标识添加在数据01-Axx01中,生成数据01-Axx01-Exx01。
相应地,数据02流经待测集群的节点B和节点F,并生成数据02-Bxx01-Fxx01;数据03流经待测集群的节点C和节点F,并生成数据03-Cxx01-Fxx01。
换言之,如图4所示,任意数据流经待测集群中的多个节点12(节点01、节点02、节点03、节点04等等)之后,该数据的数据标识11可包括依照该数据流经不同节点的流经节点时间顺序排列的、且与上述多个节点12对应的流经节点时间和节点标识(01xxx、02xxx、03xxx、04xxx等等)。
应当理解的是,图2的分布式数据流向示意图和图3的分布式数据流程示意图仅为示例说明,本申请对此不作限制,此外节点可在接收数据时生成唯一标识,也可在数据流转在该节点的任意时刻生成唯一标识,本申请对此不作限定。
在消息通道的下游(例如,消费端)可接收包括上述数据01-Axx01-Exx01、数据02-Bxx01-Fxx01以及数据03-Cxx01-Fxx01的数据包,并对数据包进行解析,可获得数据流经节点的节点标识(在本申请的一个实施方式中,可理解为节点名称),并经过计算可确定标识Axx01的数量为1,标识Bxx01的数量为1,标识Cxx01的数量为1,标识Dxx01的数量为0,标识Exx01的数量为1,标识Fxx01的数量为2。
进一步地,通过统计上述标识,可确定在时间t1,流经节点A的节点标识的数量为1,则节点A在时间t1的工作量为1。在时间t1,流经节点B的节点标识数量为1,则节点B在时间t1的工作量为1。类似地,节点C在其对应的流经节点时间t1的工作量为1;节点D在其对应的流经节点时间t2的工作量为0;节点E在其对应的流经节点时间t2的工作量为1;节点F在其对应的流经节点时间t2的工作量为2。
应当理解的是,上述节点的工作量的数值和标识的数量仅为示例性说明,本申请对此不作限制。
因而,通过流经待测集群中各节点的数据包,可确定各节点中的任一个在不同时间的工作量,其中数据包包括多个数据、每个数据的流经节点标识以及每个数据的流经节点时间。通过对流经待测集群中各节点的数据添加其所流经节点的标识和流经上述节点的时间,可通过较为便捷的方式,实时统计待测集群中各节点的工作量(可理解为节点的数据负荷情况)。
此外,在本申请的一个实施方式中,数据的流经节点标识可为节点所在终端的主机名,换言之,主机名可理解为通过通信网络组成的机群系统中分布式节点所包括的终端(例如,计算机)的IP(Internet Protocol Address)地址,其为每台主机的唯一性标识,除非节点被销毁,否则该终端的主机名生成后不会被变更。
因而,通过将节点所在终端的主机名作为数据的流经节点标识,可准确、便捷地确定待测集群中每个节点的工作量,极大地提高了预先判断可能发生数据倾斜的节点的效率。
进一步地,在本申请的一个实施方式中,数据的流经节点时间可为设置于节点的例如实时流程序接收该数据时对应的时间戳。同样地,通过将节点接收数据时的时间戳作为据的流经节点时间,可准确、便捷地确定待测集群中每个节点的工作量,极大地提高了预先判断可能发生数据倾斜的节点的效率。
步骤S2
再次参考图3,步骤S2基于待测集群的数据分析策略和待测集群中各节点的工作量,生成待测集群的预测工作量分析结果可例如包括:将各节点中的任一个在不同时间的工作量,按照时间顺序排列,以形成各节点中的任一个的时序数据集;基于数据分析策略处理时序数据集,以获得各节点中的任一个的工作量变化趋势;以及将待测集群中各节点的工作量变化趋势汇总,以获得预测工作量分析结果。
具体地,在本申请的一个实施方式中,在形成待测集群中各节点中的任一个的时序数据集后,可对任一个时序数据集中的数据进行线性拟合,并通过线性拟合获得与时序数据集对应的节点的工作量变化趋势。任一个时序数据集中的数据是指已按照时间顺序排列的、与时序数据集对应的节点在不同时间的工作量。
进一步地,作为一种选择,可计算上述线性拟合曲线的斜率值,并通过斜率值,确定与时序数据集对应的节点的工作量变化趋势。例如,如果线性拟合曲线的斜率值大于零,则确定与时序数据集对应的节点的工作量变化趋势为上升趋势;以及如果线性拟合曲线的斜率值小于零,则确定与时序数据集对应的节点的工作量变化趋势为下降趋势。可选地,可采用最小二乘法对时序数据集中的数据进行线性拟合。
在本申请的另一实施方式中,在形成待测集群中各节点中的任一个的时序数据集后,可将任一个时序数据集中具有预定间隔的两个数据设置为一个数据组,并比较数据组中两个数据的大小,将时序数据集中各数据组的比较结果汇总,可获得与时序数据集对应的节点的工作量变化趋势。任一个的时序数据集中的两个数据是指已按照时间顺序排列的、与时序数据集对应的节点在不同时间的工作量。
进一步地,作为一种选择,可将排序在前的数据大于排序在后的数据的数据组的比较结果设置为负,并将排序在前的数据小于排序在后的数据的数据组的比较结果设置为正。将时序数据集中各数据组的比较结果汇总,并通过比较结果为正的数据组的第一数量和比较结果为负的数据组的第二数量,确定与时序数据集对应的节点的工作量变化趋势。例如,如果第一数量大于第二数量,则确定与时序数据集对应的节点的工作量变化趋势为上升趋势;如果第一数量小于第二数量,则确定与时序数据集对应的节点的工作量变化趋势为下降趋势。
可选地,可采用Cox-Stuart趋势验证法,将任一个时序数据集中具有预定间隔的两个数据设置为一个数据组,并比较数据组中两个数据的大小。
例如,在形成待测集群中各节点中的任一个的时序数据集后,可假设节点01的时序数据集为{1 5 9 8 10 12 11 15 14 17},其中节点01可以是待测集群中各节点中的任一个。
作为一种选择,例如采用Cox-Stuart趋势验证法,可将位置位于中间的“10”作为中间数,并将该时序数据集分为(1,12)、(5,11)、(9,15)、(8,14)、(10,17)。通过比较分组后的每一个数据组中两个数据的大小,并将时序数据集中各数据组的比较结果汇总,可获得与时序数据集对应的节点的工作量变化趋势。例如,比较结果为正的数据组的第一数量为5个,比较结果为负的数据组的第二数量为0个,则第一数量大于第二数量,可确定与时序数据集对应的节点01的工作量变化趋势为上升趋势。
作为另一种选择,也可将该时序数据集分为(1,5)、(9,8)、(10,12)、(11,15)、(14,17)。通过比较分组后的每一个数据组中两个数据的大小,并将时序数据集中各数据组的比较结果汇总,可获得与时序数据集对应的节点的工作量变化趋势。例如,比较结果为正的数据组的第一数量为4个,分别是:(1,5)、(10,12)、(11,15)、(14,17)。比较结果为负的数据组的第二数量为1个,为:(9,8)。则第一数量大于第二数量,可确定与时序数据集对应的节点01的工作量变化趋势为上升趋势。
通过上述方法,消息通道的下游(例如,消费端)在接收到流经待测集群中各节点的数据包后,可对数据包进行解析,生成待测集群中各节点的工作量。通过待测集群中各节点在不同时间的工作量,可确定其与工作量相关的时序数据集,并可基于待测集群的数据分析策略处理全部时序数据集后,获得待测集群各节点中的任一个的工作量变化趋势,通过将各节点的工作量变化趋势汇总,可获得待测集群的预测工作量分析结果。
步骤S3
再次参考图3,步骤S3根据所述预测工作量分析结果,确定所述待测集群中的预期超负荷节点可例如包括:在待测集群中节点的工作量变化趋势大于预定阈值时,确定节点为预期超负荷节点;以及在待测集群中节点的工作量变化趋势小于或等于预定阈值时,确定节点正常容量节点。
具体地,通过上述步骤,可实时统计出待测集群中各节点的工作量,并基于待测集群的数据分析策略和上述工作量生成待测集群的预测工作量分析结果。换言之,通过流经待测集群中各节点的数据包,可实时确定待测集群中各节点的数据负荷情况。通过待测集群的数据分析策略,可进一步地确定出各节点的数据负荷趋势(可理解为各节点的工作量变化趋势)。各节点的工作量变化趋势汇总后,即为待测集群的预测工作量分析结果。
预定阈值可与提前预测(例如,通过模拟的方法获取)的节点发生数据倾斜时的工作量有关。具体地,可通过例如模拟的方法,在输入分析模型之后进行预警规则匹配,作为一种选择,还可将待测集群中节点发生数据倾斜时对应的工作量确定为预定阈值。
在确定出预定阈值后,可在待测集群中节点的工作量变化趋势小于或等于预定阈值时,确定该节点为正常容量节点;在待测集群中节点的工作量变化趋势大于预定阈值时,确定该节点为预期超负荷节点。因而,在本申请至少一个实施方式中,基于诸如斜率法、Cox-Stuart检验法等待测集群的数据分析策略以及实时统计待测集群中各节点的工作量,可预先判断待测集群中可能发生数据倾斜的节点。
进一步地,在本申请至少一个实施方式中,根据量化的预测工作量分析结果,可明确地细化出节点发生数据倾斜的具体情况和问题。例如,通过量化的预测工作量分析结果,可细化出预期的、数据倾斜的数据情况包括:待测集群中的超负荷节点集中出现在某一分区;待测集群中的超负荷节点的数目超过预期值;以及测集群中的超负荷节点的工作量变化趋势远超过预定阈值等等。因而,根据量化的待测集群预测工作量分析结果,可针对上述具体的细化情况具体分析,规避可能诱发数据倾斜的数据问题。
图5是根据本申请一个实施方式的电子设备3000的示意图。
本申请又一方面提供了一种电子设备3000。该电子设备3000包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行上述分布式数据处理方法。
本申请又一方面提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,计算机指令用于使计算机执行上述分布式数据处理方法。
本申请又一方面提供了一种存储有计算机程序产品,包括计算机程序,计算机程序在被处理器执行时实现上述分布式数据处理方法。
如图5所示,电子设备3000旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。该设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图5所示电子设备3000包括:一个或多个处理器3100、存储器3200,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图5中以一个处理器3100为例。
存储器3200即为本申请所提供的非瞬时计算机可读存储介质。其中,存储器存储有可由至少一个处理器执行的指令,以使至少一个处理器执行本申请所提供的分布式数据处理方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的分布式数据处理方法。
存储器3200作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块。处理器3100通过运行存储在存储器3200中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施方式中的分布式数据处理方法。
存储器3200可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据用于控制质量的电子设备的使用所创建的数据等。此外,存储器3200可包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器3200可包括相对于处理器3100远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
电子设备3000还可以包括:输入装置3300和输出装置3400。处理器3100、存储器3200、输入装置3300和输出装置3400可以通过总线或者其他方式连接,图5中以通过总线连接为例。
输入装置3300可接收输入的数字或字符信息,以及产生与用于控制质量的电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置3400可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用ASIC(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以为分布式系统的服务器,或者是结合了区块链的服务器。服务器也可以是云服务器,或者是带人工智能技术的智能云计算服务器或智能云主机。服务器可以为分布式系统的服务器,或者是结合了区块链的服务器。服务器也可以是云服务器,或者是带人工智能技术的智能云计算服务器或智能云主机。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
以上描述仅为本申请的实施方式以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的保护范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离技术构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (15)

1.一种分布式数据处理方法,其特征在于,所述方法包括:
根据流经待测集群中各节点的数据包,确定所述各节点中的任一个在不同时间的工作量;
基于所述待测集群的数据分析策略和所述待测集群中所述各节点的工作量,生成所述待测集群的预测工作量分析结果;以及
根据所述预测工作量分析结果,确定所述待测集群中的预期超负荷节点,
其中,所述数据包包括多个数据、每个所述数据的流经节点标识以及每个所述数据的流经节点时间。
2.根据权利要求1所述的方法,其中,基于所述待测集群的数据分析策略和所述待测集群中所述各节点的所述工作量,生成所述待测集群的预测工作量分析结果包括:
将所述各节点中的任一个在不同时间的所述工作量,按照时间顺序排列,以形成所述各节点中的任一个的时序数据集;
基于所述数据分析策略处理所述时序数据集,以获得所述各节点中的任一个的工作量变化趋势;以及
将所述待测集群中所述各节点的工作量变化趋势汇总,以获得所述预测工作量分析结果。
3.根据权利要求2所述的方法,其特征在于,基于所述数据分析策略处理所述时序数据集,以获得所述各节点中的任一个的工作量变化趋势包括:
对所述时序数据集中各数据进行线性拟合,以获得与所述时序数据集对应的节点的工作量变化趋势,其中所述各数据为已按照时间顺序排列的、与所述时序数据集对应的节点在不同时间的所述工作量。
4.根据权利要求3所述的方法,其特征在于,对所述时序数据集中各数据进行线性拟合,以获得与所述时序数据集对应的节点的工作量变化趋势包括:
计算线性拟合曲线的斜率值;以及
通过所述斜率值,确定与所述时序数据集对应的节点的工作量变化趋势,
其中,如果所述斜率值大于零,则确定与所述时序数据集对应的节点的所述工作量变化趋势为上升趋势;以及
如果所述斜率值小于零,则确定与所述时序数据集对应的节点的所述工作量变化趋势为下降趋势。
5.根据权利要求3所述的方法,其特征在于,对所述时序数据集中各数据进行线性拟合包括:
采用最小二乘法对所述时序数据集中各数据进行线性拟合。
6.根据权利要求2所述的方法,其特征在于,基于所述数据分析策略处理所述时序数据集,以获得所述各节点中的任一个的工作量变化趋势包括:
将所述时序数据集中具有预定间隔的两个数据设置为一个数据组,并比较所述数据组中两个数据的大小,其中所述两个数据为已按照时间顺序排列的、与所述时序数据集对应的节点在不同时间的所述工作量;以及
将所述时序数据集中各数据组的比较结果汇总,以获得与所述时序数据集对应的节点的工作量变化趋势。
7.根据权利要求6所述的方法,其特征在于,将所述时序数据集中各数据组的比较结果汇总,以获得与所述时序数据集对应的节点的工作量变化趋势包括:
将排序在前的数据大于排序在后的数据的数据组的比较结果设置为负,并将排序在前的数据小于排序在后的数据的数据组的比较结果设置为正;
将所述时序数据集中各数据组的比较结果汇总,并通过比较结果为正的数据组的第一数量和比较结果为负的数据组的第二数量,确定与所述时序数据集对应的节点的工作量变化趋势,
其中,如果所述第一数量大于所述第二数量,则确定与所述时序数据集对应的节点的所述工作量变化趋势为上升趋势;以及
如果所述第一数量小于所述第二数量,则确定与所述时序数据集对应的节点的所述工作量变化趋势为下降趋势。
8.根据权利要求6所述的方法,其特征在于,将所述时序数据集中具有预定间隔的两个数据设置为一个数据组,并比较所述数据组中两个数据的大小包括:
采用Cox-Stuart趋势验证法,将所述时序数据集中具有预定间隔的两个数据设置为一个数据组,并比较所述数据组中两个数据的大小。
9.根据权利要求2所述的方法,其特征在于,根据所述预测工作量分析结果,确定所述待测集群中的预期超负荷节点包括:
在所述待测集群中节点的工作量变化趋势大于预定阈值时,确定所述节点为所述预期超负荷节点。
10.根据权利要求1至9中任一项所述的方法,其特征在于,根据流经待测集群中各节点的数据包,确定所述各节点中的任一个在不同时间的工作量包括:
在流经第一节点的数据中添加与所述第一节点对应的流经节点标识和与所述第一节点对应的流经节点时间,其中所述第一节点为所述各节点中的任一个;以及
确定在第一时间与所述第一节点对应的流经节点标识的数量,并将其作为所述第一节点在所述第一时间的工作量,其中所述第一时间为任一个与所述第一节点对应的流经节点时间。
11.根据权利要求10所述的方法,其特征在于,
所述数据的流经节点标识为所述节点所在终端的主机名。
12.根据权利要求10所述的方法,其特征在于,
所述数据的流经节点时间为设置于所述节点的实时流程序接收所述数据时对应的时间戳。
13.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-12中任一项所述的方法。
14.一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行权利要求1-12中任一项所述的方法。
15.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-12中任一项所述的方法。
CN202210077512.2A 2022-01-24 2022-01-24 分布式数据处理方法、电子设备、可读存储介质及产品 Pending CN116527544A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210077512.2A CN116527544A (zh) 2022-01-24 2022-01-24 分布式数据处理方法、电子设备、可读存储介质及产品

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210077512.2A CN116527544A (zh) 2022-01-24 2022-01-24 分布式数据处理方法、电子设备、可读存储介质及产品

Publications (1)

Publication Number Publication Date
CN116527544A true CN116527544A (zh) 2023-08-01

Family

ID=87394539

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210077512.2A Pending CN116527544A (zh) 2022-01-24 2022-01-24 分布式数据处理方法、电子设备、可读存储介质及产品

Country Status (1)

Country Link
CN (1) CN116527544A (zh)

Similar Documents

Publication Publication Date Title
US10394693B2 (en) Quantization of data streams of instrumented software
US10318366B2 (en) System and method for relationship based root cause recommendation
CN109587008B (zh) 检测异常流量数据的方法、装置及存储介质
US9658910B2 (en) Systems and methods for spatially displaced correlation for detecting value ranges of transient correlation in machine data of enterprise systems
US10909018B2 (en) System and method for end-to-end application root cause recommendation
US9774654B2 (en) Service call graphs for website performance
US20210135948A1 (en) Discovering a computer network topology for an executing application
CN111694646A (zh) 资源调度方法、装置、电子设备及计算机可读存储介质
WO2020123031A1 (en) Creating and displaying a graph representation of a computer network topology for an executing application
CN111460384A (zh) 策略的评估方法、装置和设备
CN112446574B (zh) 产品评估方法、装置、电子设备及存储介质
US10601954B2 (en) Sandboxing requests for web services
CN111865720B (zh) 用于处理请求的方法、装置、设备以及存储介质
CN111241396B (zh) 信息推送的方法和装置、电子设备、存储介质
US10644971B2 (en) Graph search in structured query language style query
CN112015995A (zh) 数据分析的方法、装置、设备以及存储介质
CN112101447B (zh) 数据集的质量评估方法、装置、设备以及存储介质
WO2020000724A1 (zh) 云平台主机间通信负载的处理方法、电子装置及介质
CN113778973B (zh) 数据存储方法和装置
CN116527544A (zh) 分布式数据处理方法、电子设备、可读存储介质及产品
CN112561332B (zh) 模型管理方法、装置、电子设备、存储介质和程序产品
CN111597026B (zh) 用于获取信息的方法及装置
US11036561B2 (en) Detecting device utilization imbalances
CN112508518A (zh) 结合rpa和ai的rpa流程的生成方法以及相应的设备、可读存储介质
KR102464688B1 (ko) 모니터링 결과의 이벤트 등급 결정 방법 및 장치

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