一种数据去重的方法和设备与流程

文档序号:11177234阅读:276来源:国知局
一种数据去重的方法和设备与流程

本发明涉及网络技术领域,尤其涉及一种数据去重的方法和设备。



背景技术:

一个用户在进行网络活动时会产生大量的数据,而产生的大量数据有很多是重复的数据,例如:用户为了保证自己发送的数据可以被服务器接收到,用户会发送多条所述数据,此时用户发送的多条所述数据就是重复数据,当重复数据较多时不仅会占据服务器大量的存储空间,也会占据服务器中过多的计算资源,由于服务器会进行过多的重复计算,致使服务器计算效率低下。

在现有技术中针对上述问题提出了一种数据去重方案:通过分析用户产生重复数据的规律,确定出去重周期,下游数据处理设备根据去重周期对接收到的数据进行去重。

在实现本发明的过程中,发明人发现现有技术至少存在如下问题:

在用户发送数据时,同一用户设备发送的多个数据可能发送到不同的下游数据处理设备中,而下游数据处理设备在对数据进行去重时只能对自身中的数据进行去重,现有技术虽然可以有效的对单个下游数据处理设备中的重复数据去重,但是当同一用户设备将多个重复数据发送到不同的下游数据处理设备中时,下游数据处理设备集群不能对所述多个重复数据进行有效去重。



技术实现要素:

有鉴于此,本发明实施例提供的一种数据去重的方法和设备,用以解决现有技术中下游数据处理设备集群不能对同一用户设备发送给不同下游数据处理设备的多个重复数据进行有效去重。

本发明提供一种数据去重的方法,所述方法应用于包括多个下游数据处理设备的系统中,所述方法包括:

中间设备获取所接收到的数据中携带的唯一标识;

所述中间设备根据预设的对应关系和所述数据中的所述唯一标识,确定 所述数据将要被发送到的下游数据处理设备;

所述中间设备将所述数据发送到所述下游数据处理设备,以使所述下游数据处理设备对相同数据进行数据去重。

相同来源的数据所携带的唯一标识至少部分相同。

所述中间设备获取所述数据中携带的唯一标识,具体包括:

所述中间设备解析所述数据;

所述中间设备判断解析后的所述数据内容是否为空;

如果为空,所述中间设备删除所述数据;

如果不为空,所述中间设备获取所述数据中携带的唯一标识。

一种中间设备,所述中间设备应用于包括多个下游数据处理设备的系统中,所述中间设备包括:

获取模块,用于获取所接收到的数据中携带的唯一标识;

确定模块,用于根据预设的对应关系和所述数据中的所述唯一标识,确定所述数据将要被发送到的下游数据处理设备;

发送模块,用于将所述数据发送到所述下游数据处理设备,以使所述下游数据处理设备对相同数据进行数据去重。

相同来源的数据所携带的唯一标识至少部分相同。

所述获取模块,具体用于:

解析所述数据;

判断解析后的所述数据内容是否为空;

如果为空,删除所述数据;

如果不为空,获取所述数据中携带的唯一标识。

一种数据去重的方法,所述方法应用于包括多个下游数据处理设备的系统中,所述系统中还包括:中间设备,所述方法包括:

下游数据处理设备接收所述中间设备发送的数据,所述数据是根据预设的对应关系和所述数据中的携带的唯一标识发送的;

所述下游数据处理设备判断是否存在与所述数据相同的数据;

如果存在,所述下游数据处理设备对所述数据进行数据去重。

相同来源的数据所携带的唯一标识至少部分相同。

所述下游数据处理设备判断是否存在与所述数据相同的数据,具体包括:

所述下游数据处理设备确定出与所述数据属于同一去重周期内获取到的数据;

所述下游数据处理设备在确定出的与所述数据属于同一去重周期内获取到的数据中判断是否存在与所述数据的所述唯一标识具有部分相同的数据;

