具体实施方式
下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例。相反,提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。
需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
下面将参考附图并结合实施例来详细说明本公开。
图1是本公开的一些实施例的数据异常报警方法的一个应用场景的示意图。
在图1的应用场景中,首先,计算设备101可以获取物品信息表集合102。然后,响应于物品信息表集合102中存在满足数据完整性异常条件的物品信息表,计算设备101可以根据物品信息表集合102中满足数据完整性异常条件的物品信息表,生成数据完整性异常表103。之后,计算设备101可以响应于物品信息表集合102中存在满足数据一致性异常条件的物品信息表,根据物品信息表集合102中满足数据一致性异常条件的物品信息表,生成数据一致性异常表104。其次,计算设备101可以响应于物品信息表集合102中存在满足率值异常条件的物品信息表,根据物品信息表集合102中满足率值异常条件的物品信息表,生成率值异常表105。然后,计算设备101可以分别根据数据完整性异常表103、数据一致性异常表104和率值异常表105,生成完整性异常报警信息106、一致性异常报警信息107和率值异常报警信息108。最后,计算设备101可以将完整性异常报警信息106、一致性异常报警信息107和率值异常报警信息108发送至相关联的用户终端109,使得用户终端109展示完整性异常报警信息106、一致性异常报警信息107和率值异常报警信息108。
需要说明的是,上述计算设备101可以是硬件,也可以是软件。当计算设备为硬件时,可以实现成多个服务器或终端设备组成的分布式集群,也可以实现成单个服务器或单个终端设备。当计算设备体现为软件时,可以安装在上述所列举的硬件设备中。其可以实现成例如用来提供分布式服务的多个软件或软件模块,也可以实现成单个软件或软件模块。在此不做具体限定。
应该理解,图1中的计算设备的数目仅仅是示意性的。根据实现需要,可以具有任意数目的计算设备。
继续参考图2,示出了根据本公开的数据异常报警方法的一些实施例的流程200。该数据异常报警方法,包括以下步骤:
步骤201,获取物品信息表集合。
在一些实施例中,数据异常报警方法的执行主体(如图1所示的计算设备101)可以通过有线连接方式或无线连接方式从终端获取物品信息表集合。上述物品信息表集合中的物品信息表可以为包含物品信息的明细表。上述物品信息表可以包括但不限于:表字段名集合、对应上述表字段名集合中各个表字段名的各个表字段值、杂项维名、对应上述杂项维名的各个杂项维值。上述表名可以为上述物品信息表的表名。上述表字段名集合可以为上述物品信息表包括的各个表字段的表字段名的集合。上述杂项维名可以为上述物品信息表包括的杂项维的名称。上述杂项维可以为上述物品信息表包括的特定的表字段。上述各个杂项维值可以为上述杂项维名对应的各个表字段值。例如,上述物品信息表可以为物流表、订单表。上述物流表可以为包含物品物流信息的表。上述物品物流信息可以包括但不限于:物品标识、物品重量、物品体积、发货地址、收货地址。上述物品标识可以唯一标识物品。上述订单表可以为包含物品订单信息的表。上述物品订单信息可以包括但不限于:物品标识、订单编号、物品数量、物品单位价值、订单总价值。上述订单编号可以唯一标识订单。上述物品单位价值可以为获取单件物品所需支付的价值(例如,单价)。上述订单总价值可以为支付订单所需的总价值(例如,订单总价)。需要指出的是,上述无线连接方式可以包括但不限于3G/4G连接、WiFi连接、蓝牙连接、WiMAX连接、Zigbee连接、UWB(ultra wideband)连接、以及其他现在已知或将来开发的无线连接方式。
在一些实施例的一些可选的实现方式中,第一步,上述执行主体可以基于预先存储的原始物品信息表集合中的每个原始物品信息表,生成物品信息虚拟表,得到物品信息虚拟表集合。其中,上述物品信息虚拟表包括上述原始物品信息表的元数据信息。上述元数据信息可以包括但不限于:表名、各个表字段的字段名和数据类型、表负责人姓名、杂项维名、杂项维对应的杂项维值。实践中,首先,上述执行主体可以创建物品信息虚拟空表。然后,可以从预先存储上述原始物品信息表集合的终端提取上述原始物品信息表的元数据信息,并将上述元数据信息写入上述物品信息虚拟空表,得到物品信息虚拟表。第二步,上述执行主体可以获取物品信息虚拟表集合中的每个物品信息虚拟表的表状态信息。上述表状态信息可以为表征上述物品信息虚拟表的表状态的信息。上述表状态可以包括但不限于:待上线状态、已上线状态、已驳回状态、审批中状态、已下线状态。第三步,上述执行主体可以将物品信息虚拟表集合中对应的表状态信息表征已上线状态的物品信息虚拟表对应的原始物品信息表作为物品信息表,得到物品信息表集合。
步骤202,响应于物品信息表集合中存在满足数据完整性异常条件的物品信息表,根据物品信息表集合中满足数据完整性异常条件的物品信息表,生成数据完整性异常表。
在一些实施例中,上述执行主体可以响应于物品信息表集合中存在满足数据完整性异常条件的物品信息表,根据物品信息表集合中满足数据完整性异常条件的物品信息表,生成数据完整性异常表。其中,上述数据完整性异常条件可以为“物品信息表中的表字段值为0”。实践中,首先,上述执行主体可以从上述物品信息表集合中选择满足上述数据完整性异常条件的物品信息表作为完整性备选物品信息表,得到完整性备选物品信息表集合。然后,可以创建数据完整性异常空表。之后,可以将上述完整性备选物品信息表集合中各个完整性备选物品信息表的表名、表负责人姓名和表字段值为0的表字段名写入上述数据完整性异常空表,得到数据完整性异常表。由此,得到的数据完整性异常表中记录了物品信息表集合中满足数据完整性异常条件的物品信息表的相关信息。
在一些实施例的一些可选的实现方式中,第一步,上述执行主体可以响应于物品信息表集合中存在表字段值满足第一数据完整性异常条件的物品信息表,根据满足第一数据完整性异常条件的物品信息表,生成第一数据完整性异常表。其中,第一数据完整性异常条件可以为表字段值表征空值。可以理解为,表字段值为NULL值或空值。实践中,首先,上述执行主体可以从上述物品信息表集合中选择满足上述第一数据完整性异常条件的物品信息表作为第一备选物品信息表,得到第一备选物品信息表集合。然后,可以创建第一数据完整性异常空表。之后,可以将上述第一备选物品信息表集合中各个第一备选物品信息表的表名、表负责人姓名和表字段值为NULL值或空值的表字段名写入上述第一数据完整性异常空表,得到第一数据完整性异常表。由此,得到的第一数据完整性异常表记录了存在表字段值为NULL值或空值的各个物品信息表的相关信息。
第二步,上述执行主体可以获取物品信息表集合中各个物品信息表对应的表字段数。上述表字段数可以为物品信息表包括的表字段的个数。实践中,上述执行主体可以利用Presto引擎获取物品信息表集合中各个物品信息表对应的表字段数。
第三步,上述执行主体可以响应于物品信息表集合中存在对应的表字段数满足第二数据完整性异常条件的物品信息表,根据满足第二数据完整性异常条件的物品信息表,生成第二数据完整性异常表。其中,第二数据完整性异常条件可以为表字段数与物品信息表对应的物品信息虚拟表所包括的表字段名的数量不同。实践中,首先,上述执行主体可以从上述物品信息表集合中选择满足上述第二数据完整性异常条件的物品信息表作为第二备选物品信息表,得到第二备选物品信息表集合。然后,可以创建第二数据完整性异常空表。之后,可以将上述第二备选物品信息表集合中各个第二备选物品信息表的表名和表负责人姓名写入上述第二数据完整性异常空表,得到第二数据完整性异常表。由此,得到的第二数据完整性异常表记录了表字段名的数量存在异常现象的物品信息表的相关信息。
第四步,上述执行主体可以获取物品信息表集合中每个物品信息表对应的杂项维值集合。上述杂项维值可以为杂项维对应的杂项维值。上述杂项维可以为特定的字段。实践中,上述执行主体可以利用Presto引擎获取物品信息表集合中每个物品信息表对应的杂项维值集合。
第五步,上述执行主体可以响应于物品信息表集合中存在对应的去重后的杂项维值集合满足第三数据完整性异常条件的物品信息表,根据满足第三数据完整性异常条件的物品信息表,生成第三数据完整性异常表。其中,第三数据完整性异常条件可以为物品信息表对应的物品信息虚拟表所包括的杂项维值中不存在去重后的杂项维值集合所包括的杂项维值。实践中,首先,上述执行主体可以从上述物品信息表集合中选择满足上述第三数据完整性异常条件的物品信息表作为第三备选物品信息表,得到第三备选物品信息表集合。然后,可以创建第三数据完整性异常空表。之后,可以将上述第三备选物品信息表集合中各个第三备选物品信息表的表名、表负责人姓名和杂项维名写入上述第三数据完整性异常空表,得到第三数据完整性异常表。由此,得到的第三数据完整性异常表记录了杂项维值存在异常现象的物品信息表的相关信息。
步骤203,响应于物品信息表集合中存在满足数据一致性异常条件的物品信息表,根据物品信息表集合中满足数据一致性异常条件的物品信息表,生成数据一致性异常表。
在一些实施例中,上述执行主体可以响应于物品信息表集合中存在满足数据一致性异常条件的物品信息表,根据物品信息表集合中满足数据一致性异常条件的物品信息表,生成数据一致性异常表。上述数据一致性异常条件可以为物品信息表中存在相同的元组。上述元组可以为物品信息表包括的行。实践中,首先,上述执行主体可以从上述物品信息表集合中选择满足上述数据一致性异常条件的物品信息表作为一致性备选物品信息表,得到一致性备选物品信息表集合。然后,可以创建数据一致性异常空表。之后,可以将上述一致性备选物品信息表集合中各个一致性备选物品信息表的表名和表负责人姓名写入上述数据一致性异常空表,得到数据一致性异常表。由此,得到的数据一致性异常表中记录了物品信息表集合中满足数据一致性异常条件的物品信息表的相关信息。
在一些实施例的一些可选的实现方式中,第一步,上述执行主体可以响应于物品信息表集合中存在包括的表字段的数据类型满足第一数据一致性异常条件的物品信息表,根据满足第一数据一致性异常条件的物品信息表,生成第一数据一致性异常表。其中,第一数据一致性异常条件可以为表字段的数据类型与物品信息表对应的物品信息虚拟表所包括的目标表字段的数据类型不同。其中,表字段的数据类型可以包括但不限于:int(integer,整型)、float(浮点型)。上述目标表字段可以为上述物品信息虚拟表中与上述物品信息表包括的表字段对应的表字段。实践中,首先,上述执行主体可以从上述物品信息表集合中选择满足上述第一数据一致性异常条件的物品信息表作为第四备选物品信息表,得到第四备选物品信息表集合。然后,可以创建第一数据一致性异常空表。之后,可以将上述第四备选物品信息表集合中各个第四备选物品信息表的表名、表负责人姓名和各个第四备选物品信息表包括的与上述目标表字段对应的表字段的表字段名写入上述第一数据一致性异常空表,得到第一数据一致性异常表。由此,得到的第一数据一致性异常表记录了字段的数据类型与物品信息虚拟表所包括的对应的目标表字段的数据类型不同的物品信息表的相关信息。
第二步,上述执行主体可以响应于物品信息表集合中存在满足先决条件的物品信息表,将物品信息表集合中满足先决条件的物品信息表确定为第一物品信息表,得到第一物品信息表集合。其中,上述先决条件可以为物品信息表集合中存在同一类型且存储在同一数据库的至少两个物品信息表。上述类型可以为物品信息表的类型。上述类型可以包括但不限于离线类型和实时类型。其中,离线类型的物品信息表可以为历史时间段的物品信息表。实时类型的物品信息表可以为实时更新的物品信息表。由此,可以得到第一物品信息表集合,使得对于上述第一物品信息表集合中的任意一个第一物品信息表,上述第一物品信息表集合中均存在与上述任意一个第一物品信息表的类型和对应的数据库相同的第一物品信息表。
第三步,可以将第一物品信息表集合中满足预设指标字段条件的各个第一物品信息表确定为第二物品信息表组,得到第二物品信息表组集。其中,预设指标字段条件为各个第一物品信息表中存在相同的指标字段且上述各个第一物品信息表通过第一物品信息表所包括的外键关联。上述指标字段可以为数据类型为int(integer,整型)、bigint或decimal的字段。由此,得到的第二物品信息表组集包括的每个第二物品信息表组所包括的各个第二物品信息表含有相同的指标字段。
第四步,对于第二物品信息表组集中的每个第二物品信息表组,可以确定第二物品信息表组中每个第二物品信息表包括的对应第二物品信息表组的指标字段所对应的聚合值,得到聚合值组。实践中,上述执行主体可以将上述指标字段在每个第二物品信息表中对应的各个表字段值的和确定为聚合值,得到上述指标字段对应的聚合值组。由此,可以得到聚合值组,以便对于后续处理提供数据支持。
第五步,上述执行主体可以将所得到的聚合值组中满足第二数据一致性异常条件的聚合值组确定为异常聚合值组,得到异常聚合值组集。其中,第二数据一致性异常条件为聚合值与聚合值组中的任意聚合值相异。由此,可以得到表征存在聚合值异常的异常聚合值组集。
第六步,上述执行主体可以根据异常聚合值组集对应的各个第二物品信息表组,生成第二数据一致性异常表。实践中,首先,上述执行主体可以从上述物品信息表集合中选择满足上述第二数据一致性异常条件的物品信息表作为第五备选物品信息表,得到第五备选物品信息表集合。然后,可以创建第二数据一致性异常空表。之后,可以将上述第五备选物品信息表集合中各个第五备选物品信息表的表名、表负责人姓名和相异的聚合值对应的指标字段的表字段名写入上述第二数据一致性异常空表,得到第二数据一致性异常表。由此,可以得到第二数据一致性异常表,使得所得到的第二数据一致性异常表记录存在聚合值异常的物品信息表的相关信息。
第七步,响应于物品信息表集合中存在元组满足第三数据一致性异常条件的物品信息表,根据满足第三数据一致性异常条件的物品信息表,生成第三数据一致性异常表。其中,第三数据一致性异常条件为物品信息表中存在相同的元组。实践中,首先,上述执行主体可以从上述物品信息表集合中选择满足上述第三数据一致性异常条件的物品信息表作为第六备选物品信息表,得到第六备选物品信息表集合。然后,可以创建第三数据一致性异常空表。之后,可以将上述第六备选物品信息表集合中各个第六备选物品信息表的表名、表负责人姓名写入上述第三数据一致性异常空表,得到第三数据一致性异常表。由此,可以得到第三数据一致性异常表,使得所得到的第三数据一致性异常表记录存在元组异常的物品信息表的相关信息。
在一些实施例的一些可选的实现方式中,首先,上述执行主体可以将物品信息表集合中每个物品信息表包括的白名单字段从物品信息表中删除,以及将删除处理后的物品信息表确定为目标物品信息表,得到目标物品信息表集合。其中,上述物品信息表集合所包括的物品信息表为包含白名单字段的物品信息表。上述白名单字段可以为表征不需要监测的字段。然后,可以响应于目标物品信息表集合中存在满足上述数据完整性异常条件的目标物品信息表,根据目标物品信息表集合中满足数据完整性异常条件的目标物品信息表,生成数据完整性异常表。由此,可以避免对于白名单字段的检测与监控,提高监控效率。
步骤204,响应于物品信息表集合中存在满足率值异常条件的物品信息表,根据物品信息表集合中满足率值异常条件的物品信息表,生成率值异常表。
在一些实施例中,上述执行主体可以响应于物品信息表集合中存在满足率值异常条件的物品信息表,根据物品信息表集合中满足率值异常条件的物品信息表,生成率值异常表。上述率值异常条件可以为物品信息表中存在大于1的率值。上述率值可以为上述物品信息表中数值类型为百分比的值。实践中,首先,上述执行主体可以从上述物品信息表集合中选择满足上述率值异常条件的物品信息表作为率值备选物品信息表,得到率值备选物品信息表集合。然后,可以创建率值异常空表。之后,可以将上述率值备选物品信息表集合中各个率值备选物品信息表的表名、表负责人姓名和率值大于1的表字段名写入上述率值异常空表,得到率值异常表。由此,得到的率值异常表中记录了物品信息表集合中满足率值异常条件的物品信息表的相关信息。
步骤205,分别根据数据完整性异常表、数据一致性异常表和率值异常表,生成完整性异常报警信息、一致性异常报警信息和率值异常报警信息。
在一些实施例中,上述执行主体可以分别根据数据完整性异常表、数据一致性异常表和率值异常表,生成完整性异常报警信息、一致性异常报警信息和率值异常报警信息。实践中,上述执行主体可以将上述数据完整性异常表保存为数据完整性异常表格图像,并将上述数据完整性异常表格图像作为完整性异常报警信息。可以将上述数据一致性异常表保存为数据一致性异常表格图像,并将上述数据一致性异常表格图像作为一致性异常报警信息。上述执行主体可以将上述率值异常表保存为率值异常表格图像,并将上述率值异常表格图像作为率值异常报警信息。由此,可以得到完整性异常报警信息、一致性异常报警信息和率值异常报警信息,以便于提示相关工作人员物品信息表存在异常数据。
在一些实施例的一些可选的实现方式中,第一步,上述执行主体可以根据数据完整性异常表,生成数据完整性异常表格图像和数据完整性异常消息提醒数。实践中,首先,上述执行主体可以将上述数据完整性异常表保存为数据完整性异常表格图像。然后,可以查询上述数据完整性异常表所包括的元组的数量,并将上述数据完整性异常表所包括的元组的数量作为数据完整性异常消息提醒数。最后,可以对上述数据完整性异常消息提醒数根据表负责人姓名进行分类处理,得到至少一类数据完整性异常消息提醒数,使得每类数据完整性异常消息提醒数对应于一个表负责人姓名。由此,可以得到数据完整性异常表格图像和数据完整性异常消息提醒数,以便对于后续处理提供数据支持。
第二步,可以对数据完整性异常表格图像、数据完整性异常消息提醒数和与数据完整性异常表相关联的负责人信息进行组合,得到完整性异常报警信息。上述负责人信息可以包括上述数据完整性异常表的表负责人姓名和当日值班负责人姓名。实践中,上述执行主体可以将上述数据完整性异常表格图像、每类数据完整性异常消息提醒数和对应于上述数据完整性异常消息提醒数的负责人信息进行组合,得到完整性异常报警信息。由此,可以得到完整性异常报警信息,使得完整性异常报警信息包括的内容更加详细。
第三步,根据数据一致性异常表,生成数据一致性异常表格图像和数据一致性异常消息提醒数。实践中,首先,上述执行主体可以将上述数据一致性异常表保存为数据一致性异常表格图像。然后,可以查询上述数据一致性异常表所包括的元组的数量,并将上述数据一致性异常表所包括的元组的数量作为数据一致性异常消息提醒数。最后,可以对上述数据一致性异常消息提醒数根据表负责人姓名进行分类处理,得到至少一类数据一致性异常消息提醒数,使得每类数据一致性异常消息提醒数对应于一个表负责人姓名。由此,可以得到数据一致性异常表格图像和数据一致性异常消息提醒数,以便对于后续处理提供数据支持。
第四步,对数据一致性异常表格图像、数据一致性异常消息提醒数和与数据一致性异常表相关联的负责人信息进行组合,得到一致性异常报警信息。上述负责人信息可以包括上述数据一致性异常表的表负责人姓名和当日值班负责人姓名。实践中,上述执行主体可以将上述数据一致性异常表格图像、每类数据一致性异常消息提醒数和对应于上述数据一致性异常消息提醒数的负责人信息进行组合,得到一致性异常报警信息。由此,可以得到一致性异常报警信息,使得一致性异常报警信息包括的内容更加详细。
第五步,根据率值异常表,生成率值异常表格图像和率值异常消息提醒数。实践中,首先,上述执行主体可以将上述率值异常表保存为率值异常表格图像。然后,可以查询上述率值异常表所包括的元组的数量,并将上述率值异常表所包括的元组的数量作为率值异常消息提醒数。最后,可以对上述率值异常消息提醒数根据表负责人姓名进行分类处理,得到至少一类率值异常消息提醒数,使得每类率值异常消息提醒数对应于一个表负责人姓名。由此,可以得到率值异常表格图像和率值异常消息提醒数,以便对于后续处理提供数据支持。
第六步,对率值异常表格图像、率值异常消息提醒数和与率值异常表相关联的负责人信息进行组合,得到率值异常报警信息。上述负责人信息可以包括上述率值异常表的表负责人姓名和当日值班负责人姓名。实践中,上述执行主体可以将上述率值异常表格图像、每类率值异常消息提醒数和对应于上述率值异常消息提醒数的负责人信息进行组合,得到率值异常报警信息。由此,可以得到率值异常报警信息,使得率值异常报警信息包括的内容更加详细。
步骤206,将完整性异常报警信息、一致性异常报警信息和率值异常报警信息发送至相关联的用户终端,使得用户终端展示完整性异常报警信息、一致性异常报警信息和率值异常报警信息。
在一些实施例中,上述执行主体可以通过有线连接方式或无线连接方式将完整性异常报警信息、一致性异常报警信息和率值异常报警信息发送至相关联的用户终端,使得用户终端展示完整性异常报警信息、一致性异常报警信息和率值异常报警信息。上述相关联的用户终端可以为可对上述完整性异常报警信息、上述一致性异常报警信息和上述率值异常报警信息进行展示的用户终端。上述用户终端可以为相关工作人员的智能手机。由此,可以通知相关工作人员上述完整性异常报警信息、上述一致性异常报警信息和上述率值异常报警信息。
本公开的上述各个实施例具有如下有益效果:通过本公开的一些实施例的数据异常报警方法,提升了物品信息表集合中数据的完整性、一致性和准确性,提升了数据的可靠性。具体来说,造成无法提升物品信息表集合中数据的完整性、一致性和准确性,从而无法提升数据的可靠性的原因在于:无法实现对物品信息表集合的多方位监控。基于此,本公开的一些实施例的数据异常报警方法,首先,获取物品信息表集合。然后,响应于物品信息表集合中存在满足数据完整性异常条件的物品信息表,根据物品信息表集合中满足数据完整性异常条件的物品信息表,生成数据完整性异常表。由此,得到的数据完整性异常表中记录了物品信息表集合中满足数据完整性异常条件的物品信息表的相关信息。其次,响应于物品信息表集合中存在满足数据一致性异常条件的物品信息表,根据物品信息表集合中满足数据一致性异常条件的物品信息表,生成数据一致性异常表。由此,得到的数据一致性异常表中记录了物品信息表集合中满足数据一致性异常条件的物品信息表的相关信息。然后,响应于物品信息表集合中存在满足率值异常条件的物品信息表,根据物品信息表集合中满足率值异常条件的物品信息表,生成率值异常表。由此,得到的率值异常表中记录了物品信息表集合中满足率值异常条件的物品信息表的相关信息。然后,分别根据数据完整性异常表、数据一致性异常表和率值异常表,生成完整性异常报警信息、一致性异常报警信息和率值异常报警信息。由此,可以得到完整性异常报警信息、一致性异常报警信息和率值异常报警信息,以便于提示相关工作人员物品信息表存在异常数据。最后,将完整性异常报警信息、一致性异常报警信息和率值异常报警信息发送至相关联的用户终端,使得用户终端展示完整性异常报警信息、一致性异常报警信息和率值异常报警信息。由此,可以通知相关工作人员上述完整性异常报警信息、上述一致性异常报警信息和上述率值异常报警信息。也因为用户终端对完整性异常报警信息、一致性异常报警信息和率值异常报警信息进行了展示,从而相关工作人员可以获知需要进行修改的物品信息表,进而可以对进行修改的物品信息表中存在完整性异常、一致性异常或率值异常的数据进行修改。由此提升了物品信息表中数据的完整性、一致性和准确性,从而提升了数据的可靠性。
进一步参考图3,其示出了数据异常报警方法的另一些实施例的流程300。该数据异常报警方法的流程300,包括以下步骤:
步骤301,获取物品信息表集合。
步骤302,响应于物品信息表集合中存在满足数据完整性异常条件的物品信息表,根据物品信息表集合中满足数据完整性异常条件的物品信息表,生成数据完整性异常表。
在一些实施例中,步骤301-302的具体实现及其带来的技术效果可以参考图2对应的那些实施例中的步骤201-202,在此不再赘述。
步骤303,确定物品信息表集合中的每个物品信息表包括的每个表字段的数据类型集合。
在一些实施例中,数据异常报警方法的执行主体(如图1所示的计算设备101)可以确定物品信息表集合中的每个物品信息表包括的每个表字段的数据类型集合。实践中,上述执行主体可以利用Hive引擎确定物品信息表集合中的每个物品信息表包括的每个表字段的数据类型,以及利用Click House引擎确定物品信息表集合中的每个物品信息表包括的每个表字段的数据类型,得到每个表字段的数据类型集合。由此,可以得到每个表字段的数据类型集合,为后续处理提供数据支持。
步骤304,响应于物品信息表集合中存在表字段的数据类型集合满足预设相异条件的物品信息表,根据表字段的数据类型集合满足预设相异条件的物品信息表,生成属性一致性异常表。
在一些实施例中,上述执行主体可以响应于物品信息表集合中存在表字段的数据类型集合满足预设相异条件的物品信息表,根据表字段的数据类型集合满足预设相异条件的物品信息表,生成属性一致性异常表。其中,预设相异条件可以为数据类型与数据类型集合中的任意数据类型相异。实践中,首先,上述执行主体可以从上述物品信息表集合中选择满足上述预设相异条件的物品信息表作为第七备选物品信息表,得到第七备选物品信息表集合。然后,可以创建属性一致性异常空表。之后,可以将上述第七备选物品信息表集合中各个第七备选物品信息表的表名、表负责人姓名和数据类型相异的表字段名写入上述属性一致性异常空表,得到属性一致性异常表。由此,得到的属性一致性异常表记录了各个属性不一致的字段。
步骤305,根据属性一致性异常表,生成属性一致性异常报警信息。
在一些实施例中,上述执行主体可以根据属性一致性异常表,生成属性一致性异常报警信息。实践中,上述执行主体可以将上述属性一致性异常表保存为属性一致性异常表格图像,并将上述属性一致性异常表格图像作为属性一致性异常报警信息。由此,可以得到属性一致性异常报警信息,以便于提示相关工作人员物品信息表存在属性一致性异常数据。
步骤306,将属性一致性异常报警信息发送至用户终端,使得用户终端展示属性一致性异常报警信息。
在一些实施例中,上述执行主体可以将属性一致性异常报警信息发送至用户终端,使得用户终端展示属性一致性异常报警信息。实践中,上述执行主体可以通过有线连接方式或无线连接方式将属性一致性异常报警信息发送至上述用户终端,使得用户终端展示属性一致性异常报警信息。由此,可以通知相关工作人员上述属性一致性异常报警信息。
步骤307,响应于物品信息表集合中存在满足数据一致性异常条件的物品信息表,根据物品信息表集合中满足数据一致性异常条件的物品信息表,生成数据一致性异常表。
在一些实施例中,上述执行主体可以响应于物品信息表集合中存在满足数据一致性异常条件的物品信息表,根据物品信息表集合中满足数据一致性异常条件的物品信息表,生成数据一致性异常表。其中,上述数据一致性异常条件可以为表字段的数据类型与物品信息表对应的物品信息虚拟表所包括的目标表字段的数据类型不同。例如,可以利用Presto引擎确定物品信息表包括的表字段的数据类型。表字段的数据类型可以包括但不限于:int(integer,整型)和float(浮点型)。上述目标表字段可以为上述物品信息虚拟表中与上述物品信息表包括的表字段对应的表字段。实践中,首先,上述执行主体可以从上述物品信息表集合中选择满足上述数据一致性异常条件的物品信息表作为第八备选物品信息表,得到第八备选物品信息表集合。然后,可以创建数据一致性异常空表。之后,可以将上述第八备选物品信息表集合中各个第八备选物品信息表的表名、表负责人姓名和与上述目标表字段对应的表字段名写入上述数据一致性异常空表,得到数据一致性异常表。由此,得到的数据一致性异常表中记录了物品信息表集合中满足数据一致性异常条件的物品信息表的相关信息。
步骤303-307及其相关内容作为本公开的实施例的一个发明点,解决了背景技术提及的技术问题二“通过不同查询方式查询的物品信息表中数据的数据类型不一致时,物品信息表中数据的一致性较差,数据的可靠性较低”。导致无法提升数据的一致性与可靠性的因素如下:无法通过不同查询方式查询的物品信息表中数据的数据类型。如果解决了上述因素,就能达到提升数据的一致性与可靠性的效果。为了达到这一效果,本公开利用Hive引擎和Click House引擎得到了每个表字段的数据类型集合,生成属性一致性异常表,根据属性一致性异常表生成属性一致性异常报警信息并发送至相关联的用户终端,使得相关工作人员对存在属性一致性异常的表字段进行修改,从而提升数据的一致性与可靠性。进而检测表字段的属性与元数据中记录的该数据的属性是否一致,从而提示相关工作人员对不一致的情况进行修改,进一步提升数据的一致性与可靠性。
步骤308,响应于物品信息表集合中存在满足率值异常条件的物品信息表,根据物品信息表集合中满足率值异常条件的物品信息表,生成率值异常表。
步骤309,分别根据数据完整性异常表、数据一致性异常表和率值异常表,生成完整性异常报警信息、一致性异常报警信息和率值异常报警信息。
步骤310,将完整性异常报警信息、一致性异常报警信息和率值异常报警信息发送至相关联的用户终端,使得用户终端展示完整性异常报警信息、一致性异常报警信息和率值异常报警信息。
在一些实施例中,步骤308-310的具体实现及其带来的技术效果可以参考图2对应的那些实施例中的步骤204-206,在此不再赘述。
从图3中可以看出,与图2对应的一些实施例的描述相比,图3对应的一些实施例中的数据异常报警方法的流程300体现了对数据属性一致性异常进行扩展的步骤。由此,这些实施例描述的方案可以监控数据仓库中数据的属性是否一致,并提示相关工作人员对不一致情况进行修改,从而提升数据的一致性与可靠性。
进一步参考图4,作为对上述各图所示方法的实现,本公开提供了一种数据异常报警装置的一些实施例,这些装置实施例与图2所示的那些方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图4所示,一些实施例的数据异常报警装置400包括:获取单元401、第一生成单元402、第二生成单元403、第三生成单元404、第四生成单元405和发送单元406。其中,获取单元401被配置成获取物品信息表集合;第一生成单元402被配置成响应于物品信息表集合中存在满足数据完整性异常条件的物品信息表,根据物品信息表集合中满足数据完整性异常条件的物品信息表,生成数据完整性异常表;第二生成单元403被配置成响应于物品信息表集合中存在满足数据一致性异常条件的物品信息表,根据物品信息表集合中满足数据一致性异常条件的物品信息表,生成数据一致性异常表;第三生成单元404被配置成响应于物品信息表集合中存在满足率值异常条件的物品信息表,根据物品信息表集合中满足率值异常条件的物品信息表,生成率值异常表;第四生成单元405被配置成分别根据数据完整性异常表、数据一致性异常表和率值异常表,生成完整性异常报警信息、一致性异常报警信息和率值异常报警信息;而发送单元406被配置成将完整性异常报警信息、一致性异常报警信息和率值异常报警信息发送至相关联的用户终端,使得用户终端展示完整性异常报警信息、一致性异常报警信息和率值异常报警信息。
可以理解的是,该装置400中记载的诸单元与参考图2描述的方法中的各个步骤相对应。由此,上文针对方法描述的操作、特征以及产生的有益效果同样适用于装置400及其中包含的单元,在此不再赘述。
下面参考图5,其示出了适于用来实现本公开的一些实施例的电子设备(如图1所示的计算设备101)500的结构示意图。图5示出的电子设备仅仅是一个示例,不应对本公开的实施例的功能和使用范围带来任何限制。
如图5所示,电子设备500可以包括处理装置(例如中央处理器、图形处理器等)501,其可以根据存储在只读存储器(ROM)502中的程序或者从存储装置508加载到随机访问存储器(RAM)503中的程序而执行各种适当的动作和处理。在RAM 503中,还存储有电子设备500操作所需的各种程序和数据。处理装置501、ROM 502以及RAM 503通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线504。
通常,以下装置可以连接至I/O接口505:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置506;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置507;包括例如磁带、硬盘等的存储装置508;以及通信装置509。通信装置509可以允许电子设备500与其他设备进行无线或有线通信以交换数据。虽然图5示出了具有各种装置的电子设备500,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。图5中示出的每个方框可以代表一个装置,也可以根据需要代表多个装置。
特别地,根据本公开的一些实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的一些实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的一些实施例中,该计算机程序可以通过通信装置509从网络上被下载和安装,或者从存储装置508被安装,或者从ROM 502被安装。在该计算机程序被处理装置501执行时,执行本公开的一些实施例的方法中限定的上述功能。
需要说明的是,本公开的一些实施例中记载的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开的一些实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开的一些实施例中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
在一些实施方式中,客户端、服务器可以利用诸如HTTP(HyperText TransferProtocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“LAN”),广域网(“WAN”),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:响应于物品信息表集合中存在满足数据完整性异常条件的物品信息表,根据物品信息表集合中满足数据完整性异常条件的物品信息表,生成数据完整性异常表。响应于物品信息表集合中存在满足数据一致性异常条件的物品信息表,根据物品信息表集合中满足数据一致性异常条件的物品信息表,生成数据一致性异常表。响应于物品信息表集合中存在满足率值异常条件的物品信息表,根据物品信息表集合中满足率值异常条件的物品信息表,生成率值异常表。分别根据数据完整性异常表、数据一致性异常表和率值异常表,生成完整性异常报警信息、一致性异常报警信息和率值异常报警信息。将完整性异常报警信息、一致性异常报警信息和率值异常报警信息发送至相关联的用户终端,使得用户终端展示完整性异常报警信息、一致性异常报警信息和率值异常报警信息。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的一些实施例的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)——连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开的一些实施例中的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括获取单元、第一生成单元、第二生成单元、第三生成单元、第四生成单元和发送单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,获取单元还可以被描述为“获取物品信息表集合的单元”。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑设备(CPLD)等等。
以上描述仅为本公开的一些较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开的实施例中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开的实施例中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。