一种数据去重方法及设备技术

技术编号:30960172 阅读:15 留言:0更新日期:2021-11-25 20:23
本申请的目的是提供一种数据去重方法及设备,本申请通过获取当前日期之前产生的所有历史数据及其对应的历史发生时间、第一数据类型及所属第一用户,并对所有历史数据进行去重处理得到至少一条历史无重数据;获取当前日期内所产生的所有的新增数据,并对所有的新增数据进行去重处理,得到至少一条新增无重数据及其对应的当前发生时间及所属第二用户;对至少一条历史无重数据和至少一条新增无重数据进行全关联操作,得到截止当前日期的至少两条综合无重数据及其对应的最新时间,实现了对历史数据和新增数据的去重,不仅提高了计算效率,还降低了计算成本。还降低了计算成本。还降低了计算成本。

【技术实现步骤摘要】
一种数据去重方法及设备


[0001]本申请涉及计算机
,尤其涉及一种数据去重方法及设备。

技术介绍

[0002]现有技术中,随着数据信息量的不断增加,会涉及到对大量数据的加工,比如,对一定时间内的大量数据进行去重计算,尤其适用于历史数据较多且每日新增数据较少的计算场景。例如,目前各大平台网站等均需要计算一定时间内的用户访问量,当平台发展到一定级别,用户的历史数据量就是大量的数据;相对而言,新增用户的数据量就会减少。现有技术中通用的方法为:对规定的时间用标准的代码进行去重操作,具体代码如下:
[0003]Select pin from表A where dt>=“2021

01

01”group by pin;
[0004]此种处理方法会对时间范围内的所有历史数据进行计算,且每天需要进行计算,浪费计算资源。
[0005]例如:某网站每天大量用户进行访问,每一次对网站进行浏览就会生成一条浏览数据,因此当前用户一天内就会生成N条数据,在一定时间后就会生成大量的浏览数据。如果每天需要计算近1年内用户访问量,所需要处理的数据范围就是1年内所有数据,在实际应用场景中,每天都需要对1年内的数据量和当天新生成的新增数据进行去重计算,如图1所示,因此会耗费大量资源进行数据去重的重复计算,从而导致计算资源的浪费,增加数据处理的成本。

技术实现思路