所述下游数据处理设备对所述数据进行数据去重,具体包括:

所述下游数据处理设备将与所述唯一标识具有部分相同的数据进行合并,以使所述唯一标识具有部分相同的数据只保留一个。

一种下游数据处理设备,应用于包括多个下游数据处理设备和中间设备的系统中,所述系统中还包括:中间设备,所述下游数据处理设备包括:

接收模块,用于接收所述中间设备发送的数据,所述数据是根据预设的对应关系和所述数据中的携带的唯一标识发送的;

判断模块,用于判断是否存在与所述数据相同的数据;

去重模块,如果存在与所述数据相同的数据,用于对所述数据进行数据去重。

相同来源的数据所携带的唯一标识至少部分相同。

所述判断模块,具体用于:

确定出与所述数据属于同一去重周期内获取到的数据;

在确定出的与所述数据属于同一去重周期内获取到的数据中判断是否存在与所述数据的所述唯一标识具有部分相同的数据;

所述去重模块,具体用于:

将与所述唯一标识具有部分相同的数据进行合并,以使所述唯一标识具有部分相同的数据只保留一个。

本发明实施例根据获取的数据中携带的唯一标识和预设的对应关系,确定将所述数据发送到的所述下游数据处理设备,本发明实施例通过将具有相同唯一标识的数据发送到同一下游数据处理设备上,使得一个下游数据处理设备可以对发送的重复数据进行彻底去重,进而使得下游数据处理设备集群对发送的多个重复数据可以进行有效去重。

附图说明

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

图1为现有技术中的一种数据去重流程示意图;

图2为本发明实施例中的一种数据去重的方法流程图之一;

图3为本发明实施例中的一种数据去重的流程图之二;

图4为本发明实施例中的一种数据去重流程示意图;

图5为本发明实施例中的一种中间设备结构示意图;

图6为本发明实施例中的一种下游数据处理设备结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

用户设备会将数据随机发送到任一上游设备中,然后再通过中间设备将数据发送到下游数据处理设备中进行数据去重,具体如图1所示,其中,用户设备1发送了3个数据a到下游数据处理设备中,接收到数据a的下游数据处理设备包括:下游数据处理设备1和下游数据处理设备2,下游数据处理设备1接收到了2个数据a,下游数据处理设备2接收到了1个数据a,通过现有技术中,下游数据处理设备1可以对自身接收到的数据a进行有效去重,但是服务器最终仍会接收到2个数据a,即下游数据处理设备集群不能对多个重复数据进行有效去重,图1中的其他用户终端发送的重复数据同样存在上述问题。

为了解决上述问题,本发明提出了一种数据去重的方法,具体如图2所示,所述方法应用于包括多个下游数据处理设备的系统中,所述方法包括以下步骤:

步骤201,中间设备获取所接收到的数据中携带的唯一标识。

其中,相同来源的数据所携带的唯一标识至少部分相同。

具体的,数据的唯一标识中可以包含发送所述数据的用户设备的唯一标识,如:mac(mediaaccesscontrol,媒体访问控制)信息,也可以为所述用户设备的其他唯一标识,以及其他信息,所述其他信息可以是相同的也可以是不同的,这样可以保证同一用户设备发送的数据中至少有部分标识是相同的,同样也保证了同一用户发送的相同数据中至少存在部分相同的标识,同时,所述数据的唯一标识还可以为根据所述数据的内容为所述数据分发的,其中,相同的数据分发的唯一标识至少部分相同的。所述数据唯一标识的标识方法可以根据实际情况确定,但是凡是可以根据所述唯一标识确定相同数据的标识方法均属于本发明的保护范围。

所述中间设备具体可以为数据分发设备。

所述中间设备获取所述数据中携带的唯一标识,具体包括:

所述中间设备解析所述数据;

所述中间设备判断解析后的所述数据内容是否为空;

如果为空,所述中间设备删除所述数据;

