数据处理方法、节点确定方法、装置、设备及介质

文档序号:95810 发布日期:2021-10-12 浏览:21次 >En<

阅读说明:本技术 数据处理方法、节点确定方法、装置、设备及介质 (Data processing method, node determination method, device, equipment and medium ) 是由 周涌 王涛 于 2020-03-19 设计创作,主要内容包括:本发明公开了一种数据处理方法、节点确定方法、装置、设备及介质。该节点确定方法包括,首先,获取与数据更新相关的回刷节点集合,以及回刷节点集合中回刷节点的配置信息;接着,根据配置信息确定与回刷节点具有依赖关系的目标数据表;然后,在检测到目标数据表满足第一预设条件时,展示与目标数据表对应的目标节点,以使用户将目标节点添加到回刷节点集合。这样,提高数据回刷的效率。(The invention discloses a data processing method, a node determining device, equipment and a medium. The node determination method comprises the steps of firstly, acquiring a back-brushing node set related to data updating and configuration information of back-brushing nodes in the back-brushing node set; then, determining a target data table having a dependency relationship with the back-brushing node according to the configuration information; then, when the target data table is detected to meet the first preset condition, the target node corresponding to the target data table is displayed, so that the user can add the target node to the back-brushing node set. Thus, the efficiency of data back-brushing is improved.)

数据处理方法、节点确定方法、装置、设备及介质

技术领域

本发明涉及计算机领域,尤其涉及一种数据处理方法、节点确定方法、装置、设备及介质。

背景技术

目前,在计算平台中重新执行计算节点中的计算代码,以产出结果数据且将结果数据存放到数据表中的过程被称为“数据回刷”。例如,某个数据表中存放了最近30天的结果数据,计算节点每日调度运行并产出最近1天的数据,若某天对原始的计算代码做了修改并且要求将数据表中数据为最新计算代码的计算结果数据,则需要进行数据回刷,即用修改后的最新计算代码重新计算并产出最近30天的结果数据。

现阶段的数据回刷方式中,是需要人工检查数据表中的数据是否有数据缺失,如果有数据缺失,会导致回刷数据的结果为空,这样,数据回刷则需重新来过。由此,上述方式费时费力,还难以保证检查无差错,也会使最后得到的结果数据准确性较低。

发明内容

本发明实施例提供一种数据处理方法、装置、设备及介质,以提高数据回刷的效率。

第一方面,本发明实施例提供一种节点确定方法,该方法可以包括:

获取与数据更新相关的回刷节点集合,以及回刷节点集合中回刷节点的配置信息;

根据配置信息确定目标数据表,目标数据表与回刷节点具有依赖关系;

在检测到目标数据表满足第一预设条件时,展示与目标数据表对应的目标节点,以使用户将目标节点添加到回刷节点集合。

第二方面,本发明实施例提供一种节点确定方法,该方法可以包括:

获取与更新数据相关的配置信息;

展示与所述配置信息相关的至少一个节点;

接收用户在所述至少一个节点中选择目标节点的操作;

响应于所述操作,将所述目标节点确定为回刷节点,且将所述回刷节点添加到回刷节点集合,以通过所述回刷节点集合中的回刷节点更新目标数据表中的数据,所述目标数据表与所述回刷节点具有依赖关系。

第三方面,本发明实施例提供一种数据处理方法,该方法可以包括:

获取与数据更新相关的回刷节点集合,以及回刷节点集合中回刷节点的配置信息;

根据配置信息确定目标数据表,目标数据表与回刷节点具有依赖关系;

在检测到目标数据表满足第一预设条件时,展示与目标数据表对应的目标节点;

在将目标节点添加到回刷节点集合时,得到新回刷节点集合;

通过新回刷节点集合中的新回刷节点对第一数据表中的数据进行更新,得到结果数据;其中,第一数据表包括与新回刷节点具有依赖关系的数据表。

第四方面,本发明实施例提供一种节点确定装置,该装置可以包括:

获取模块,用于获取与更新数据相关的配置信息;

显示模块,用于展示与所述配置信息相关的至少一个节点;

接收模块,用于接收用户在所述至少一个节点中选择目标节点的操作;

处理模块,用于响应于所述操作,将所述目标节点确定为回刷节点,且将所述回刷节点添加到回刷节点集合,以通过所述回刷节点集合中的回刷节点更新目标数据表中的数据,所述目标数据表与所述回刷节点具有依赖关系。

第五方面,本发明实施例提供一种节点确定装置,该装置可以包括:

获取模块,用于获取与数据更新相关的回刷节点集合,以及回刷节点集合中回刷节点的配置信息;

处理模块,用于根据配置信息确定目标数据表,目标数据表与回刷节点具有依赖关系;

展示模块,用于在检测到目标数据表满足第一预设条件时,展示与目标数据表对应的目标节点,以使用户将目标节点添加到回刷节点集合。

第六方面,本发明实施例提供一种数据处理装置,该装置可以包括:

获取模块,用于获取与数据更新相关的回刷节点集合,以及回刷节点集合中回刷节点的配置信息;

处理模块,用于根据配置信息确定目标数据表,目标数据表与回刷节点具有依赖关系;

展示模块,用于在检测到目标数据表满足第一预设条件时,展示与目标数据表对应的目标节点;

更新模块,用于在将目标节点添加到回刷节点集合时,得到新回刷节点集合;

处理模块还用于,通过新回刷节点集合中的新回刷节点对第一数据表中的数据进行更新,得到结果数据;其中,第一数据表包括与新回刷节点具有依赖关系的数据表。

第七方面,本发明实施例提供一种计算设备,设备包括:处理器以及存储有计算机程序指令的存储器;

处理器执行计算机程序指令时实现如第一方面提供的节点确定方法、实现如第二方面提供的节点确定方法、或者,如第三方面提供的数据处理方法。

第八方面,本发明实施例提供一种计算机存储介质,计算机存储介质上存储有计算机程序指令,计算机程序指令被处理器执行时实现第一方面提供的节点确定方法、实现如第二方面提供的节点确定方法、或者,如第二方面提供的数据处理方法。

本发明实施例提供的方法,适用于多数情况下批量节点的数据回刷场景。首先,获取与数据更新相关的回刷节点集合,以及回刷节点集合中回刷节点的配置信息;接着,根据配置信息确定与回刷节点具有依赖关系的目标数据表;然后,在自动检测目标数据表在满足第一预设时,展示与目标数据表对应的目标节点,以使用户将目标节点添加到回刷节点集合。这样,通过一次节点圈选就可以确定回刷节点,有效避免了用户的重复工作。另外,该方法提供了自动确定目标节点的回刷工具,不需要人工维护节点,以提高确定回刷节点的效率,进而保证后续数据回刷的效率,节省人力成本和计算成本。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1示出本发明实施例提供的数据处理界面示意图;

图2示出本发明实施例提供的一种节点确定方法的流程示意图;

图3示出本发明实施例提供的回刷类型界面示意图;

图4示出本发明实施例提供的节点确定装置的结构示意图;

图5示出本发明实施例提供的数据处理装置的结构示意图;

图6示出本发明实施例提供的节点确定装置的结构示意图;

图7示出本发明实施例提供的计算设备的结构示意图。

具体实施方式

下面将详细描述本发明的各个方面的特征和示例性实施例,为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细描述。应理解,此处所描述的具体实施例仅被配置为解释本发明,并不被配置为限定本发明。对于本领域技术人员来说,本发明可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本发明的示例来提供对本发明更好的理解。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。

目前,在进行大数据研发时,经常会遇到各种回刷数据的需求。少则需要回刷几个月多则好几年的数据,若按照现阶段的数据回刷方式进行数据回刷,会使数据研发不仅耗费了大量的时间和精力,而且各种问题频出。

现阶段的数据回刷方式主要适用于单节点回刷。该数据回刷方式具体包括:需要人工检查上游节点或者下游节点对应的数据表中的数据是否存在数据缺失,在人工检查数据表中的数据未存在数据缺失的情况下,再由用户选择下一个节点继续数据回刷。

由此可知,上述数据回刷方式的应用场景受限,即仅可以应用到针对单个节点进行数据回刷场景。若面对批量节点的数据回刷场景,则需要分多次进行,且依赖人工检测数据是否存在数据缺失,以及需要人工维护节点的回刷顺序。这样,使整个数据回刷过程费时费力,效率低。另外,该过程需要消耗大量的人力成本及计算资源。再者,由于依赖人工检测数据是否存在数据缺失,以及需要人工维护节点的回刷顺序等操作,这些操作极易出错从而导致回刷结果数据出现错误。另外,若没有管控的情况下通过回刷节点执行数据回刷,会导致占用集群计算资源,对其他正常运行的节点产生不利影响而影响服务数据(如,销售额的统计、点击量、加点之间互传数据等)的正常产出。