[0006]本申请的一个目的是提供一种数据去重方法及设备,实现了与现有技术具有相同的计算资源和计算数据背景下,采取对数据进行分而治之的策略,不仅避免了对历史的全量数据进行扫描,还能处理新增数据和历史数据的重复问题,从而大大提高了计算效率,降低了计算成本。
[0007]根据本申请的一个方面,提供了一种数据去重方法,其中,所述方法包括:
[0008]获取当前日期之前产生的所有历史数据及其对应的历史发生时间、第一数据类型及所属第一用户,并对所述所有历史数据进行去重处理,得到至少一条历史无重数据及其对应的历史发生时间及所属第一用户;
[0009]获取当前日期内所产生的所有的新增数据及其对应的当前发生时间、第二数据类型及所属第二用户,并对所述所有的新增数据进行去重处理,得到至少一条新增无重数据及其对应的当前发生时间及所属第二用户;
[0010]基于所述历史发生时间、所述第一用户、所述当前发生时间及所述第二用户,对所述至少一条历史无重数据和所述至少一条新增无重数据进行全关联操作,得到截止所述当前日期的至少两条综合无重数据及其对应的最新时间。
[0011]进一步地,上述方法中,所述对所述所有历史数据进行去重处理,得到至少一条历史无重数据及其对应的历史发生时间及所属第一用户,包括:
[0012]根据所属第一用户的不同,对所述所有历史数据进行分组,得到每个所述第一用户的至少一条历史数据及其对应的历史发生时间和数据类型;
[0013]按照所述历史发生时间的先后顺序,分别对每个所述第一用户的至少一条历史数据进行排序;并分别将每个所述第一用户的至少一条历史数据中的、每种第一数据类型对应的历史数据中排序第一的历史数据作为历史无重数据,同时,分别将每个所述第一用户的至少一条历史数据中的、每种第一数据类型对应的历史数据中除所述排序第一的历史数据以外的历史数据进行去重处理,得到至少一条历史无重数据及其对应的历史发生时间及所属第一用户。
[0014]进一步地,上述方法中,所述对所述所有的新增数据进行去重处理,得到至少一条新增无重数据及其对应的当前发生时间及所属第二用户,包括:
[0015]根据所属第二用户的不同,对所述所有新增数据进行分组,得到每个所述第二用户的至少一条新增数据及其对应的当前发生时间和第二数据类型;
[0016]按照所述当前发生时间的先后顺序,分别对每个所述第二用户的至少一条新增数据进行排序;并分别将每个所述第二用户的至少一条新增数据中的、每种第二数据类型对应的新增数据中排序第一的新增数据作为新增无重数据,同时,分别将每个所述第二用户的至少一条新增数据中的、每种第二数据类型对应的新增数据中除所述排序第一的新增数据以外的新增数据进行去重处理,得到至少一条新增无重数据及其对应的当前发生时间及所属第二用户。
[0017]进一步地,上述方法中,所述基于所述历史发生时间、所述第一用户、所述当前发生时间及所述第二用户,对所述至少一条历史无重数据和所述至少一条新增无重数据进行全关联操作,得到截止所述当前日期的至少两条综合无重数据及其对应的最新时间,包括:
[0018]将每条所述历史无重数据,分别与所述至少一条新增无重数据中的每条所述新增无重数据进行关联,并在关联的所述历史无重数据与所述新增无重数据属于同一用户时,将所述历史无重数据对应的历史发生时间更新为所述新增无重数据对应的当前发生时间,以得到截止所述当前日期的至少两条综合无重数据及其对应的最新时间。
[0019]根据本申请的另一方面,还提供了一种非易失性存储介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行时,使所述处理器实现如上述数据去重方法。
[0020]根据本申请的另一方面,还提供了一种数据去重设备,其中,该设备包括:
[0021]一个或多个处理器;
[0022]计算机可读介质,用于存储一个或多个计算机可读指令,
[0023]当所述一个或多个计算机可读指令被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上述数据去重方法。
[0024]与现有技术相比,本申请通过先获取当前日期之前产生的所有历史数据及其对应的历史发生时间、第一数据类型及所属第一用户,并对所述所有历史数据进行去重处理,得到至少一条历史无重数据及其对应的历史发生时间及所属第一用户;然后,获取当前日期内所产生的所有的新增数据及其对应的当前发生时间、第二数据类型及所属第二用户,并对所述所有的新增数据进行去重处理,得到至少一条新增无重数据及其对应的当前发生时间及所属第二用户;最后,基于所述历史发生时间、所述第一用户、所述当前发生时间及所述第二用户,对所述至少一条历史无重数据和所述至少一条新增无重数据进行全关联操
作,得到截止所述当前日期的至少两条综合无重数据及其对应的最新时间,实现了与现有技术具有相同的计算资源和计算数据背景下,采取对数据进行分而治之的策略,不仅避免了对历史的全量数据进行扫描,还能处理新增数据和历史数据的重复问题,从而大大提高了计算效率,降低了计算成本。
附图说明
[0025]通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
[0026]图1示出现有技术中的一种数据去重方法的实际流程示意图;
[0027]图2示出根据本申请一个方面的一种数据去重方法的流程示意图;
[0028]图3示出根据本申请一个方面的一种数据去重方法在实际应用场景中的流程示意图。
[0029本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据去重方法,其中,所述方法包括:获取当前日期之前产生的所有历史数据及其对应的历史发生时间、第一数据类型及所属第一用户,并对所述所有历史数据进行去重处理,得到至少一条历史无重数据及其对应的历史发生时间及所属第一用户;获取当前日期内所产生的所有的新增数据及其对应的当前发生时间、第二数据类型及所属第二用户,并对所述所有的新增数据进行去重处理,得到至少一条新增无重数据及其对应的当前发生时间及所属第二用户;基于所述历史发生时间、所述第一用户、所述当前发生时间及所述第二用户,对所述至少一条历史无重数据和所述至少一条新增无重数据进行全关联操作,得到截止所述当前日期的至少两条综合无重数据及其对应的最新时间。2.根据权利要求1所述的方法,其中,所述对所述所有历史数据进行去重处理,得到至少一条历史无重数据及其对应的历史发生时间及所属第一用户,包括:根据所属第一用户的不同,对所述所有历史数据进行分组,得到每个所述第一用户的至少一条历史数据及其对应的历史发生时间和数据类型;按照所述历史发生时间的先后顺序,分别对每个所述第一用户的至少一条历史数据进行排序;并分别将每个所述第一用户的至少一条历史数据中的、每种第一数据类型对应的历史数据中排序第一的历史数据作为历史无重数据,同时,分别将每个所述第一用户的至少一条历史数据中的、每种第一数据类型对应的历史数据中除所述排序第一的历史数据以外的历史数据进行去重处理,得到至少一条历史无重数据及其对应的历史发生时间及所属第一用户。3.根据权利要求1所述的方法,其中,所述对所述所有的新增数据进行去重处理,得到至少一条新增无重数据及其对应的当前发生时间及所属第二用户,包括:根据所属第二用户的不同...

【专利技术属性】
技术研发人员:段稳过
申请(专利权)人:上海万物新生环保科技集团有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1