如果不为空,所述中间设备获取所述数据中携带的唯一标识。

具体的,只有在所述数据的内容不为空时才是有效数据,数据处理设备的计算资源只有在处理有效数据时才是被合理的利用,当数据内容为空时,所述数据是无效数据需要所述中间设备删除,避免了浪费下游数据处理设备的计算资源。

步骤202,所述中间设备根据预设的对应关系和所述数据中的所述唯一标识,确定所述数据将要被发送到的所述下游数据处理设备。

具体的,由于下游数据处理设备是根据预设的对应关系和所述数据中的所述唯一标识确定的,因此保证了具有部分相同或全部相同的唯一标识的数据发送到同一下游数据处理设备上。

其中,预设的对应关系是数据携带的唯一标识中相同部分标识和下游数据处理设备唯一标识的对应关系。

建立预设的所述对应关系时,包括:

当所述下游数据处理设备是按照所述数据归属区域进行数据去重时,根据所述数据归属的区域预先建立不同来源的数据的唯一标识和下游数据处理设备唯一标识的对应关系;

当所述下游数据处理设备是按照负载均衡的原则进行数据去重时,根据各个所述下游数据处理设备对应的所述数据预先建立不同来源的数据的唯一标识和下游数据处理设备唯一标识的对应关系;

当所述下游数据处理设备是按照所述数据的类型进行数据去重时,根据所述数据的类型预先建立不同来源的数据的唯一标识和下游数据处理设备唯一标识的对应关系。

具体的,当有多个下游数据处理设备同时处理中间设备转发的数据时,为了保证相同数据发送到同一个下游数据处理设备中,预先建立不同来源的数据的唯一标识和下游数据处理设备唯一标识的对应关系,并且在所述多个下游数据处理设备在共同处理中间设备转发的数据时,为了保证下游数据处理设备集群更高的处理效率,需要根据划分规则对数据进行划分,以使每个下游数据处理设备都可以对中间设备转发的部分数据进行处理,其中,划分规则包括:按数据的归属区域进行划分、按负载均衡的原则进行划分、按数据类型进行划分等,例如:当数据的归属区域进行划分,下游数据处理设备1是负责处理北京地区的数据时,如果发送的数据属于北京地区,即发送数据的用户设备归属北京地区,那么将北京地区中不同来源的数据的唯一标识和下游数据处理设备1的唯一标识确定为对应关系;当按照负载均衡的原则对下游数据处理设备进行划分时,每个下游数据处理设备需要处理标识数目相同的数据,如果此时需要为下游数据处理设备1分配某一标识的数据时,那么将该设备发送的数据的唯一标识和下游数据处理设备1确定为对应关系,当然,按照负载均衡的原则在对下游数据处理设备进行划分时,还可以按照下游数据处理设备处理的用户设备的数量来进行负载均衡,即下游数据处理设备处理相同数目的用户设备发送的数据,本发明的目的是为了让下游数据处理设备按照负载均衡的方式来对数据进行处理,因此所有负载均衡的分配方式均属于本发明的保护范围;当按照数据类型进行划分(所述类型可以以固定设备和移动设备发送数据类型进行划分,还可以以不同的操作系统发送的数据类型进行划分等)时,如果下游数据处理设备1是处理安卓系统发送的数据时,那么将不同数据来源的安卓系统发送的数据的唯一标识与所述下游数据处理设备1的唯一标识确定为对应关系。当然还可以包括其他划分规则,本发明的目的是为了让数据处理的速度更快,因此所有可以加快数据处 理速度的划分规则均属于本发明的保护范围。

步骤203,所述中间设备将所述数据发送到所述下游数据处理设备,以使所述下游数据处理设备对相同数据进行数据去重。