例如,在通过上述数据回刷方式回刷与某个数据产品模块对应的数据时,与该数据产品模块对应的节点很多,周期很长,节点之间相互依赖复杂,需要上游节点回刷完成后,由人工检查没有问题的情况下,再调起下一个节点继续数据回刷,这样,耗费大量时间且极易思绪混乱,难以保证节点回刷顺序的正确性,那么数据的准确性就更难保证了。或者,在某个关键节点上的节点代码调整后,需要回刷与下游部分数据产品相关的节点时,由于,下游节点的数目成千上万,仅是利用手工梳理难以进行。又或者,有的数据产品需要周期性的进行数据回刷,每次数据回刷都需要消耗大量的时间和精力,另外,数据回刷涉及大量节点,如果同时提交运行且没有管控,那么将占用计算平台大量的计算资源,会对该计算平台其它正常运行的节点产生不利影响,同时大量的数据回刷也会消耗大量的计算资源。

由此,为了解决上述问题,本发明实施例提供了一种数据处理方法、节点确定方法、装置、设备和介质,使得数据回刷更加简单高效,降低数据回刷导致问题的风险,提高数据回刷的工作效率,节约人力成本和计算成本,下面结合附图进行详细介绍。

图1示出本发明实施例提供的数据处理界面示意图。如图1所示,用户(如数据研发工作人员)根据数据研发的需求,在终端设备上选择与数据更新相关的回刷节点集合,该回刷节点集合中包括至少一个回刷节点(如回刷节点A、回刷节点B和回刷节点C),以便通过至少一个回刷节点进行数据回刷。

接着,终端设备可以根据确定的回刷节点,显示目标选项,以便用户根据目标选项,选择或者写入与数据回刷相关的回刷节点的配置信息(如图1中的任务名称、回刷周期、调度类型、并发度和调度时间等)。

再者,根据用户选择的配置信息确定与回刷节点具有依赖关系的目标数据表(如目标数据表X),且检测该目标数据表中与配置信息对应的第一分区是否存在缺失数据。在第一分区中的数据存在缺失的情况下,通过终端设备展示与第一分区对应的目标节点。

由此,通过用户的一次节点圈选就可以确定与用户选择的节点具有关联关系的上游节点和/或下游节点即回刷节点,有效避免了用户的重复工作。另外,本发明实施例提供的方法可以为用户提供自动确定目标节点的回刷工具,不需要人工维护节点,以提高确定回刷节点的效率,进而保证后续数据回刷的效率,节省人力成本和计算成本。

然后,在接收到用户将目标节点添加到回刷节点集合时,更新用户选择的回刷节点集合,得到新回刷节点集合;然后,通过新回刷节点集合中的新回刷节点对第一数据表中的数据进行更新,得到结果数据,以完成数据回刷。其中,第一数据表包括与新回刷节点具有依赖关系的数据表。

需要提示的是,本发明实施例中涉及的回刷节点、新回刷节点等节点均指代描述计算平台中数据分析和处理过程的基本单元,节点包含计算代码、节点依赖关系、节点调度参数等信息。目标数据表、第一数据等数据表,指代的是计算平台中的数据存储对象。第一分区,也可以称为分区表,是指在创建表时指定分区空间,即指定表内的某几个字段作为分区列;在实际应用中大部分都为分区表;。其中,分区,可以理解为分类,通过分类把不同类型的数据放到不同的目录下;分类的标准就是分区字段,可以一个,也可以多个;一般会将服务日期作为分区字段,每个服务日期分区存放相应服务日期对应的数据。

综上,本发明实施例提供的方法,适用于多数情况下批量节点进行数据回刷场景,通过终端设备自动执行确定目标数据表中与配置信息对应的第一分区是否存在缺失数据;根据与回刷节点的依赖关系确定目标节点,以自动补全回刷节点;自动进行回刷资源管控及并发控制,从而降低数据回刷人工出错的风险,降低影响计算集群中其他正常节点的风险。另外,本发明实施例中提供了一些有关配置信息的工具化支持,尽可能地减少人工投入,同时有利于减少计算资源的消耗,从而节省人力成本和计算成本。

