一种数据处理方法和设备与流程

文档序号:11133963阅读:495来源:国知局
一种数据处理方法和设备与制造工艺
本申请涉及互联网信息处理技术,尤其涉及一种数据处理方法和设备。
背景技术
:数据仓库是一个面向主题的(英文:SubjectOriented)、集成的(英文:Integrated)、相对稳定的(英文:Non-Volatile)、反映历史变化(英文:TimeVariant)的数据集合。在数据仓库中将结构化的数据文件映射为一张数据表。数据仓库中的数据是在对原有分散数据库中的数据执行数据抽取、数据清理等基础操作之上经过系统加工、汇总和整理得到的,这样能够保证数据仓库中的数据消除了源数据的不一致性。在实际应用中,一个业务对应的多个业务数据可能会在多个不同系统中出现,而系统之间交互的时间差又可能导致该业务数据在不同系统的数据表中存储的时间出现跨天的情况,这种现象称为数据漂移。例如:一个业务为一个订单业务,那么在表1中产生一组与该订单业务有关的数据:产生时间、该订单业务的订单信息以及支付事件信息,对应的产生时间为1号23:59:00;在表2中产生一组与该订单业务有关的数据:产生时间、该订单业务的订单信息以及支付金额信息,对应的产生时间为2号00:00:00,由此可见,该订单业务的业务数据发生数据漂移。然而系统之间的业务数据发生数据漂移不可避免,那么在将不同系统内的业务数据同步至数据仓库中,如何有效地避免因为数据漂移导致业务数据累加过程中出现遗漏累加成为亟需解决的问题。正是由于数据漂移使得数据仓库中通过累加得到的业务数据的准确性较低。技术实现要素:有鉴于此,本申请实施例提供了一种数据处理方法和设备,用于解决现有技术中存在的如何有效地避免因为数据漂移导致业务数据累加过程中出现遗漏累加的问题。一种数据处理方法,包括:获取第一数据表中存储的与目标业务相关联的多组数据信息,其中,每一组所述数据信息中包含所述目标业务的业务数据的产生时间以及所述业务数据的第一数据内容;在确定所述目标业务的业务数据在所述第一数据表中发生数据漂移时,从第二数据表中获取发生数据漂移的与所述目标业务的所述业务数据相关联的第二数据内容,其中,所述第一数据表与所述第二数据表不同;将获取的所述业务数据的第一数据内容与所述业务数据的第二数据内容进行合并,对合并后的数据内容执行数据清洗操作。一种数据处理设备,包括:获取单元,用于获取第一数据表中存储的与目标业务相关联的多组数据信息,其中,每一组所述数据信息中包含所述目标业务的业务数据的产生时间以及所述业务数据的第一数据内容;所述获取单元,还用于在确定所述目标业务的业务数据在所述第一数据表中发生数据漂移时,从第二数据表中获取发生数据漂移的与所述目标业务的所述业务数据相关联的第二数据内容,其中,所述第一数据表与所述第二数据表不同;处理单元,用于将获取的所述业务数据的第一数据内容与所述业务数据的第二数据内容进行合并,对合并后的数据内容执行数据清洗操作。本申请有益效果如下:本申请实施例获取第一数据表中存储的与目标业务相关联的多组数据信息,每一组所述数据信息中包含所述目标业务的业务数据的产生时间以及所述 业务数据的第一数据内容;在确定所述目标业务的业务数据在所述第一数据表中发生数据漂移时,从第二数据表中获取发生数据漂移的与所述目标业务的所述业务数据相关联的第二数据内容,所述第一数据表与所述第二数据表不同;将获取的所述业务数据的第一数据内容与所述业务数据的第二数据内容进行合并,对合并后的数据内容执行数据清洗操作,这样,数据仓库在进行数据清洗之前,判断获取的业务数据是否发生数据漂移,并在确定业务数据发生数据漂移时,获取发生数据漂移的业务数据的数据内容,进而对业务数据的数据内容进行合并,有效地避免了因为数据漂移导致业务数据合并过程中出现遗漏累加的问题,有效提升了数据仓库中存储的业务数据的准确性,同时简化了数据仓库中数据同步方式,有效地提升了数据仓库中数据处理效率。附图说明为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本申请实施例提供的一种数据处理方法的流程示意图;图2为本申请实施例提供的一种数据处理设备的结构示意图。具体实施方式为了实现本申请实施例的目的,本申请实施例提供了一种数据处理方法和设备,获取第一数据表中存储的与目标业务相关联的多组数据信息,每一组所述数据信息中包含所述目标业务的业务数据的产生时间以及所述业务数据的第一数据内容;在确定所述目标业务的业务数据在所述第一数据表中发生数据漂移时,从第二数据表中获取发生数据漂移的与所述目标业务的所述业务数据 相关联的第二数据内容,所述第一数据表与所述第二数据表不同;将获取的所述业务数据的第一数据内容与所述业务数据的第二数据内容进行合并,对合并后的数据内容执行数据清洗操作,这样,数据仓库在进行数据清洗之前,判断获取的业务数据是否发生数据漂移,并在确定业务数据发生数据漂移时,获取发生数据漂移的业务数据的数据内容,进而对业务数据的数据内容进行合并,有效地避免了因为数据漂移导致业务数据合并过程中出现遗漏累加的问题,有效提升了数据仓库中存储的业务数据的准确性,同时简化了数据仓库中数据同步方式,有效地提升了数据仓库中数据处理效率。需要说明的是,本申请实施例中所述的数据清洗是指数据仓库对抽取到的数据进行清洗,发现并纠正数据中存在的错误。一般包括检查数据的一致性、对出现无效值或者缺失值的数据进行处理。这里的处理可以包含删除。本申请实施例可以被应用于针对多阶段的业务,例如:分期付款业务,或者需要执行多次操作的业务等等。下面结合说明书附图对本申请各个实施例作进一步地详细描述。显然,所描述的实施例仅仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。图1为本申请实施例提供的一种数据处理方法的流程示意图。所述方法可以如下所述。本申请实施例的执行主体可以是数据仓库。步骤101:获取第一数据表中存储的与目标业务相关联的多组数据信息。其中,每一组所述数据信息中包含所述目标业务的业务数据的产生时间以及所述业务数据的第一数据内容。在步骤101中,由于数据仓库具备对大量数据进行管理的能力,各个分散系统采集到的业务数据需要在指定的数据同步时间同步至数据仓库,以实现数据仓库对大量数据的管理。数据仓库的功能可以通过一些工具实现,例如:开放数据处理服务(英文: OpenDataProcessingService;缩写:ODPS);Hive工具等等。需要说明的是,Hive是一种基于Hadoop的开源数据仓库工具,可将结构化的数据文件映射为一张数据表,并能够提供简单的SQL查询功能,还可以将SQL语句转换为MapReduce任务进行运行。数据仓库在完成数据同步时,一般需要经过数据抽取和数据清洗这两个阶段。其中,数据抽取是指数据仓库从分散系统中采集每一个系统在指定时间内采集的业务数据。需要说明的是,指定时间可以根据实际需要确定,也可以根据系统要求设定,例如:每天的00:00:00~23:59:59。数据仓库执行数据同步的时间可以是定时的,也可以是周期性的,例如:设置为每天00:00:00~00:30:00;或者设置为每周一00:00:00~00:30:00等等。假设数据仓库执行数据同步的时间设置为每天的00:00:00~00:30:00,那么在这个时间段内,数据仓库从分散系统中抽取在前一天内采集的业务数据。例如:在2号的00:00:00~00:30:00,数据仓库从分散系统中抽取在1号采集的业务数据。通常分散系统采用表的方式存储一天采集的业务数据。这样,数据仓库在执行数据同步时,从第一数据表中获取与目标业务相关联的多组数据信息。在第一数据表中,针对不同业务,为每一个业务产生的每一个业务数据生成数据信息,即包含业务的业务标识、业务数据的产生时间以及该产生时间内产生的业务数据的数据内容等。由于在实际应用中,由于业务数据的数据内容会出现跨天产生的情况,导致业务数据内容发生数据漂移的现象,即针对目标业务的业务数据,业务数据的变更时间发生在1号23:59:59;但是针对该变更对应的数据内容发生在2号00:00:00。在系统中,对于2号00:00:00产生的数据内容存在被视为无效数据的可能性,在执行数据清洗时,该数据将被清洗,这样导致目标业务的业务数据不完整。步骤102:针对其中一组数据信息,判断所述目标业务的业务数据是否在所述第一数据表中发生数据漂移;若发生数据漂移,则执行步骤103;若尚未发生数据漂移,则按照现有技术方案进行数据抽取。在步骤102中,针对其中一组数据信息,根据所述数据信息中包含的所述目标业务的业务数据的产生时间,判断所述目标业务的业务数据的产生时间是否包含在预设第一时间范围之内。其中,所述预设第一时间范围根据数据仓库从不同的系统数据库中抽取业务数据的时间确定。若判断结果是所述目标业务的业务数据的产生时间包含在预设第一时间范围之内,则确定所述目标业务的业务数据在所述第一数据表中发生数据漂移。具体地,针对第一数据表中的一组数据信息,假设一组数据信息中业务数据内容为空,此时根据该数据信息中的业务数据的产生时间,进一步确定该数据信息中的业务数据的产生时间是否包含在预设第一时间范围之内,若该数据信息中的业务数据的产生时间包含在预设第一时间范围之内,则可以确定该数据信息中的业务数据在第一数据表中发生数据漂移。例如:数据仓库从不同的系统数据库中抽取业务数据的时间确定为00:00:00~00:30:00,那么预设第一时间范围可以确定为:23:59:50~23:59:59,一旦所述目标业务的业务数据的产生时间包含在23:59:50~23:59:59之内,则确定所述目标业务的业务数据在所述第一数据表中发生数据漂移。步骤103:在确定所述目标业务的业务数据在所述第一数据表中发生数据漂移时,从第二数据表中获取发生数据漂移的与所述目标业务的所述业务数据相关联的第二数据内容。其中,所述第一数据表与所述第二数据表不同。在步骤103中,由于数据漂移之后,业务数据的数据内容可能被存储在另一张数据表中,那么从第二数据表中获取发生数据漂移的与所述目标业务的所 述业务数据相关联的第二数据内容。具体地,从第二数据表中查找在预设第二时间范围内产生的,且与所述目标业务相关联的数据内容,其中,所述预设第二时间范围用于表征数据仓库从不同的系统数据库中抽取业务数据;在确定查找的数据内容与所述目标业务的所述业务数据相关联时,将查找到的数据内容作为发生数据漂移的与所述目标业务的所述业务数据相关联的第二数据内容。需要说明的是,所述预设第一时间范围与所述预设第二时间范围不同,但预设第一时间范围与预设第二时间范围之间的时间差满足设定阈值。所述设定阈值可以根据实际需要确定,也可以根据数据漂移的特性确定。即首先从其他数据表中查找包含目标业务的业务标识的数据表(这里假设是第二数据表);其次,从第二数据表中查找在预设第二时间范围内产生的,且与所述目标业务相关联的数据内容,即根据第二数据表中包含的业务数据的产生时间,确定产生时间包含在预设第二时间范围内的业务数据,并从确定的业务数据中确定出与第一数据表中发生数据漂移的数据内容。如表1所示,为第一数据表和第二数据表的示意表:表1步骤104:将获取的所述业务数据的第一数据内容与所述业务数据的第二数据内容进行合并,对合并后的数据内容执行数据清洗操作。在步骤104中,针对抽取到的业务数据,将所述业务数据的第一数据内容 与所述业务数据的第二数据内容进行合并,得到该业务数据的完整数据内容。在本申请的另一个实施例中,数据仓库在完成数据抽取之后,需要更新历史数据,因此,数据仓库再次获取所述目标业务的所述业务数据的历史数据内容;并将所述历史数据内容、获取的所述业务数据的第一数据内容以及所述业务数据的第二数据内容进行合并。在本申请的另一个实施例中,数据仓库在抽取到第一数据表中的数据信息时,对于尚未发生数据漂移的业务数据,可以首先将所述目标业务的所述业务数据的历史数据内容与获取的所述业务数据的第一数据内容进行合并;其次在将合并结果与获取到的所述业务数据的第二数据内容进行合并。通过本申请实施例提供的数据处理方法,获取第一数据表中存储的与目标业务相关联的多组数据信息,每一组所述数据信息中包含所述目标业务的业务数据的产生时间以及所述业务数据的第一数据内容;在确定所述目标业务的业务数据在所述第一数据表中发生数据漂移时,从第二数据表中获取发生数据漂移的与所述目标业务的所述业务数据相关联的第二数据内容,所述第一数据表与所述第二数据表不同;将获取的所述业务数据的第一数据内容与所述业务数据的第二数据内容进行合并,对合并后的数据内容执行数据清洗操作,这样,数据仓库在进行数据清洗之前,判断获取的业务数据是否发生数据漂移,并在确定业务数据发生数据漂移时,获取发生数据漂移的业务数据的数据内容,进而对业务数据的数据内容进行合并,有效地避免了因为数据漂移导致业务数据合并过程中出现遗漏累加的问题,有效提升了数据仓库中存储的业务数据的准确性。例如:针对目标业务存在以下几组数据信息,如表2所示:表2目标业务的业务标识产生时间业务数据数据内容11111号11:59:59支付1011112号23:59:59支付空11113号00:00:00空20若数据仓库抽取业务数据的时间为2号00:00:00~00:30:00,由于业务数据的产生时间为1号11:59:59,不包含在预设第一时间范围(23:59:50~23:59:59)之内,那么抽取到目标业务的业务数据的数据内容为10;若数据仓库抽取业务数据的时间为3号00:00:00~00:30:00,由于业务数据的产生时间为2号23:59:59,包含在预设第一时间范围(23:59:50~23:59:59)之内,那么确定该业务数据发生数据漂移,此时需要进一步地从预设第二时间范围(00:00:00~00:15:00)之内确定发生数据漂移的业务数据的数据内容,即获取到20,这样,数据仓库可以相对准确到该目标业务的业务数据,也不会因为数据信息中因为缺失内容而导致该数据信息无效,有效地避免了因为数据漂移导致业务数据合并过程中出现遗漏累加的问题,有效提升了数据仓库中存储的业务数据的准确性。图2为本申请实施例提供的一种数据处理设备的结构示意图。所述数据处理设备包括:获取单元21和处理单元22,其中:获取单元21,用于获取第一数据表中存储的与目标业务相关联的多组数据信息,其中,每一组所述数据信息中包含所述目标业务的业务数据的产生时间以及所述业务数据的第一数据内容;所述获取单元21,还用于在确定所述目标业务的业务数据在所述第一数据表中发生数据漂移时,从第二数据表中获取发生数据漂移的与所述目标业务的所述业务数据相关联的第二数据内容,其中,所述第一数据表与所述第二数据表不同;处理单元22,用于将获取的所述业务数据的第一数据内容与所述业务数据的第二数据内容进行合并,对合并后的数据内容执行数据清洗操作。具体地,所述获取单元21确定所述目标业务的业务数据在所述第一数据表中发生数据漂移,包括:针对其中一组数据信息,根据所述数据信息中包含的所述目标业务的业务 数据的产生时间,判断所述目标业务的业务数据的产生时间是否包含在预设第一时间范围之内,其中,所述预设第一时间范围根据数据仓库从不同的系统数据库中抽取业务数据的时间确定;若判断结果是所述目标业务的业务数据的产生时间包含在预设第一时间范围之内,则确定所述目标业务的业务数据在所述第一数据表中发生数据漂移。具体地,所述获取单元21从第二数据表中获取发生数据漂移的与所述目标业务的所述业务数据相关联的第二数据内容,包括:从第二数据表中查找在预设第二时间范围内产生的,且与所述目标业务相关联的数据内容,其中,所述预设第二时间范围用于表征数据仓库从不同的系统数据库中抽取业务数据;在确定查找的数据内容与所述目标业务的所述业务数据相关联时,将查找到的数据内容作为发生数据漂移的与所述目标业务的所述业务数据相关联的第二数据内容。具体地,所述处理单元22将获取的所述业务数据的第一数据内容与所述业务数据的第二数据内容进行合并,包括:获取所述目标业务的所述业务数据的历史数据内容;将所述历史数据内容、获取的所述业务数据的第一数据内容以及所述业务数据的第二数据内容进行合并。需要说明的是,本申请实施例提供的设备可以通过硬件方式实现,也可以通过软件方式实现,这里不做限定,所述设备在进行数据清洗之前,判断获取的业务数据是否发生数据漂移,并在确定业务数据发生数据漂移时,获取发生数据漂移的业务数据的数据内容,进而对业务数据的数据内容进行合并,有效地避免了因为数据漂移导致业务数据合并过程中出现遗漏累加的问题,有效提升了数据仓库中存储的业务数据的准确性。本领域的技术人员应明白,本申请的实施例可提供为方法、装置(设备)、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。本申请是参照根据本申请实施例的方法、装置(设备)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本申请的范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1