发明内容
有鉴于此,本公开实施例提出了一种数据预警方法、装置、存储介质及电子设备,用以解决现有技术的如下问题:统计报表的出表时间相对于任务执行完成时间都是存在较大的时间延迟的,业务方知晓问题的时间较晚,导致分析问题原因的时间会更晚。
一方面,本公开实施例提出了一种数据预警方法,包括:通过广度优先遍历方式确定任务中上游数据仓库表和对应的下游数据仓库表之间的生产关系;获取所述上游数据仓库表中当前的生产数据;在所述当前的生产数据不符合预定生产数据要求时,根据所述生产关系对与所述上游数据仓库对应的下游数据仓库表发出预警消息。
在一些实施例中,在所述生产数据为数据量的情况下,所述在所述当前的生产数据不符合预定生产数据要求时,根据所述生产关系对与所述上游数据仓库对应的所述下游数据仓库表发出预警消息,包括:判断所述数据量是否处于预定数据量范围内;当所述数据量不处于所述预定数据量范围内的情况下,根据所述生产关系对与所述上游数据仓库对应的下游数据仓库表发出所述数据量存在异常的预警消息。
在一些实施例中,在所述生产数据为数据产出时间的情况下,所述在所述当前的生产数据不符合预定生产数据要求时,根据所述生产关系对与所述上游数据仓库对应的下游数据仓库表发出预警消息,包括:判断所述数据产出时间是否超过预定产出时间;当所述数据产出时间超过所述预定产出时间的情况下,根据所述生产关系对与所述上游数据仓库对应的下游数据仓库表发出所述数据产出时间存在延迟的预警消息。
在一些实施例中,在所述通过广度优先遍历方式确定任务中上游数据仓库表和对应的下游数据仓库表之间的生产关系之后,还包括:建立与各个数据仓库表分别对应的标记;根据所述数据仓库表之间的生产关系和所述标记构建生产关系图。
另一方面,本公开实施例提出了一种数据预警装置,包括:确定模块,配置为通过广度优先遍历方式确定任务中上游数据仓库表和对应的下游数据仓库表之间的生产关系;获取模块,配置为获取所述上游数据仓库表中当前的生产数据;预警模块,配置为在所述当前的生产数据不符合预定生产数据要求时,根据所述生产关系对与所述上游数据仓库对应的所述下游数据仓库表发出预警消息。
在一些实施例中,所述预警模块,具体配置为:在所述生产数据为数据量的情况下,判断所述数据量是否处于预定数据量范围内;当所述数据量不处于所述预定数据量范围内的情况下,根据所述生产关系对与所述上游数据仓库对应的下游数据仓库表发出所述数据量存在异常的预警消息。
在一些实施例中,所述预警模块,具体配置为:在所述生产数据为数据产出时间的情况下,判断所述数据产出时间是否超过预定产出时间;当所述数据产出时间超过所述预定产出时间时,根据所述生产关系对与所述上游数据仓库对应的下游数据仓库表发出所述数据产出时间存在延迟的预警消息。
在一些实施例中,还包括:构建模块,配置为建立与各个数据仓库表分别对应的标记;根据所述数据仓库表之间的生产关系和所述标记构建生产关系图。
另一方面,本公开实施例提出了一种存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现本公开任意实施例提供的方法。
另一方面,本公开实施例提出了一种电子设备,至少包括存储器、处理器,所述存储器上存储有计算机程序,所述处理器在执行所述存储器上的计算机程序时实现本公开任意实施例提供的方法。
本公开实施例先确定了一个任务中上游数据仓库表和对应的下游数据仓库表之间的关系,在上游数据仓库表中当前的生产数据不符合预期时,利用已经确定的生产关系向该上游数据仓库表对应的下游数据仓库表发出预警,则在下游数据仓库表还没有生产数据产出时,就可以提前做到预警,当下游数据仓库表产出的生产数据真的存在问题时,可以快速的知晓是哪些上游数据仓库表导致的,业务方可以及时知晓问题所在,及时分析问题原因,用户体验较好。
具体实施方式
为了使得本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例的附图,对本公开实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本公开的一部分实施例,而不是全部的实施例。基于所描述的本公开的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
除非另外定义,本公开使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
为了保持本公开实施例的以下说明清楚且简明,本公开省略了已知功能和已知部件的详细说明。
本公开第一实施例提供了一种数据预警方法,该方法的流程如图1所示,包括步骤S101至S103:
S101,通过广度优先遍历方式确定任务中上游数据仓库表和对应的下游数据仓库表之间的生产关系。
其中,广度优先遍历方式为搜索完某一层级上的所有节点之后再搜索某一层级的下一层级上的所有节点。
各个任务都是由多个数据仓库表构成,即通过多个数据仓库表最终得到一个任务最底端的数据仓库表对应的数据,例如,数据仓库表11为数据仓库表21的上游数据仓库表,数据仓库表21和数据仓库表31为数据仓库表41的上游数据仓库表,数据仓库表41为任务最底端的数据仓库表。
本公开实施例通过广度优先遍历方式对任务中的生产关系进行获取,具体实现时,在执行任务的过程中确定上游数据仓库表和对应的下游数据仓库表之间的生产关系可以是获取任务的代码,在通过预定解析程序解析代码的过程中确定上游数据仓库表和对应的下游数据仓库表之间的生产关系。
S102,获取上游数据仓库表中当前的生产数据。
上述生产数据可以是得到的数据量,也可以是得到的数据产出时间。
S103,在当前的生产数据不符合预定生产数据要求时,根据生产关系对与上游数据仓库对应的下游数据仓库表发出预警消息。
由于已经知晓任务中上游数据仓库表和对应的下游数据仓库表的生产关系,因此,能够根据生产关系确定该上游数据仓库表对应的下游数据仓库表是哪些,进而对下游数据仓库表还未产出的生产数据发出预警,以提醒用户下游数据仓库表可能会存在问题。
本公开实施例先确定了一个任务中上游数据仓库表和对应的下游数据仓库表之间的关系,在上游数据仓库表中当前的生产数据不符合预期时,利用已经确定的生产关系向该上游数据仓库表对应的下游数据仓库表发出预警,则在下游数据仓库表还没有生产数据产出时,就可以提前做到预警,当下游数据仓库表产出的生产数据真的存在问题时,可以快速的知晓是哪些上游数据仓库表导致的,业务方可以及时知晓问题所在,及时分析问题原因,用户体验较好。
本公开第二实施例提供了一种数据预警方法,该方法的流程如图2所示,包括步骤S201至S205:
S201,通过广度优先遍历方式确定任务中上游数据仓库表和对应的下游数据仓库表之间的生产关系。
各个任务都是由多个数据仓库表构成,即通过多个数据仓库表最终得到一个任务最底端的数据仓库表对应的数据,例如,数据仓库表11为数据仓库表21的上游数据仓库表,数据仓库表21和数据仓库表31为数据仓库表41的上游数据仓库表,数据仓库表41为任务最底端的数据仓库表。
本公开实施例通过广度优先遍历方式对任务中的生产关系进行获取,具体实现时,在执行任务的过程中确定上游数据仓库表和对应的下游数据仓库表之间的生产关系可以是获取任务的代码,在通过预定解析程序解析代码的过程中确定上游数据仓库表和对应的下游数据仓库表之间的生产关系。
S202,建立与各个数据仓库表分别对应的标记。
例如,数据仓库表对应的标记为圆形图案,圆形图案中间的空白处可以填写数据仓库表的表名。
S203,根据各个数据仓库表之间的生产关系和标记构建生产关系图。
例如,数据仓库表11为数据仓库表21的上游数据仓库表,数据仓库表21、数据仓库表31和数据仓库表41为数据仓库表51的上游数据仓库表,则其生产关系图可以如图3所示。通过该生产关系图,可以更加直观的看清各个数据仓库表之间的关系,即使任务内容较为复杂,也可以清楚的知晓各个数据仓库表之间的关系。该生产关系图可以通过可视化的方式直接显示给用户。
S204,获取上游数据仓库表中当前的生产数据。
上述生产数据可以是得到的数据量,也可以是得到的数据产出时间。
S205,在当前的生产数据不符合预定生产数据要求时,根据生产关系图对与上游数据仓库对应的下游数据仓库表发出预警消息。
由于已经知晓任务中上游数据仓库表和对应的下游数据仓库表的生产关系,因此,能够根据生产关系确定该上游数据仓库表对应的下游数据仓库表是哪些,进而对下游数据仓库表还未产出的生产数据发出预警,以提醒用户下游数据仓库表可能会存在问题。
具体实现时,在生产数据为数据量的情况下,可以判断数据量是否处于预定数据量范围内;当数据量不处于预定数据量范围内的情况下,根据生产关系对与上游数据仓库对应的下游数据仓库表发出数据量存在异常的预警消息。在生产数据为数据产出时间的情况下,判断数据产出时间是否超过预定产出时间;当数据产出时间超过预定产出时间的情况下,根据生产关系对与上游数据仓库对应的下游数据仓库表的发出数据产出时间存在延迟的预警消息。通过该过程,无论数据量还是产出时间出现问题,都可以很好的进行预警。
本公开实施例先确定了一个任务中上游数据仓库表和对应的下游数据仓库表之间的关系,在上游数据仓库表中当前的生产数据不符合预期时,利用已经确定的生产关系向该上游数据仓库表对应的下游数据仓库表发出预警,则在下游数据仓库表还没有生产数据产出时,就可以提前做到预警,当下游数据仓库表产出的生产数据真的存在问题时,可以快速的知晓是哪些上游数据仓库表导致的,业务方可以及时知晓问题所在,及时分析问题原因,用户体验较好。
本公开第三实施例提供了一种数据预警装置,该装置的结构示意如图4所示,包括:
确定模块10,用于通过广度优先遍历方式确定任务中上游数据仓库表和对应的下游数据仓库表之间的生产关系;获取模块20,与确定模块10耦合,用于获取上游数据仓库表中当前的生产数据;预警模块30,与获取模块20耦合,用于在当前的生产数据不符合预定生产数据要求时,根据生产关系对与上游数据仓库对应的下游数据仓库表发出预警消息。
各个任务都是由多个数据仓库表构成,即通过多个数据仓库表最终得到一个任务最底端的数据仓库表对应的数据,例如,数据仓库表11为数据仓库表21的上游数据仓库表,数据仓库表21和数据仓库表31为数据仓库表41的上游数据仓库表,数据仓库表41为任务最底端的数据仓库表。
本公开实施例通过广度优先遍历方式对任务中的生产关系进行获取,具体实现时,在执行任务的过程中确定上游数据仓库表和对应的下游数据仓库表之间的生产关系可以是获取任务的代码,在通过预定解析程序解析代码的过程中确定上游数据仓库表和对应的下游数据仓库表之间的生产关系。
上述生产数据可以是得到的数据量,也可以是得到的数据产出时间。
相对应的,预警模块具体可以用于:在生产数据为数据量的情况下,判断数据量是否超过预定数据量范围;当数据量不处于预定数据量范围内的情况下,根据生产关系对与上游数据仓库对应的下游数据仓库表发出数据量存在异常的预警消息。预警模块具体还可以用于:在生产数据为数据产出时间的情况下,判断数据产出时间是否超过预定产出时间;当数据产出时间超过预定产出时间时,根据生产关系对与上游数据仓库对应的下游数据仓库表发出数据产出时间存在延迟的预警消息。
由于已经知晓任务中上游数据仓库表和对应的下游数据仓库表的生产关系,因此,能够根据生产关系确定该上游数据仓库表对应的下游数据仓库表是哪些,进而对下游数据仓库表还未产出的生产数据发出预警,以提醒用户下游数据仓库表可能会存在问题。
上述装置还可以包括:构建模块,与确定模块和获取模块耦合,用于建立与各个数据仓库表分别对应的标记;根据生产关系和标记构建生产关系图。
例如,数据仓库表对应的标记为方形图案,方形图案中间的空白处可以填写数据仓库表的表名。数据仓库表11和数据仓库表12为数据仓库表21的上游数据仓库表,数据仓库表21、数据仓库表31和数据仓库表41为数据仓库表51的上游数据仓库表,则其生产关系图可以如图5所示,在该生产关系图中,并没有箭头示意生产关系方向,而是默认由上至下的上下游关系,下游数据仓库表的方形长度至少等于其所有上游数据仓库表的长度。通过该生产关系图,可以更加直观的看清各个数据仓库表之间的关系,即使任务内容较为复杂,也可以清楚的知晓各个数据仓库表之间的关系。该生产关系图可以通过可视化的方式直接显示给用户。
本公开实施例先确定了一个任务中上游数据仓库表和对应的下游数据仓库表之间的关系,在上游数据仓库表中当前的生产数据不符合预期时,利用已经确定的生产关系向该上游数据仓库表对应的下游数据仓库表发出预警,则在下游数据仓库表还没有生产数据产出时,就可以提前做到预警,当下游数据仓库表产出的生产数据真的存在问题时,可以快速的知晓是哪些上游数据仓库表导致的,业务方可以及时知晓问题所在,及时分析问题原因,用户体验较好。
本公开第四实施例提供了一种存储介质,存储有计算机程序,该计算机程序被处理器执行时实现本公开任意实施例提供的方法,包括如下步骤S1至S3:
S1,通过广度优先遍历方式确定任务中上游数据仓库表和对应的下游数据仓库表之间的生产关系;
S2,获取上游数据仓库表中当前的生产数据;
S3,在当前的生产数据不符合预定生产数据要求时,根据生产关系对与上游数据仓库对应的下游数据仓库表发出预警消息。
计算机程序被处理器执行在当前的生产数据不符合预定生产数据要求时,根据生产关系对与上游数据仓库对应的下游数据仓库表发出预警消息的步骤时,具体被处理器执行如下步骤:在生产数据为数据量的情况下,判断数据量是否处于预定数据量范围内;当数据量不处于预定数据量范围内的情况下,根据生产关系对与上游数据仓库对应的下游数据仓库表发出数据量存在异常的预警消息。
计算机程序被处理器执行在当前的生产数据不符合预定生产数据要求时,根据生产关系对与上游数据仓库对应的下游数据仓库表发出预警消息的步骤时,具体被处理器执行如下步骤:在生产数据为数据产出时间的情况下,判断数据产出时间是否超过预定产出时间;当数据产出时间超过预定产出时间的情况下,根据生产关系对于上游数据仓库对应的下游数据仓库表发出数据产出时间存在延迟的预警消息。
计算机程序被处理器执行在通过广度优先遍历方式确定任务中上游数据仓库表和对应的下游数据仓库表之间的生产关系的步骤之后,还可以被处理器执行如下步骤:建立与各个数据仓库表分别对应的标记;根据各个数据仓库表之间的生产关系和标记构建生产关系图。
本公开实施例先确定了一个任务中上游数据仓库表和对应的下游数据仓库表之间的关系,在上游数据仓库表中当前的生产数据不符合预期时,利用已经确定的生产关系向该上游数据仓库表对应的下游数据仓库表发出预警,则在下游数据仓库表还没有生产数据产出时,就可以提前做到预警,当下游数据仓库表产出的生产数据真的存在问题时,可以快速的知晓是哪些上游数据仓库表导致的,业务方可以及时知晓问题所在,及时分析问题原因,用户体验较好。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行上述实施例记载的方法步骤。可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。显然,本领域的技术人员应该明白,上述的本公开的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本公开不限制于任何特定的硬件和软件结合。
本公开第五实施例提供了一种电子设备,如图6所示,该电子设备至少包括存储器901和处理器902,存储器901上存储有计算机程序,处理器902在执行存储器901上的计算机程序时实现本公开任意实施例提供的方法,示例性的,计算机程序步骤如下S11至S13:
S11,通过广度优先遍历方式确定任务中上游数据仓库表和对应的下游数据仓库表之间的生产关系;
S12,获取上游数据仓库表中当前的生产数据;
S13,在当前的生产数据不符合预定生产数据要求时,根据生产关系对与上游数据仓库对应的下游数据仓库表发出预警消息。
处理器902在执行存储器901上存储的在当前的生产数据不符合预定生产数据要求时,根据生产关系对与上游数据仓库对应的下游数据仓库表发出预警消息的计算机程序时,具体可以执行如下计算机程序:在生产数据为数据量的情况下,判断数据量是否处于预定数据量范围内;当数据量不处于预定数据量范围内的情况下,根据生产关系对与上游数据仓库对应的下游数据仓库表发出数据量存在异常的预警消息。
处理器902在执行存储器901上存储的在当前的生产数据不符合预定生产数据要求时,根据生产关系对与上游数据仓库对应的下游数据仓库表发出预警消息的计算机程序时,具体可以执行如下计算机程序:在生产数据为数据产出时间的情况下,判断数据产出时间是否超过预定产出时间;当数据产出时间超过预定产出时间的情况下,根据生产关系对与上游数据仓库对应的下游数据仓库表发出数据产出时间存在延迟的预警消息。
处理器902在执行存储器901上存储的在通过广度优先遍历方式确定任务中上游数据仓库表和对应的下游数据仓库表之间的生产关系的计算机程序之后,还可以执行如下计算机程序:建立与各个数据仓库表分别对应的标记;根据各个数据仓库表之间的生产关系和标记构建生产关系图。
本公开实施例先确定了一个任务中上游数据仓库表和对应的下游数据仓库表之间的关系,在上游数据仓库表中当前的生产数据不符合预期时,利用已经确定的生产关系向该上游数据仓库表对应的下游数据仓库表发出预警,则在下游数据仓库表还没有生产数据产出时,就可以提前做到预警,当下游数据仓库表产出的生产数据真的存在问题时,可以快速的知晓是哪些上游数据仓库表导致的,业务方可以及时知晓问题所在,及时分析问题原因,用户体验较好。
此外,尽管已经在本文中描述了示例性实施例,其范围包括任何和所有基于本公开的具有等同元件、修改、省略、组合(例如,各种实施例交叉的方案)、改编或改变的实施例。权利要求书中的元件将被基于权利要求中采用的语言宽泛地解释,并不限于在本说明书中或本申请的实施期间所描述的示例,其示例将被解释为非排他性的。因此,本说明书和示例旨在仅被认为是示例,真正的范围和精神由以下权利要求以及其等同物的全部范围所指示。
以上描述旨在是说明性的而不是限制性的。例如,上述示例(或其一个或更多方案)可以彼此组合使用。例如本领域普通技术人员在阅读上述描述时可以使用其它实施例。另外,在上述具体实施方式中,各种特征可以被分组在一起以简单化本公开。这不应解释为一种不要求保护的公开的特征对于任一权利要求是必要的意图。相反,本公开的主题可以少于特定的公开的实施例的全部特征。从而,以下权利要求书作为示例或实施例在此并入具体实施方式中,其中每个权利要求独立地作为单独的实施例,并且考虑这些实施例可以以各种组合或排列彼此组合。本公开的范围应参照所附权利要求以及这些权利要求赋权的等同形式的全部范围来确定。
以上对本公开多个实施例进行了详细说明,但本公开不限于这些具体的实施例,本领域技术人员在本公开构思的基础上,能够做出多种变型和修改实施例,这些变型和修改都应落入本公开所要求保护的范围之内。