除了应用到上述场景外,本发明实施例中的还可以用于在一些数据处理的场景,例如在城市大脑场景下,需要确定历史某些节点的过程。具体如下所示,在终端获取到与更新数据(或者,根据不同的场景有不同的功能,例如,与对外服务的数据,或者计算数据)相关的配置信息时,展示与配置信息相关的至少一个节点;接收用户在至少一个节点中选择目标节点的操作;响应于操作,将目标节点确定为回刷节点,且将回刷节点添加到回刷节点集合,以通过回刷节点集合中的回刷节点更新目标数据表中的数据,目标数据表与回刷节点具有依赖关系。或者,直接将目标节点确定为与场景相关的功能节点,例如,与计算数据相关的计算节点,或者,与对外服务的数据相关的服务节点等。基于此,下面对本发明实施例中的数据处理方法进行详细说明。其中,数据处理方法可以包括两个环节,一个是节点确定环节,另一个数据回刷的调度环节。这样,能满足多种用户场景的数据回刷,帮助用户高效安全地进行数据回刷。下面结合图2对节点确定方法进行详细说明。

图2示出本发明实施例提供的一种节点确定方法的流程示意图。如图2所示,该节点确定方法可以包括步骤210-步骤230,具体如下所示:

首先,步骤210,获取与数据更新相关的回刷节点集合,以及回刷节点集合中回刷节点的配置信息。接着,步骤220,配置信息确定目标数据表,目标数据表与回刷节点具有依赖关系。再者,步骤230,在检测到目标数据表满足第一预设条件时,展示与目标数据表对应的目标节点,以使用户将目标节点添加到回刷节点集合。

这样,通过一次节点圈选就可以确定回刷节点,有效避免了用户的重复工作。另外,该方法提供了自动确定目标节点的回刷工具,不需要人工维护节点,以提高确定回刷节点的效率,进而保证后续数据回刷的效率,节省人力成本和计算成本。

下面分别对上述步骤进行描述。

首先,涉及步骤210,在不同的应用场景下,如何获取与数据更新相关的回刷节点集合,本发明实施例根据不用的应用场景提供了下述四种方式,具体如下所示:

方式(1):根据单节点确定回刷节点集合。

其中,接收用户在计算平台中选择单节点的第一输入;响应于第一数据,根据用户选择的单节点,生成回刷节点集合。可以理解的是,该回刷节点集合中仅包括一个回刷节点。

方式(2):批量节点搜索。

其中,接收用户在计算平台中选择多个节点的第二输入,响应于第二输入,根据用户选择的多个节点,生成回刷节点集合。可以理解的是,该回刷节点集合中包括多个甚至是海量的回刷节点。

方式(3):通过起始节点和终止节点,确定中间链路节点。

其中,接收用户在终端设备显示的界面中选择起始节点和终止节点的第三输入,响应于第三输入,根据获取到的起始节点和终止节点,从计算平台中筛选出位于起始节点和终止节点之间的、与数据更新相关的回刷节点,根据回刷节点,生成回刷节点集合。

这里,用户仅需确定起始节点和终止节点,终端设备既可以根据这两个节点之间的关系,确定起始节点与终止节点之间存在的中间链路节点。由此,减少用户的查找中间链路节点的时间,以及用户操作。需要提示的是,该场景下,回刷节点集合除了包括起始节点与终止节点之间存在的中间链路节点,还可以包括起始节点和终止节点。

方式(4)根据某个节点的上游节点和/或下游节点,生成回刷节点集合。

其中,接收用户在计算平台的多个节点中根据用户需求选择第一节点的第四输入,响应于第四输入,从多个节点中筛选出第一节点的上游节点和/或下游节点;将上游节点和/或下游节点作为回刷节点;根据回刷节点,生成回刷节点集合。

这里,可以是在用户不知道第一节点的上游节点和/或下游节点的场景下,通过该方式筛选上游节点和/或下游节点,并生成回刷节点集合。这样,减少用户记录每个节点的上游节点和/或下游节点的时间,且适用于采用多个回刷节点进行数据回刷的场景,提高数据回刷效率。

需要提示的是,在从计算平台的多个节点中选择回刷节点添加到回刷节点集合的过程中,在添加了回刷节点后,还可再搜索再添加,反复进行。这里,将回刷节点添加完毕之后,终端设备可以创建回刷作业,即对回刷节点集合的抽象表示,表示数据回刷的节点范围。该回刷作业在以后的回刷中可被反复使用,避免了回刷节点重复圈选。

基于此,在确定回刷节点集合之后,在每次执行数据回刷时还需要配置一些必要信息。本发明实施例中还提供了获取回刷节点集合中回刷节点的配置信息的方式,具体如下所示:

通过终端设备向用户展示与配置信息对应的目标选项;响应于用户对目标选项的选择输入,获取与目标选项对应的配置信息,配置信息包括回刷周期、调度类型、并发度和调度时间。