具体的,由于重复数据是在一定时间内产生的概率较大,所述一定时间即为一个去重周期,因此在所述下游数据处理设备对数据进行去重时,所述下游数据处理设备需要确定出属于同一去重周期内获取到的所述数据,例如:所述去重周期为5分钟,当所述下游数据处理设备获取所述中间设备发送的数据时,所述下游数据处理设备获取最近5分钟之内的其他数据,当然所述去重周期还可以为1分钟、3分钟或10分钟等,具体的去重周期可以根据实际情况确定。在所述下游数据处理设备确定出属于同一去重周期内的数据后,筛选出具有相同唯一标识的数据,如果数据的唯一标识是用户设备的唯一标识,那么同一用户设备发送的所有数据都会被分配到同一下游数据处理设备上,此时筛选出的数据为同一用户设备在一个去重周期内发送的所有数据,然后所述下游数据处理设备判断筛选出的数据是否存在相同的数据,如果存在,则进行去重操作,在进行去重操作时,所述下游数据处理设备将具有相同的所述唯一标识的数据进行合并,以使具有相同的所述唯一标识的数据只保留一个;如果数据的唯一标识是根据不同的数据进行分配的,即相同的数据分配相同的唯一标识,不同的数据分配不同的唯一标识,那么同一用户设备发送的不同数据中的唯一标识也是不同的,即同一用户设备发送的不同的数据可能会被分配到不同的下游数据处理设备上,此时需要筛选出同一去重周期内发送的所有数据,然后在确定出的与所述数据属于同一去重周期内获取到的数据中判断是否存在与所述数据具有相同的所述唯一标识的数据,即判断同一去重周期内是否存在唯一标识相同的数据,如果存在则表示所述下游数据处理设备中存在相同的数据,需要进行去重操作,在进行去重操作时,所述下游数据处理设备将具有相同的所述唯一标识的数据进行合并,以使具有相同的所述唯一标识的数据只保留一个。

本发明实施例根据获取的数据中携带的唯一标识和预设的对应关系,确定将所述数据发送到的所述下游数据处理设备,本发明实施例通过将具有相同唯一标识的数据发送到同一下游数据处理设备上,使得一个下游数据处理设备可以对发送的重复数据进行彻底去重,进而使得下游数据处理设备集群 对发送的多个重复数据可以进行有效去重。

本发明还提出了一种数据去重的方法,具体如图3所示,所述方法应用于包括多个下游数据处理设备的系统中,所述系统中还包括:中间设备,所述方法包括:

步骤301,下游数据处理设备接收所述中间设备发送的数据,所述数据是根据预设的对应关系和所述数据中的携带的唯一标识发送的;

步骤302,所述下游数据处理设备判断是否存在与所述数据相同的数据。如果存在,则执行步骤303,如果不存在,则结束流程。

步骤303,所述下游数据处理设备对所述数据进行数据去重。

相同来源的数据所携带的唯一标识至少部分相同。

所述下游数据处理设备判断是否存在与所述数据相同的数据,具体包括:

所述下游数据处理设备确定出与所述数据属于同一去重周期内获取到的数据;

所述下游数据处理设备在确定出的与所述数据属于同一去重周期内获取到的数据中判断是否存在与所述数据的所述唯一标识具有部分相同的数据;

所述下游数据处理设备对所述数据进行数据去重,具体包括:

所述下游数据处理设备将与所述唯一标识具有部分相同的数据进行合并,以使所述唯一标识具有部分相同的数据只保留一个。

其中,具体的数据去重过程在上述方法中已有详细说明,在此不再一一赘述。

本发明实施例根据获取的数据中携带的唯一标识和预设的对应关系,确定将所述数据发送到的所述下游数据处理设备,本发明实施例通过将具有相同唯一标识的数据发送到同一下游数据处理设备上,使得一个下游数据处理设备可以对发送的重复数据进行彻底去重,进而使得下游数据处理设备集群对发送的多个重复数据可以进行有效去重。