其中,回刷周期为与数据更新对应的时间。回刷周期包括不连续的多个时间区间。例如,用户根据回刷数据指定要回刷哪些服务时间对应的数据。可以设置多段不连续的服务时间区间,如要回刷2***年11月至2***年12月份的数据;或者,可指定回刷周期为[2***-11月~2***-12月,2***-9月~2***-10月];再或者,用户还可根据实际情况指定只回刷每周某一天或每月某一天的数据。

调度类型用于确定数据更新的回刷形式。例如,可以选择多天并行或单天串行;如果配置为多天并行,那么不同服务日期的数据将同时执行回刷;如果配置单天串行,那么数据回刷将按照服务日期从小到大串行执行。

并发度包括在数据更新时允许同时运行的最大节点实例数。例如,配置数据更新即数据回刷时,允许同时运行的最大节点实例数;当需要更快的完成数据回刷,可将并发度设置得较大来减少整体回刷耗时。这里,节点实例是指节点实例化之后的对象,节点每次运行都将生成相应的节点实例。节点实例数,是指节点实例的个数。

调度时间为执行数据更新的时间区间。例如,配置允许数据更新执行时间区间,可以配置调度时间为10:30-23:00,此时,只有每天这个时间段才会允许回刷任务运行,其他时段不再运行回刷任务,以避免抢占其他正常计算任务的计算资源。这里,回刷任务是回刷作业实例化之后的对象,回刷作业主要定义了要回刷的回刷节点集合,回刷任务可理解为回刷节点集合的一次运行,基于回刷作业还需要附加上回刷周期、调度类型、任务并发数、优先级等配置信息后才能运行。

另外,需要说明的是,该方法中涉及获取初始的回刷节点集合的方式可以包括:

获取与更新数据相关的配置信息;展示与配置信息相关的至少一个节点;接收用户在至少一个节点中选择目标节点的操作;响应于操作,将目标节点确定为回刷节点,且将回刷节点添加到回刷节点集合,以通过回刷节点集合中的回刷节点更新目标数据表中的数据,目标数据表与回刷节点具有依赖关系。

接着,涉及步骤220,在本发明实施例中的目标数据表可以是根据配置信息直接确定的,也可是根据配置信息和回刷节点上的数据表确认。

然后,涉及步骤230,在一种可能的实施例中,在该步骤之前还可以包括:检测目标数据表是否满足第一预设条件。

进一步地,在目标数据表中确定与配置信息对应的第一分区;检测第一分区中的数据是否存在缺失数据;若第一分区中的数据存在缺失,则目标数据表满足第一预设条件,以使用户将目标节点添加到回刷节点集合。

这里,通过终端设备自动检查回刷节点代码中使用的目标数据表的相应服务回刷周期对应的分区是否存在,如果分区中的数据存在缺失,那么回刷出来的结果数据也可能为空或者错误。由此,如果分区中的数据存在缺失,可以将包括该分区的数据表对应的节点确定为目标节点,以使用户将该目标节点添加到回刷节点集合中以进行回刷任务;或者,将目标数据表使用最近一个服务回刷周期对应的分区的数据用于数据回刷。

由此,在一种可能的实施例中,基于上述方式确定的目标节点,在步骤230之后,还可以包括对数据处理中的数据回刷的调度的过程,下面集合步骤240和步骤250其过程进行详细描述,具体如下所示:

步骤240,将目标节点添加到回刷节点集合中,得到新回刷节点集合。

这里,本发明实施例中提供了两种方式得到新回刷节点集合。

方式(1)在向用户展示与目标数据表对应的目标节点之后的预设时间段内,若没有接收到用户将目标节点添加到回刷节点集合添加的操作,即可自动将目标节点添加到回刷节点集合中,以得到新回刷节点集合。

方式(2)接收用户将目标节点添加到回刷节点集合的第五输入,响应于第五数据,将目标节点添加到回刷节点集合中,得到新回刷节点集合。

步骤250,通过新回刷节点集合中的新回刷节点对第一数据表中的数据进行更新,得到结果数据。

其中,第一数据表包括与新回刷节点具有依赖关系的数据表。

这里,在一种可能的实施例中,该步骤具体可以包括:

根据配置信息,调整新回刷节点的回刷代码,得到目标回刷代码;根据目标回刷代码对第一数据表中的数据进行更新,得到结果数据。

进一步地,针对回刷节点(或者新回刷节点)的代码(或者回刷代码)可以进行一些自动化优化处理,例如,多周期合并回刷、列级回刷或者行级回刷,来达到降低风险,节约成本的目的。

如图3所示,本发明实施例中可以根据不同的方式调整新回刷节点的回刷代码,以得到目标回刷代码,具体如下所示:

场景(1):多周期合并回刷

在配置信息包括指示更新多个时间区间对应的数据时,调整回刷代码的日期分区字段,得到包括动态分区字段的目标回刷代码。

例如:对于某个回刷节点如果要回刷多个回刷周期的服务数据,该回刷节点相应代码也将执行多次,而产生多个节点实例,只是每个节点实例使用了不同的回刷周期的输入数据。对于多个回刷周期,用户可以选择采用多周期合并回刷。这样,可以调整回刷代码的日期分区字段,即将自动对原节点代码进行改写,将服务日期分区字段作为动态分区字段。由此,在得到包括动态分区字段的回刷代码的情况下,只需要执行一次节点的回刷代码,且生成一个节点实例即可完成多个回刷周期的服务数据回刷,这可以降低计算资源的消耗和运行耗时。

场景(2):列级回刷

在配置信息包括指示更新第一数据表的至少一列的数据时,调整回刷代码,得到包括至少一列的列代码的目标回刷代码。

例如:对于某些数据表只需要回刷表中部分列的数据,如新增的列或部分列数据有异常而需要回刷,用户可以选择列级回刷,这样,会根据原节点代码自动进行代码改写生成只回刷部分列数据的代码,由于只计算部分列数据,数据回刷耗时和计算资源消耗都将大大降低。

场景(3):行级回刷

其中,在配置信息包括指示更新第一数据表的至少一行的数据时,调整回刷代码,得到包括至少一行的列代码的目标回刷代码。

例如,某些情况下只需要回刷部分行的数据,如某个数据表是全量100万商家的交易统计数据,现在发现有10个商家对应的数据有问题而需要进行数据回刷,用户可以选择行级回刷,这样,根据原节点代码自动进行代码改写生成只回刷部分行数据的代码,这样参与计算的数据量将大大减少,所以同列级回刷一样回刷耗时和计算资源消耗都将大大降低。

接着,在回刷任务创建后,需要生成相应的实例资源信息及节点实例依赖关系,按照实例关系图调度执行。本发明实施例中的节点实例信息可以包括实例依赖关系和/或实例资源信息,由此,本发明实施例中分别提供了如何确定实例依赖关系和实例资源信息的方式,具体如下所示:

(1)确定实例依赖关系

获取新回刷节点实际运行产生的数据表的第一依赖关系;

根据第一依赖关系和新回刷节点中记录的第二依赖关系,确定新回刷节点的实例依赖关系。

这里,本发明实施例中可以称为依赖补全,即节点实例的依赖关系,除了回刷节点中明确定义了的依赖关系,还根据回刷节点过去30天实际运行产生的数据表的依赖关系去补充节点实例的依赖关系。

例如,对于最近N天(ND)、自然周(CW)、自然月(CM)以及依赖了当前服务日期减去2天(T-2)数据的节点通常都没有配置跨天依赖关系,这些节点实际上都需要依赖上游节点多个服务日期的数据,如果不进行节点实例关系补全,那么节点实例的执行顺序可能不符合逻辑而导致最终回刷结果数据是错误的。

(2)确定实例资源信息

获取在更新数据时运行新回刷节点的节点实例;

在运行节点实例所占用的资源满足第二预设条件时,确定节点实例所占用的资源对应的信息为实例资源信息。

这里,本发明实施例中可以称为资源管控,即按时段限定数据回刷可使用的计算资源上限,同时根据回刷任务历史资源消耗情况,进行计算资源调配。例如低消耗任务获得更多的计算资源,这样在提升效率的同时,又避免影响计算集群稳定。另外,还可以进行并发管控,即控制同时运行的节点实例,以降低对计算平台调度资源的占用当节点实例满足运行条件时提交计算平台执行,产出结果数据。

综上,本发明提供的数据处理方法,适用于多数情况下批量节点数据回刷的场景,一次节点圈选可以反复使用避免了重复工作,不需要人工维护节点回刷顺序,提供分区自动检查、多周期合并回刷、列级或者行级回刷的工具支持,从而提高了数据回刷工作的效率。另外,可以通过自动执行分区检查、自动补全回刷节点的依赖关系、自动进行回刷资源管控及并发控制,从而降低数据回刷人工出错的风险,降低影响计算集群中其他正常节点的风险。由此,本发明实施例提供了一些列的工具化支持,尽可能地减少人工投入,有利于减少计算资源的消耗,从而节省人力成本和计算成本。

基于上述节点确定方法,本发明实施例还提供可一种节点确定装置,具体可以结合图4进行说明。

图4示出本发明实施例提供的节点确定装置的结构示意图。

如图4所示,该节点确定装置40可以包括:

获取模块401,用于获取与数据更新相关的回刷节点集合,以及回刷节点集合中回刷节点的配置信息;

处理模块402,用于根据配置信息确定目标数据表,目标数据表与回刷节点具有依赖关系;

展示模块403,用于在检测到目标数据表满足第一预设条件时,展示与目标数据表对应的目标节点,以使用户将目标节点添加到回刷节点集合。

这样,通过一次节点圈选就可以确定回刷节点,有效避免了用户的重复工作。另外,该方法提供了自动确定目标节点的回刷工具,不需要人工维护节点,以提高确定回刷节点的效率,进而保证后续数据回刷的效率,节省人力成本和计算成本。

在一种可能的实施例中,获取模块401具体可以用于,获取多个节点中的起始节点和终止节点;根据起始节点和终止节点,筛选出位于起始节点和终止节点之间的、与数据更新相关的回刷节点;根据回刷节点,生成回刷节点集合。

在另一种可能的实施例中,获取模块401具体可以用于,获取多个节点中的第一节点;从多个节点中筛选出第一节点的上游节点和/或下游节点;将上游节点和/或下游节点作为回刷节点;根据回刷节点,生成回刷节点集合。

另外,本发明实施例中的获取模块401还可以用于,通过展示模块403展示与配置信息对应的目标选项;响应于用户对目标选项的选择输入,获取与目标选项对应的配置信息,配置信息包括回刷周期、调度类型、并发度和调度时间。

其中,回刷周期为与数据更新对应的时间,回刷周期包括不连续的多个时间区间;调度类型用于确定数据更新的回刷形式;并发度包括在数据更新时允许同时运行的最大节点实例数;调度时间为执行数据更新的时间区间。

另外,本发明实施例中的节点确定装置40还可以包括检测模块404,用于检测目标数据表是否满足第一预设条件。

其中,检测模块404具体可以用于,在目标数据表中确定与配置信息对应的第一分区;检测第一分区中的数据是否存在缺失数据;若第一分区中的数据存在缺失,则目标数据表满足第一预设条件。

本发明实施例中的处理模块402还可以用于,将目标节点添加到回刷节点集合中,得到新回刷节点集合;通过新回刷节点集合中的新回刷节点对第一数据表中的数据进行更新,得到结果数据;其中,第一数据表包括与新回刷节点具有依赖关系的数据表。

在一种可能的实施例中,处理模块402具体可以用于,根据配置信息,调整新回刷节点的回刷代码,得到目标回刷代码;根据目标回刷代码对第一数据表中的数据进行更新,得到结果数据。

进一步地,处理模块402具体可以用于,在配置信息包括指示更新多个时间区间对应的数据时,调整回刷代码的日期分区字段,得到包括动态分区字段的目标回刷代码;或者,在配置信息包括指示更新第一数据表的至少一列的数据时,调整回刷代码,得到包括至少一列的列代码的目标回刷代码;或者,在配置信息包括指示更新第一数据表的至少一行的数据时,调整回刷代码,得到包括至少一行的列代码的目标回刷代码。

在另一种可能的实施例中,处理模块402具体可以用于,确定新回刷节点的节点实例信息;其中,根据目标回刷代码和节点实例信息对第一数据表中的数据进行更新,得到结果数据。

进一步地,在节点实例信息包括实例依赖关系的情况下,处理模块402具体可以用于,获取新回刷节点实际运行产生的数据表的第一依赖关系;根据第一依赖关系和新回刷节点中记录的第二依赖关系,确定新回刷节点的实例依赖关系。

在节点实例信息包括实例资源信息的情况下,处理模块402具体可以用于,获取在更新数据时运行新回刷节点的节点实例;在运行节点实例所占用的资源满足第二预设条件时,确定节点实例所占用的资源对应的信息为实例资源信息。

另外,基于上述数据处理方法,本发明实施例还提供可一种数据处理装置,具体可以结合图5进行说明。图5示出本发明实施例提供的数据处理装置的结构示意图。

如图5所示,该数据处理装置50可以包括:

获取模块501,用于获取与数据更新相关的回刷节点集合,以及回刷节点集合中回刷节点的配置信息。

处理模块502,用于根据配置信息确定目标数据表,目标数据表与回刷节点具有依赖关系。

展示模块503,用于在检测到目标数据表满足第一预设条件时,展示与目标数据表对应的目标节点。