为了进一步阐述本申请的技术思想,现结合具体的应用场景,对本申请的技术方案进行说明,具体如图4所示,其中,数据的唯一标识是用户设备的唯一标识,如:mac信息,预先建立的对应关系为:用户设备1的mac信息对应的下游数据处理设备为下游数据处理设备1,具体步骤如下:

1、数据转发设备在接收到上游设备转发的数据时,数据转发设备获取数 据中的mac信息,其中,数据是用户设备1发送的,此时mac信息为用户设备1的mac信息;

2、数据转发设备根据mac信息和对应关系确定将要发送到的下游数据处理设备为下游数据处理设备1;

3、数据转发设备将数据转发到下游数据处理设备1中;

4、下游数据处理设备1确定与所述数据属于同一去重周期内获取到的数据;

5、下游数据处理设备1在确定出的与所述数据属于同一去重周期内获取到的数据中确定出与所述数据具有相同唯一标识的数据;

6、下游数据处理设备1在确定出的与所述数据具有相同唯一标识的数据中判断是否存在相同的数据;

7、如果存在,下游数据处理设备1将具有相同的所述唯一标识的数据进行合并,以使具有相同的所述唯一标识的数据只保留一个,即下游数据处理设备1中只保留一个所述数据。

基于与上述方法同样的申请构思,本发明提出了一种中间设备,如图5所示,所述中间设备应用于包括多个下游数据处理设备的系统中,所述中间设备包括:

获取模块51,用于获取所接收到的数据中携带的唯一标识;

确定模块52,用于根据预设的对应关系和所述数据中的所述唯一标识,确定所述数据将要被发送到的下游数据处理设备;

发送模块53,用于将所述数据发送到所述下游数据处理设备,以使所述下游数据处理设备对相同数据进行数据去重。

相同来源的数据所携带的唯一标识至少部分相同。

所述获取模块,具体用于:

解析所述数据;

判断解析后的所述数据内容是否为空;

如果为空,删除所述数据;

如果不为空,获取所述数据中携带的唯一标识。

其中,具体的数据去重过程在上述方法中已有详细说明,在此不再一一赘述。

本发明实施例根据获取的数据中携带的唯一标识和预设的对应关系,确定将所述数据发送到的所述下游数据处理设备,本发明实施例通过将具有相同唯一标识的数据发送到同一下游数据处理设备上,使得一个下游数据处理设备可以对发送的重复数据进行彻底去重,进而使得下游数据处理设备集群对发送的多个重复数据可以进行有效去重。

基于与上述方法同样的申请构思,本发明还提出了一种下游数据处理设备,具体如图6所示,应用于包括多个下游数据处理设备和中间设备的系统中,所述系统中还包括:中间设备,所述下游数据处理设备包括:

接收模块61,用于接收所述中间设备发送的数据,所述数据是根据预设的对应关系和所述数据中的携带的唯一标识发送的;

判断模块62,用于判断是否存在与所述数据相同的数据;

去重模块63,如果存在与所述数据相同的数据,用于对所述数据进行数据去重。

相同来源的数据所携带的唯一标识至少部分相同。

所述判断模块,具体用于:

确定出与所述数据属于同一去重周期内获取到的数据;

在确定出的与所述数据属于同一去重周期内获取到的数据中判断是否存在与所述数据的所述唯一标识具有部分相同的数据;

所述去重模块,具体用于:

将与所述唯一标识具有部分相同的数据进行合并,以使所述唯一标识具有部分相同的数据只保留一个。

其中,具体的数据去重过程在上述方法中已有详细说明,在此不再一一赘述。

本发明实施例根据获取的数据中携带的唯一标识和预设的对应关系,确定将所述数据发送到的所述下游数据处理设备,本发明实施例通过将具有相同唯一标识的数据发送到同一下游数据处理设备上,使得一个下游数据处理设备可以对发送的重复数据进行彻底去重,进而使得下游数据处理设备集群对发送的多个重复数据可以进行有效去重。

本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可 读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。

以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到至少两个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1