更新模块504,用于在将目标节点添加到回刷节点集合时,得到新回刷节点集合。

处理模块502还用于,通过新回刷节点集合中的新回刷节点对第一数据表中的数据进行更新,得到结果数据;其中,第一数据表包括与新回刷节点具有依赖关系的数据表。

基于上述方法,本发明实施例还提供可一种节点确定装置,具体可以结合图6进行说明。图6示出本发明实施例提供的节点确定装置的结构示意图。

如图6所示,该节点确定装置60可以包括:

获取模块601,用于获取与更新数据相关的配置信息;

显示模块602,用于展示与配置信息相关的至少一个节点;

接收模块603,用于接收用户在至少一个节点中选择目标节点的操作;

处理模块604,用于响应于操作,将目标节点确定为回刷节点,且将回刷节点添加到回刷节点集合,以通过回刷节点集合中的回刷节点更新目标数据表中的数据,目标数据表与回刷节点具有依赖关系。由此,通过获取与数据更新相关的回刷节点集合,以及回刷节点集合中回刷节点的配置信息;接着,根据配置信息确定与回刷节点具有依赖关系的目标数据表;然后,在自动检测目标数据表在满足第一预设时,展示与目标数据表对应的目标节点,以使用户将目标节点添加到回刷节点集合。这样,通过一次节点圈选就可以确定回刷节点,有效避免了用户的重复工作。另外,该方法提供了自动确定目标节点的回刷工具,不需要人工维护节点,以提高确定回刷节点的效率,进而保证后续数据回刷的效率,节省人力成本和计算成本。

根据本发明实施例的数据处理装置、节点确定装置、以及结合图1至图3描述的本发明实施例的数据处理方法和节点确定方法可以由计算设备来实现。该计算设备如图7所示,可以包括处理器701以及存储有计算机程序指令的存储器702。

具体地,上述处理器701可以包括中央处理器(CPU),或者特定集成电路(application specific integrated circuit,ASIC),或者可以被配置成实施本申请实施例的一个或多个集成电路。

存储器702可以包括用于数据或指令的大容量存储器。举例来说而非限制,存储器702可包括硬盘驱动器(hard disk drive,HDD)、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(universal serial bus,USB)驱动器或者两个及其以上这些的组合。在合适的情况下,存储器702可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器702可在综合网关设备的内部或外部。在特定实施例中,存储器702是非易失性固态存储器。在特定实施例中,存储器702包括只读存储器(ROM)。在合适的情况下,该ROM可以是掩模编程的ROM、可编程ROM(PROM)、可擦除PROM(EPROM)、电可擦除PROM(EEPROM)、电可改写ROM(EAROM)或闪存,或者两个或及其以上这些的组合。

处理器701通过读取并执行存储器702中存储的计算机程序指令,以实现上述实施例中的数据处理方法或者节点确定方法。

收发器703,主要用于实现本发明实施例中各装置或者与其他设备中的通信。

在一个示例中,该设备还可包括总线704。其中,如图7所示,处理器701、存储器702和收发器703通过总线704连接并完成相互间的通信。

总线704包括硬件、软件或两者。举例来说而非限制,总线可包括加速图形端口(AGP)或其他图形总线、增强工业标准架构(EISA)总线、前端总线(FSB)、超传输(HT)互连、工业标准架构(ISA)总线、无限带宽互连、低引脚数(LPC)总线、存储器总线、多信道架构(MCA)总线、外围组件互连(PCI)总线、PCI-Express(PCI-X)总线、串行高级技术附件(SATA)总线、视频电子标准协会局部(VLB)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线703可包括一个或多个总线。尽管本申请实施例描述和示出了特定的总线,但本申请考虑任何合适的总线或互连。

在一种可能的实施例中,本发明实施例提供一种计算机可读存储介质,其上存储有计算机程序,当计算机程序在计算机中执行时,令计算机执行本发明实施例的数据处理方法或者节点确定方法。

需要明确的是,本发明并不局限于上文实施例中所描述并在图中示出的特定配置和处理。为了描述的方便和简洁,这里省略了对已知方法的详细描述,并且上述描述的系统、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

本领域的技术人员可以清楚地了解到,本发明的方法过程并不限于所描述和示出的具体步骤,任何熟悉本技术领域的技术人员在领会本发明的精神后,在本发明揭露的技术范围内作出各种改变、修改和添加,或者等效替换以及改变步骤之间的顺序,这些修改或替换都应涵盖在本发明的保护范围之内。

20页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:恢复用户数据的方法、装置、存储介质及终端

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!