CN105227352B - 一种用户标识集的更新方法及装置 - Google Patents
一种用户标识集的更新方法及装置 Download PDFInfo
- Publication number
- CN105227352B CN105227352B CN201510558014.XA CN201510558014A CN105227352B CN 105227352 B CN105227352 B CN 105227352B CN 201510558014 A CN201510558014 A CN 201510558014A CN 105227352 B CN105227352 B CN 105227352B
- Authority
- CN
- China
- Prior art keywords
- user identifier
- updated
- collection
- user
- unique identification
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种用户标识集的更新方法,用以在获得新增的用户标识时,使用新增的用户标识更新由识别出的、由表示同一用户的用户标识构成的用户标识集。方法包括:获得用户标识和待更新的用户标识集,并在获得的用户标识中,确定在同一业务行为中表示同一用户的用户标识之间的关联关系;对获得的用户标识和待更新的用户标识集中的用户标识进行聚类,得到更新后的用户标识集;根据更新后的用户标识集中的用户标识是否已包含唯一标识的判断结果,分别确定每个更新后的用户标识集的唯一标识,并建立唯一标识与更新后的用户标识集中各用户标识之间的映射关系。本申请还公开一种用户标识集的更新装置。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种用户标识集的更新方法及装置。
背景技术
随着互联网技术的日益革新,在互联网上进行广告投放也越来越成为广告投放的主要途径。广告商在进行广告投放时,往往希望在确定出用户的需求后,根据该需求,通过多种渠道对该用户进行广告投放。
目前,用户往往可以通过不同的终端设备进行上网活动,比如,用户可以通过个人电脑(Personal Computer,PC)、智能手机、平板电脑以及智能电视等终端设备进行网上活动。在进行上网活动的过程中,用户往往使用不同的用户账号对互联网上的不同数据平台进行浏览,比如,用户使用新浪账号登录新浪微博,用户使用百度账号登录百度贴吧,用户使用腾讯账号登录腾讯微博,以及用户使用网易账号登录网易邮箱,等等。
基于用户上网活动的上述特点,可以向同一用户的不同终端设备进行广告投放。例如,假设同一用户分别使用手机以及平板电脑登录了新浪微博,则广告商期望根据该用户的需求,向该用户的手机以及平板电脑均投放广告。或者,还可以针对同一用户在浏览不同数据平台时使用的不同账号进行广告投放。例如,假设同一用户使用新浪账号浏览新浪微博,使用百度账号浏览百度贴吧,则广告商期望根据该用户的需求,针对该用户的新浪账号以及百度账号均投放广告。
达到上述目的的关键在于,从获取到的不同用户标识中,准确识别出属于同一用户的各用户标识。
目前,采用一些现有技术,比如人工识别等,可以实现从获取到的不同用户标识中,准确识别出属于同一用户的各用户标识。其中,由识别出的、由表示同一用户的用户标识构成的集合,可称为用户标识集。然而,当获得新增的用户标识后,如何根据新增的用户标识更新用户标识集,现有技术还没有提供成熟的解决手段。
需要说明的是,同一用户的不同用户标识可以是下述标识中的至少一种:
保存在终端设备的、可作为用户标识的终端设备唯一标识(如终端设备的MAC地址等);
用户在使用不同的终端设备进行上网活动时,产生并保存在不同终端设备上的用户标识(如cookie等);
用户对不同的数据平台进行访问时,使用不同的用户标识(如注册账号、用户名等)。
发明内容
本申请实施例提供一种用户标识集的更新方法,用以在获得新增的用户标识时,使用新增的用户标识更新由识别出的、由表示同一用户的用户标识构成的用户标识集。
本申请实施例还提供一种用户标识集的更新装置,用以在获得新增的用户标识时,使用新增的用户标识更新由识别出的、由表示同一用户的用户标识构成的用户标识集。
本申请实施例采用下述技术方案:
一种用户标识集的更新方法,包括:
获得用户标识和待更新的用户标识集,并确定获得的用户标识中的、在同一业务行为中表示同一用户的用户标识之间的关联关系;其中,获得的用户标识包括:不同终端设备保存的用户标识,和/或用户在浏览数据平台时使用的用户标识;其中,每个用户标识集由表示同一用户的用户标识构成,每个用户标识集的各用户标识中,均包含该用户标识集对应的唯一标识;根据所述关联关系和获得的用户标识,构建第一分布式连通子图,并利用构建的第一分布式连通子图和基于待更新的用户标识集构建的第二分布式联通子图,对获得的用户标识和待更新的用户标识集中的用户标识进行聚类,得到更新后的用户标识集;根据更新后的用户标识集中的用户标识是否已包含唯一标识的判断结果,分别确定每个更新后的用户标识集的唯一标识,并建立唯一标识与更新后的用户标识集中各用户标识之间的映射关系。
一种用户标识集的更新装置,包括:
获取单元,用于获得用户标识和待更新的用户标识集,并在获得的用户标识中,确定在同一业务行为中表示同一用户的用户标识之间的关联关系;其中,获得的用户标识包括:不同终端设备保存的用户标识;和/或用户在浏览数据平台时使用的用户标识;其中,每个用户标识集由表示同一用户的用户标识构成,每个用户标识集的各用户标识中,均包含该用户标识集对应的唯一标识;分布式连通子图处理单元,用于根据所述关联关系和获得的用户标识,构建第一分布式连通子图,并利用构建的第一分布式连通子图和基于待更新的用户标识集构建的第二分布式联通子图,对获得的用户标识和待更新的用户标识集中的用户标识进行聚类,得到更新后的用户标识集;唯一标识确定单元,用于根据更新后的用户标识集中的用户标识是否已包含唯一标识的判断结果,分别确定每个更新后的用户标识集的唯一标识,并建立唯一标识与更新后的用户标识集中各用户标识之间的映射关系。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:
由于可以根据获得的用户标识,以及在获得的用户标识中确定的、在同一业务行为中表示同一用户的用户标识之间的关联关系,采用构建分布式连通子图的方式,对待更新的、由表示同一用户的用户标识构成的用户标识集进行更新,从而提供了一种支持根据新增的用户标识更新所述用户标识集的方案。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例提供的一种用户标识集的更新方法的具体实现流程示意图;
图2为本申请实施例提供的分布式连通子图的具体示意图;
图3为本申请实施例提供的通过分布式连通子图进行聚类的具体实现流程示意图;
图4为本申请实施例提供的分布式连通子图的具体示意图;
图5为本申请实施例提供的分布式连通子图的具体示意图;
图6为本申请实施例提供的分布式连通子图的具体示意图;
图7为本申请实施例提供的分布式连通子图的具体示意图;
图8为本申请实施例提供的分布式连通子图的具体示意图;
图9为本申请实施例提供的分布式连通子图的具体示意图;
图10为本申请实施例提供的一种用户标识集的更新装置的具体结构示意图;
图11为本申请实施例提供的一种用户标识处理系统的具体实现流程图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
以下结合附图,详细说明本申请各实施例提供的技术方案。
实施例1
本申请实施例提供一种用户标识集的更新方法,用以在获得新增的用户标识时,使用新增的用户标识更新由识别出的、由表示同一用户的用户标识构成的待更新的用户标识集。该方法的具体流程示意图如图1所示,主要包括下述步骤:
步骤11,获得用户标识和待更新的用户标识集,并确定获得的用户标识中的、在同一业务行为中表示同一用户的用户标识之间的关联关系;
需要说明的是,其中所述的用户标识包括:不同终端设备保存的用户标识;和/或用户在浏览数据平台时使用的用户标识。获得的待更新的用户标识集的数量,可以是一个,也可以是一个以上。其中,每个用户标识集由表示同一用户的用户标识构成,每个用户标识集的各用户标识中,均包含该用户标识集对应的唯一标识。
本申请实施例中,步骤11中获得的用户标识,是用于更新所述待更新的用户标识集的用户标识。获得的用户标识与所述待更新的用户标识集的用户标识的关系,可能是:完全不同、部分相同或者完全相同,这取决于实际情况。此外,获得的用户标识可能表示同一用户,也可以表示至少两个不同的用户,这也取决于实际情况。
本申请实施例中所述的用户标识,具体而言,可以有以下三种:
1、用户使用不同终端设备进行上网活动时,产生并保存在不同终端设备上的用户标识。例如,假设用户通过手机访问新浪微博时,产生cookie1并保存在手机上;该用户通过电脑访问新浪微博时,产生cookie2并保存在电脑上。则所述cookie1以及cookie2均可以作为该用户在不同终端设备上进行上网活动时的用户标识。
2、保存在终端设备的、可作为用户标识的终端设备唯一标识。例如,假设用户通过手机访问新浪微博,该手机的媒体访问控制(Media Access Control,MAC)地址为MAC1;该用户通过平板电脑访问新浪微博,该平板电脑的MAC地址为MAC2;则所述手机的MAC地址MAC1以及所述平板电脑的MAC地址MAC2作为该用户的用户标识。
3、用户对不同的数据平台进行访问时使用的、可作为用户标识的用户认证信息。例如,用户使用新浪账号访问新浪微博,使用百度账号访问百度贴吧,使用京东账号访问京东商城,则用户的新浪账号、百度账号以及京东账号均可以作为该用户的用户标识。
在一种实施方式中,获得的用户标识可以包括:用户(用户数量不限)所使用的不同终端设备的唯一标识、用户(用户数量不限)使用不同终端设备访问同一数据平台时产生的用户标识(如cookie等)和/或用户(用户数量不限)通过不同终端设备对不同数据平台访问时分别使用的用户标识(如,用户账号、用户名等),等。
需要说明的是,其中的用户标识可以从服务器的系统日志中获得。例如,假设用户通过MAC地址为“MAC1”的手机使用“购物网站账号1”访问某购物网站时,购物网站服务器会在系统日志中记录“MAC地址为‘MAC1’的手机使用‘购物网站账号1’访问某购物网站”这条日志记录,该日志记录中包含用户标识:“MAC1”以及“购物网站账号1”。当需要获取用户标识时,数据收集系统可以通过向购物网站服务器发送请求,以触发购物网站服务器发回“MAC1”以及“购物网站账号1”。
此外,用户标识也可以从用户使用的终端设备处获取。比如,同一用户使用不同终端设备进行上网活动时,可以产生特定的用户标识并保存在不同终端设备上。例如,假设用户通过手机访问新浪微博时,则可以产生作为用户标识的cookie1并保存在手机上;该用户通过电脑访问新浪微博时,则可以产生作为用户标识的cookie2并保存在电脑上。所述cookie1以及cookie2均可以作为该用户在不同终端设备上进行上网活动时的用户标识。本申请实施例中,数据收集系统可以通过向用户使用的终端设备发送用户标识获取指令的方式,以触发终端设备向数据收集系统反馈用户标识。
例如,同一用户使用不同终端设备进行上网活动时,假设下述条件成立:
1、使用MAC地址为“MAC1”的手机访问微博网站的服务器时,产生“cookie1”并保存在手机上;
2、使用MAC地址为“MAC2”的平板电脑访问微博网站的服务器时,产生“cookie2”并保存在平板电脑上;
3、访问微博网站的服务器时使用的账号为“123456”,并且,在登录微博网站的服务器成功后,该账号保存在该服务器处。
其中,可以从手机、平板电脑以及微博网站的服务器本地,分别获得用户标识“MAC1和cookie1”、“MAC2和cookie2”以及“123456”。采用类似方式,微博网站的服务器可以获取不同用户的用户标识。
需要说明的是,举例而言,针对“用户使用手机访问新浪微博”这一业务行为而言,该用户使用的手机的MAC地址,访问的新浪微博账号以及基于该访问产生的cookie,为在“用户使用手机访问新浪微博”这一业务行为中表示同一用户的用户标识。则确定该手机MAC地址、访问的新浪微博账号以及访问产生的cookie之间存在关联关系。
又比如,针对“用户使用同一平板电脑利用数据平台账号登录数据平台”这一业务行为而言,该平板电脑的MAC地址以及该数据平台账号,为在“用户使用同一平板电脑利用数据平台账号登录数据平台”这一业务行为中表示同一用户的用户标识。则确定该平板电脑的MAC地址以及该数据平台账号之间存在关联关系。
在一种实施方式中,为了可以对用户标识进行高效的聚类,本申请实施例中,数据收集系统可以对获得的用户标识通过如下的两种方式进行预处理,具体包括:
方式1:对获得的需要进行数据清洗的第一标识进行数据清洗。
需要说明的是,所述的数据清洗,具体可以包括:去除用户标识中的不可用字符;和/或去除重复的用户标识。
其中,所述的不可用字符一般为:空格、null、以及汉字等。例如,假设获得的用户标识为“weibo 123456马甲789”,则通过数据清洗,将该用户标识中的空格以及汉字“马甲”这样的不可用字符进行去除,则经过数据清洗后的用户标识为“weibo123456789”。
一般地,用户通过相同的终端设备对同一个数据平台进行访问时,会产生cookie,当用户使用相同的终端设备多次对同一个数据平台进行访问时,则会产生多个相同的cookie。
例如,用户使用同一部手机分别访问了三次新浪微博,每次访问均产生一个cookie-1,则将获得到3个相同的cookie-1,则需要通过数据清洗,去除两个相同的cookie-1,只保留一个cookie-1。
方式2:为清洗后的第一标识,以及获得的无需进行数据清洗的第一标识分别添加预定的属性信息。
需要说明的是,为了便于对获得的用户标识进行管理以及处理,在一种实施方式中,其中预定的属性信息可以为:用户标识的类型信息以及用户标识的日期信息(如,用户标识最近一次出现的日期的信息)。
例如,假设用户使用新浪账号“456789123”在2015年7月20日访问了新浪微博,获得的用户标识为新浪账号“456789123”,则通过方式3提供的预处理方法,对获得的用户标识“456789123”添加类型信息:“weibo”以及日期信息:“20150720”,经过预处理后得到的用户标识为“456789123:[tag:weibo,date:20150720]”。
还需要说明的是,为了降低预处理的处理时间,在一种实施方式中,一般先通过方式1提供的预处理方法,去除重复的用户标识,再进一步的对去除重复后的用户标识进行诸如方式2所述的预处理。
在一种实施方式中,获得所述的待更新的用户标识集的方法,包括:获得用于生成待更新的用户标识集的用户标识,并确定用于生成待更新的用户标识集的用户标识中的、在同一业务行为中表示同一用户的用户标识之间的关联关系;根据确定出的关联关系和用于生成待更新的用户标识集的用户标识,构建分布式连通子图;利用构建的分布式连通子图,对用于生成待更新的用户标识集的用户标识进行聚类,得到待处理的用户标识集;采用MD5签名技术,分别对聚类得到的每个待处理的用户标识集生成唯一标识;将待处理的用户标识集中的各用户标识转化为二元关系数据,即将待处理的用户标识集中的各用户标识转化为(待处理的用户标识集的唯一标识,唯一标识)的形式。其中,转化后得到的各二元关系数据构成的集合,即为所述的待更新的用户标识集。
其中,所述分布式连通子图中的节点表示用于生成待更新的用户标识集的用户标识,所述分布式连通子图中用于连接两个节点的边表示该两个节点所表示的用户标识之间具有关联关系。
需要说明的是,待更新的用户标识集中用户标识之间的关联关系,可以是直接的关联关系,也可以是间接的关联关系。
其中,不同用户标识之间有直接的关联关系,是指不同用户标识与同一业务行为相关联;不同用户标识之间有间接的关联关系,是指不同用户标识虽然没有与同一业务行为相关联,但所述不同用户标识与至少一个其他用户标识相关联。
在一种实施方式中,所述的分布式连通子图,可以由Map/reduce模型构建,进而将获得的、用于生成待更新的用户标识集的用户标识分别分配到构建的分布式连通子图的各个节点上,并根据用于生成待更新的用户标识集的用户标识中的、在同一业务行为中表示同一用户的用户标识之间的关联关系(即直接关联关系),在彼此之间具有直接关联关系的节点间生成边,从而使得具有直接关联关系的节点连接到一起。
例如,假设用户使用同一部手机,分别通过新浪账号“xinlang”访问了新浪微博,通过百度账号“baidu”访问了百度贴吧,且该手机的MAC地址为MAC-1,则获得的用于生成待更新的用户标识集的用户标识为:“MAC-1”、“xinlang”、“baidu”。若进一步假设“MAC-1”与“xinlang”存在关联关系,且“MAC-1”与“baidu”存在关联关系。则构建的分布式连通子图如图2所示,其中,图2中的圆形表示节点,圆形中的字符表示分配给节点的用户标识(即用于生成待更新的用户标识集的用户标识),而圆形之间的线段表示节点之间的边,即表示节点间存在的直接关联关系。
在一种实施方式中,利用构建的分布式连通子图,对用于生成待更新的用户标识集的用户标识进行聚类,以得到待更新的用户标识集,具体包括如图3所示的四个阶段。需要说明的是,在描述该四个阶段时,不再特别说明分配给节点的用户标识为“用于生成待更新的用户标识集的用户标识”,而直接就以分配给节点的是“用户标识”进行说明。
1、Map阶段:
通过Map阶段,将初始的无向图,转化为有向图,从而实现将节点转化为边,即由节点间的边来表示节点。
其中所述的无向图是指边没有方向的图,所述的有向图为边具有方向的图,假设如图4所示分布式连通子图,当该分布式连通子图为无向图时,则该分布式连通子图中边的集合为:{(1,2),(1,3),(2,3)}。当该分布式连通子图为有向图时,则该分布式连通子图中边的集合为:{(1,2),(1,3),(2,1),(2,3),(3,1),(3,2)}。
若节点的取值是节点上被分配的用户标识,那么,假设分布式连通子图中的两个节点u和v,节点u的取值为lu,节点v的取值为lv,则Map阶段中将节点转化为边的具体实现方式如下:
上述实现方式的含义在于:
当节点u的取值与节点v的取值相等,即lu=lv成立时,说明所述两个节点上被分配的用户标识为相同的用户标识,即所述的两个节点为同一个节点,从而执行emit(u,v),以使得节点u和v均转化为边(u,v)。
当节点u的取值与节点v的取值不相等,即lu≠lv成立时,说明所述两个节点上被分配的用户标识为不同的用户标识,从而执行emit(u,v)和emit(v,u),以实现节点u与节点v分别转化为两条边(u,v)和(v,u)。
需要说明的是,为了便于Reduce阶段对分布式连通子图中节点的聚类,在一种实施方式中,从Map阶段进入Reduce阶段之前,还可以将可能聚类到同一簇的节点放入同一个分区,以便提高聚类过程的效率。
具体而言,本申请实施例中,从Map阶段进入Reduce阶段之前,可以将具备间接关联关系的节点放入同一个分区,和/或将同一节点及其所有相邻节点放入同一个分区。
其中,“将具备间接关联关系的节点放入同一个分区”的过程,可以称为“分区阶段”。以下举例说明分区阶段的实现过程:
假设经过Map阶段得到如图5所示的有向图,由图可以得出,节点1、节点4、节点6、节点10以及节点12可能聚类到同一簇,节点3、节点7以及节点9可能聚类到同一簇,则经过分区阶段,将图5所示的分布式连通子图转化为图6所示的分布式连通子图,以实现将具备间接关联关系的节点放入同一个分区。
本申请实施例中,“将同一节点及其所有相邻节点放入同一个分区”的过程,可以称为“排序阶段”。其中,某节点的相邻节点,是指与所述某节点之间存在边的节点。以下举例说明排序阶段的实现过程:
如图7所示,节点a的相邻节点构成的集合分别为:{节点3,节点4,节点10},{节点7,节点9,节点16},则通过排序阶段,将上述的两个分布式连通子图中的各节点放入同一分区。
需要说明的是,经过分区阶段和/或排序阶段的处理,以使得将可能聚类到同一簇的节点放入同一个分区,进而可以进入Reduce阶段。
2、Reduce阶段:
若假设节点v以及节点v的邻居节点集合为Γ(v),取值最小的节点为vmin,并将集合Γ(v)中除去取值最小的节点的剩余节点与节点v组成集合Γ+(v),则Reduce阶段的目的,是将节点v与节点v的邻居节点集合Γ(v)的边转化为节点vmin与节点集合Γ+(v)的边。
其中,所述的取值最小的节点,是通过比较各个节点上被分配的用户标识得到的。例如,假设两个节点上被分配的用户标识可以转换为字符串1和字符串2,则可以确定通过逐位比较两个字符串中各字符大小的方式,判断两个字符串哪个更小,并将较小的字符串对应的用户标识,确定为较小的用户标识。本申请实施例中,逐位比较两个字符串中各字符大小,可以是指逐位比较字符串中各字符的ASCII编码的大小。需要说明的是,当作为比较对象的两个字符串的长度不一致时,可以仅比较较短的字符串包含的各字符与较长的字符串包含的相应数目的各字符串。
需要说明的是,可以通过计算机程序语言将Reduce阶段的具体实现方式表示如下:
1)、输入:v和Γ(v)={w|(v,w)∈E};
2)、求最小节点:
3)、输出局部子图结果:
通过获得节点v以及节点v所对应的邻居节点集合Γ(v)中取值最小的节点vmin,从而执行以使得节点v与邻居节点集合Γ(v)的边转化为节点vmin与节点集合Γ+(v)的边。
例如,假设如图8所示,对图中取值为6的节点以及该节点所对应的邻居节点集合{2,5,7,9},进行Reduce阶段处理,经过处理后,输出的结果如图9所示。
3、聚类阶段:
利用确定的关联关系,对经过Reduce阶段处理后输出局部子图结果进行聚类,以使得具有关联关系的用户标识聚类到同一用户标识集。聚类阶段的输出为用户标识集。
其中,这里所说的确定的关联关系,指确定出的、在同一业务行为中表示同一用户的用户标识之间的关联关系。
特别地,当用户标识为用于生成待更新的用户标识集的用户标识时,所述关联关系,是指用于生成待更新的用户标识集的用户标识中的、在同一业务行为中表示同一用户的用户标识之间的关联关系。
4、判断迭代收敛阶段:
根据设置的迭代收敛条件,判断聚类阶段输出的用户标识集是否满足迭代收敛条件。
需要说明的是,通过分布式连通子图进行聚类是一个需要不断迭代的计算过程,因此迭代收敛条件的设置,决定了最终聚类结果是否正确,以及迭代的次数。
假设,设置迭代收敛条件如下:
其中,此处的Γ(v)为聚类阶段输出的单个用户标识集,比如可以假设该用户标识集包含节点v及其邻居节点;
vmin表示该单个用户标识集Γ(v)中的取值最小的节点的值,
vmax表示单个用户标识集Γ(v)中的取值最大的节点的值,
则,基于上述迭代收敛条件判断聚类结果是否收敛具体为:
针对聚类阶段输出的每个用户标识集分别执行下述操作:
判断该用户标识集中的节点是否满足上述设置的迭代收敛条件,当该用户标识集中的节点满足迭代条件时,可以判定该用户标识集所在的分布式连通子图的局部区域达到收敛,从而输出该用户标识集;当该用户标识集中的节点不满足迭代条件时,则继续重复Map阶段、Reduce阶段、聚类阶段和判断迭代收敛阶段。
例如,假设设置的迭代收敛条件为:1<v≤50,即vmin=1,vmax=50,则当通过聚类阶段得到的分布式连通子图中各节点的值为{2,5,7,9,20,30,40}时,则该用户标识集满足迭代收敛条件;当通过聚类阶段得到的分布式连通子图中各节点的值为{2,5,7,9,20,30,40,50,60,70}时,则该用户标识集不满足迭代收敛条件,并重复Map阶段、Reduce阶段、聚类阶段和判断迭代收敛阶段。
或者,基于上述迭代收敛条件判断聚类结果是否收敛具体为:
判断聚类阶段输出的每个用户标识集的节点是否均满足上述设置的迭代收敛条件,在判断结果为是时,可以判定对于用户标识的聚类达到全局收敛,从而输出聚类得到的各用户标识集;当该用户标识集中的节点不满足迭代条件时,则继续重复Map阶段、Reduce阶段、聚类阶段和判断迭代收敛阶段,直至判断出对于用户标识的聚类达到全局收敛。
需要说明的是,通过设置的迭代收敛条件,可以将迭代次数控制在较低的范围内,进而减少了进行迭代计算时所占用的处理资源以及处理时间。
在一种实施方式中,本申请实施例还可以对通过分布式连通子图聚类得到的待处理的用户标识集进行指标监控,以衡量上述利用分布式连通子图进行用户标识聚类的算法的优劣。其中,所述的待处理的用户标识集的指标包括:准确率、打通率以及ID丢失率。
需要说明的是,在介绍上述指标时,不再特别说明用户标识为“获得的、用于生成待更新的用户标识集的用户标识”,而直接就以“获得的用户标识”进行说明。
具体地,准确率用来衡量上述聚类方法针对单个用户的正确性。具体计算准确率的方式可以如下式所示:
其中,N为获得的各用户标识分别所属的用户的总数目;n为N个用户的编号,取值范围为[1,N];Mn0为获得的用户标识中归属于第n个用户的用户标识的数目;Mn1为获得的、归属于第n个用户的待更新的用户标识集中包含的用户标识的数目。
本申请实施例中,可以通过抽样的方式,实现通过上述公式计算针对某用户的所述准确率。
打通率,是用来衡量单个待更新的用户标识集的打通效果的指标。其中,所述的打通是指,在聚类得到的同一待更新的用户标识集中,存在至少两个不同的用户标识。具体的计算方法如下:
其中,#num_through_uv是指单个待更新的用户标识集包含的用户标识的数目,#uid是指获得的归属于特定用户的用户标识的数量,其中,这里所说的特定用户,是指该单个待更新的用户标识集中的用户标识归属的用户。
ID丢失率,是指获得的、归属于单个用户的用户标识中,没有聚类到某个用户标识集中的用户标识的数量在获得的该单个用户的用户标识总数量中的占比。具体的计算方法如下:
其中,#num_before_id是指获得的该用户的用户标识的总数量,#num_after_id是指聚类得到的该待更新的用户标识集包含的用户标识的数量。
步骤12,根据通过执行步骤11确定的关联关系和通过执行步骤11获得的用户标识(为便于描述,后称新增的用户标识),构建第一分布式连通子图,并利用构建的第一分布式连通子图和基于待更新的用户标识集构建的第二分布式联通子图,对获得的用户标识和待更新的用户标识集中的用户标识进行聚类,得到更新后的用户标识集;
其中,构建分布式连通子图的方式,可以参照前文所述的实现方式,此处不再赘述。
本申请实施例中,步骤12的具体实现过程可以包括如下步骤:
子步骤1:将新增的用户标识转化为二元关系数据,具体转化方式,可以参见前文记载的Map阶段中将节点转化为边的方式,此处不再赘述;
子步骤2:利用经过子步骤1处理后的新增的用户标识构建第一分布式连通子图,并利用构建的第一分布式连通子图和基于待更新的用户标识集构建的第二分布式联通子图,对获得的用户标识和待更新的用户标识集中的用户标识进行聚类,得到更新后的用户标识集。
还需要说明的是,当得到的更新后的用户标识集中含有“待更新的用户标识集的唯一标识(后简写为唯一标识1)”时,则仍用该“唯一标识1”作为更新后的用户标识集的唯一标识;当得到的更新后的用户标识集中不含有“唯一标识1”时,则为该更新后的用户标识集生成新的唯一标识,如“唯一标识2”。
例如,若假设下述条件成立:
1、待处理的用户标识集的唯一标识为:“sduid”,且待处理的用户标识集中的用户标识表示为:<sduid,{"uid":uid1,"ustat":[ustat1,ustat2],"subp":[subp1,subp2]}>,经过转化后的待更新的用户表示集中的用户标识为:<uid|uid1,sduid>,<ustat|ustat1,sduid>,<ustat|ustat2,sduid>,<subp|subp1,sduid>,<subp|subp2,sduid>;
2、获得的新增的用户标识表示为:<uid|uid1,ustat|ustat3,subp|subp3>,<uid|uid2,ustat|ustat4,subp|subp4>;
则根据新增的用户标识对待更新的用户标识集进行更新的具体过程为:
a、将获得的各新增的用户标识转化为二元关系数据,转化后,各新增用户标识分别表示为:<uid|uid1,ustat|ustat3>,<ustat|ustat3,subp|subp3>,<uid|uid2,ustat|ustat4>,<ustat|ustat4,subp|subp4>。具体转化方式,可以参见前文记载的Map阶段中将节点转化为边的方式,此处不再赘述。
b、利用分布式连通子图,对转化后的所有用户标识(包括待更新的用户标识集中的用户标识和新增的用户标识)进行聚类,使得具备直接或间接关联关系的用户标识聚类到一个集合中,以得到聚类后的结果。本申请实施例中,对转化后的所有用户标识(包括待更新的用户标识集中的用户标识和新增的用户标识)进行聚类的实现方式,与前文记载的对第一标识进行聚类的实现方式类似,此处不再赘述。
继续沿用上例,聚类后的结果可以表示为:
结果(1):<uid1\t uid|uid1,ustat|ustat1,ustat|ustat2,ustat|ustat3,sduid,subp|subp1,subp|subp2,subp|subp3>;
结果(2):<uid2\t uid|uid2,ustat|ustat4,subp|subp4>。
步骤13,分别确定每个更新后的用户标识集的唯一标识,并建立唯一标识与相应的更新后的用户标识集中各用户标识之间的映射关系。
需要说明的是,在一种实施方式中,可以采用MD5签名技术,分别对每个更新后的用户标识集生成唯一标识。具体的,利用MD5签名技术,对聚类后处于分布式连通子图中心的节点上被分配的用户标识进行签名,生成该用户标识集的唯一标识。其中,所述的聚类后处于分布式连通子图中心的节点,可以是指利用构建的分布式连通子图,对用于生成待更新的用户标识集的用户标识进行聚类时,经过Reduce阶段处理后得到的取值最小的节点。
此外,还可以采用下述方式,分别确定每个更新后的用户标识集的唯一标识:
针对得到的各更新后的用户标识集分别执行下述步骤:
判断该更新后的用户标识集中,是否存在包含有待更新的用户标识集的唯一标识的用户标识;当判断结果为是时,将该唯一标识确定为该更新后的用户标识集的唯一标识;当判断结果为否时,按照设定的生成方法,为该更新后的用户标识集生成唯一标识。
例如,若假设下述条件成立:
1、待更新的用户表示集中的用户标识为:<uid|uid1,sduid>,<ustat|ustat1,sduid>,<ustat|ustat2,sduid>,<subp|subp1,sduid>,<subp|subp2,sduid>,其中,“sduid”为的待更新的用户标识集的唯一标识;
2、获得的新增的用户标识表示为:<uid|uid1,ustat|ustat3,subp|subp3>,<uid|uid2,ustat|ustat4,subp|subp4>;
3、聚类后得到的更新后的用户标识集的结果表示为:
结果(1):<uid1\t uid|uid1,ustat|ustat1,ustat|ustat2,ustat|ustat3,sduid,subp|subp1,subp|subp2,subp|subp3>;
结果(2):<uid2\t uid|uid2,ustat|ustat4,subp|subp4>。
则对上述更新后的用户标识集进行判断,其中,结果(1)中包含有唯一标识“sduid”,将结果(1)的更新后的用户标识集:<uid1\t uid|uid1,ustat|ustat1,ustat|ustat2,ustat|ustat3,sduid,subp|subp1,subp|subp2,subp|subp3>转化为统一的格式,表示为:<sduid,{"uid":uid1,"ustat":[ustat1,ustat2,ustat3],"subp":[subp1,subp2,subp3]}>,并仍以“sduid”作为该用户标识集的唯一标识。
而其中,结果(2)中不包含有唯一标识“sduid”,将结果(2)的更新后的用户标识集:<uid2\t uid|uid2,ustat|ustat4,subp|subp4>转化为统一的格式,表示为:<sduid_new,{"uid":uid2,"ustat":ustat4,"subp":subp4}>,并为该用户标识集生成唯一标识。
需要说明的是,利用分布式连通子图进行聚类的目的是使每个经过聚类得到的用户标识集中都只包含同一个用户的不同用户标识,而由于一些异常情况,上述聚类方法可能将不属于同一用户的用户标识聚类到同一用户标识集中,而出现过度聚合的现象,为了减少过度聚合,在一种实施方式中,本申请实施例可以对更新后的用户标识集进行子图切割。
子图切割具体包括以下两种方式:
方式1,根据子图大小切割;
其中,所述的子图大小是指该子图所表示的用户标识集中的用户标识个数。
例如,设定一个用户标识数量阈值,则当更新后的用户标识集中的用户标识数量大于该用户标识数量阈值时,对该更新后的用户标识集进行切割。假设,设定的标识数量阈值为50,更新后的用户标识集1中的用户标识数量为200个,则通过方式1提供的子图切割方法,将用户标识1集切割成4个用户标识集,且每个用户标识集中包含有50个用户标识。
例如,假设下述条件成立:
1、设定用户标识数量阈值为:MAX_SUBGRAPH_SIZE=1000;
2、更新后的用户标识集为<sduid,idcluster>;
则根据子图大小进行子图切割,具体为:
对更新后的用户标识集进行扫描,判断该用户标识集中的用户标识数量是否大于设定的用户标识数量阈值;
当判断结果为:idcluster.size<MAX_SUBGRAPH_SIZE时,即更新后的用户标识集中的用户标识数量小于设定的用户标识数量阈值,则不对该用户标识集进行切割。
当判断结果为:idcluster.size>MAX_SUBGRAPH_SIZE时,即更新后的用户标识集中的用户标识数量大于设定的用户标识数量阈值,则需要对该用户标识集进行切割,具体的切割方法如下:
计算更新后的用户标识集中的用户标识数量,并从该用户标识集中取出前1000个用户标识(从第一个用户标识至第1000个用户标识),得到用户标识集idcluster1,并仍将sduid作为该用户标识集的唯一标识,并输出<sduid,idcluster1>;继续从该用户标识集中的第1001个用户标识至第2001个用户标识这1000个用户标识取出,得到用户标识集idcluster2,并为该用户标识集idcluster2生成唯一标识sduid-1,并输出<sduid-1,idcluster2>;重复上述过程,直至待切割的用户标识集中的用户标识数量小于等于设定的阈值。
方式2,根据子图中的不易变的用户标识数量进行切割;
针对得到的各更新后的用户标识集分别执行下述步骤:确定该更新后的用户标识集中的第一预设类型的用户标识的数目;当该更新后的用户标识集中的第一预设类型的用户标识的数目超过一个时,按照第一预设用户标识的数目对所述更新后的用户标识集进行切割。
需要说明的是,其中的不易变的用户标识是指,如用户账号、用户终端设备号、用户邮箱地址等固定不变的用户标识。一般地,可以根据需要,规定不易变的用户标识。
例如,假设下述条件成立:
1、规定不易变用户标识为用户的邮箱地址(reg_email);
2、更新后的用户标识集为<sduid,idcluster>;
则根据子图中的不易变的用户标识数量进行子图切割,具体为:
扫描更新后的用户标识集,计算该用户标识集中的reg_email的个数,假设计算出该待切割的用户标识集中包含有3个不同的reg_email,则按照用户标识集中的reg_email个数,将该用户标识集idcluster切割成:idcluster1、idcluster2以及idcluster3三个用户标识集,以使得三个不同的reg_email被分别分配到所述的三个用户标识集中,将用户标识集idcluster中的用户标识平均分为三份,并分别分配到上述三个用户标识集中,并分别为所述的三个用户标识集生成唯一标识。
需要说明的是,在一种实施方式中,还可以对通过执行步骤11得到的待更新的用户标识集进行子图切割,具体的切割方式可以参见上文对更新后的用户标识集进行子图切割的方式,此处不再赘述。
一般地,更新后的用户标识集中,往往存在易变的用户标识(如,cookie等),这些易变的用户标识具有一定的有效期限,超过该期限后,这些易变的用户标识将会过期,为了减少储存上述过期的用户标识所占用的系统资源,在一种实施方式中,本申请实施例可以对聚类得到的用户标识集中的易变用户标识进行清除,包括:确定所述更新后的用户标识集中的第二预设类型的用户标识的日期标签;当第二预设类型的用户标识的日期标签在设定日期之前,对更新后的用户标识集中的该第二预设类型的用户标识进行删除。
需要说明的是,所述的易变用户标识可以根据需要进行规定,比如可以设置用户标识cookie为易变的用户标识。
例如,假设下述条件成立:
1、设定易变的用户标识为cookie;
2、更新后的用户标识集为<sduid,idcluster>;
则具体的清除方法为:
为易变用户标识cookie添加日期标签(这里的时间标签是指用户标识cookie被聚类到该用户标识集的时间)。
扫描更新后的用户标识集,判断该用户标识集中cookie的日期标签是否是为1个月以前。假设用户标识cookie的日期标签为一个月之前的,则将该cookie删除;否则,则保留该cookie。
其中,可以根据建立的唯一标识与相应的更新后的用户标识集中各用户标识之间的映射关系,完成对与该唯一标识相应的更新后的用户标识集用户标识集中的各用户标识进行信息推荐。
例如,若得到的更新后的用户标识集的唯一标识A,当某个广告商期望对用户A进行广告投放时,则可以获取更新后的用户标识集的唯一标识A,并根据获取的唯一标识A,确定与唯一标识A映射的各用户标识(如,新浪账号、百度账号、手机的MAC地址,等),进而通过确定出的各用户标识,进行多渠道的广告投放(如,通过新浪微博、通过百度贴吧、以及手机,等渠道)。从而可以通过同渠道、准确的向用户A进行广告投放。
还比如,假设广告商期望对拥有某个用户标识(如,新浪账号)的用户B进行广告投放,则首先确定包含该用户标识的更新后的用户标识集,并获取所述更新后的用户标识集的唯一标识B,并根据获取的唯一标识B,确定与唯一标识B映射的各用户标识(如,百度账号、手机的MAC地址,等),进而通过确定出的各用户标识,进行多渠道的广告投放(如,通过百度贴吧以及手机,等渠道)。从而可以通过同渠道、准确的向用户B进行广告投放。
还需要说明的是,为了避免因为向需求方提供所述的唯一标识而造成用户信息的泄露,在一种实施方式中,本申请实施例可以对每个更新后的用户标识集的唯一标识进行加密后,再发送给所述的需求方。
在一种实施方式中,本申请实施例提供的方法可以为:采用RSA加密算法,对更新后的用户标识集的唯一标识进行加密,并且定期的更新密钥。
在一种实施方式中,本申请实施例还可以对更新后的用户标识集进行指标监控,以衡量利用分布式连通子图对获得的用户标识和待更新的用户标识集中的用户标识进行聚类的算法的优劣。其中,所述的更新后的用户标识集的指标包括:准确率、打通率以及ID丢失率。
其中,关于准确率、打通率以及ID丢失率的具体算法,参见步骤11的相关内容,此处不再赘述。
通过实施例1提供的方法,由于可以根据获得用户标识,以及在获得的用户标识中确定的、在同一业务行为中表示同一用户的用户标识之间的关联关系,采用构建分布式连通子图的方式,对待更新的、由表示同一用户的用户标识构成的用户标识集进行更新,从而提供了一种支持根据新增的用户标识更新所述用户标识集的方案。
实施例2
本申请实施例提供一种用户标识集的更新装置,用以在获得新增的用户标识时,使用新增的用户标识更新由识别出的、由表示同一用户的用户标识构成的用户标识集。该装置的结构示意图如图10所示,主要包括以下单元:
获取单元,用于获得用户标识和待更新的用户标识集,并在获得的用户标识中,确定在同一业务行为中表示同一用户的用户标识之间的关联关系;其中,获得的用户标识包括:不同终端设备保存的用户标识;和/或用户在浏览数据平台时使用的用户标识;其中,每个用户标识集由表示同一用户的用户标识构成,每个用户标识集的各用户标识中,均包含该用户标识集对应的唯一标识;
分布式连通子图处理单元,用于根据所述关联关系和获得的用户标识,构建第一分布式连通子图,并利用构建的第一分布式连通子图和基于待更新的用户标识集构建的第二分布式联通子图,对获得的用户标识和待更新的用户标识集中的用户标识进行聚类,得到更新后的用户标识集;
唯一标识确定单元,用于根据更新后的用户标识集中的用户标识是否已包含唯一标识的判断结果,分别确定每个更新后的用户标识集的唯一标识,并建立唯一标识与更新后的用户标识集中各用户标识之间的映射关系。
在一种实施方式中,分布式连通子图处理单元,还用于:针对得到的各用户标识集分别执行下述步骤:判断该更新后的用户标识集中用户标识的数量是否大于设定的阈值;在判断结果为是时,对该更新后的用户标识集进行切割。
在一种实施方式中,分布式连通子图处理单元,还用于针对得到的各用户标识集分别执行下述步骤:确定该更新后的用户标识集中的第一预设类型的用户标识的数目;当该更新后的用户标识集中的第一预设类型的用户标识的数目超过一个时,按照第一预设用户标识的数目对所述更新后的用户标识集进行切割。
在一种实施方式中,分布式连通子图处理单元,还用于:确定所述更新后的用户标识集中的第二预设类型的用户标识的日期标签;当第二预设类型的用户标识的日期标签在设定日期之前,对更新后的用户标识集中的该第二预设类型的用户标识进行删除。
在一种实施方式中,待更新的用户标识集中的每个用户标识中包含有针对待更新的用户标识集生成的唯一标识;则唯一标识确定单元,用于:针对得到的各更新后的用户标识集分别执行下述步骤:判断该更新后的用户标识集中的用户标识,是否包含所述唯一标识;当判断结果为是时,将所述唯一标识确定为该更新后的用户标识集的唯一标识;当判断结果为否时,按照设定的方法,为该更新后的用户标识集生成唯一标识。
例如,假设以新浪拥有的用户标识处理系统为例,则通过用户标识处理系统对用户标识进行聚类的具体实现流程图如图11所示。
需要说明的是,这里将用户通过不同终端访问新浪时产生的用户标识以及用户的新浪账号作为第一方数据,并通过数据收集系统对所述的第一方数据中的用户标识进行获取。具体的用户标识的获得方式可以参照实施例1的相关内容,此处不再赘述。
还需要说明的是,数据收集系统可以通过数据交换以及cookie_mapping映射机制,获得第三方数据中的用户标识。其中,这里所述的第三方数据是指除了新浪外的其他数据平台上的数据(如:百度、淘宝、搜狐等数据平台上的数据)。
在一种实施方式中,本申请实施例提供的数据收集系统可以对获得的用户标识通过如下两种方式进行预处理,具体包括:
方式1:对获得的需要进行数据清洗的第一标识进行数据清洗。
需要说明的是,所述的数据清洗,具体可以包括:去除用户标识中的不可用字符;和/或去除重复的用户标识。
方式2:为清洗后的第一标识,以及获得的无需进行数据清洗的第一标识分别添加预定的属性信息。
需要说明的是,为了便于对获得的用户标识进行管理以及处理,在一种实施方式中,其中预定的属性信息可以为:用户标识的类型信息以及用户标识的日期信息(如,用户标识最近一次出现的日期的信息)。
其中,上述的两种预处理方式的具体实现过程可以参照实施例1的相关内容,此处不再赘述。
需要说明的是,为了降低预处理的处理时间,在一种实施方式中,一般先通过方式1提供的预处理方法,去除重复的用户标识,再进一步的对去除重复后的用户标识进行诸如方式2所述的预处理。
在一种实施方式中,跨屏打通系获得数据收集系统获得的待更新的用户标识集中的用户标识,根据所述关联关系和获得的待更新的用户标识集中的用户标识构建分布式连通子图,并利用构建的分布式连通子图,根据所述关联关系对获得的待更新的用户标识集中的用户标识进行聚类,以得到待更新的用户标识集后,还可以对所述的待更新的用户标识集进行增量数据融合、子图切割以及数据更新。
其中,所述的增量数据融合连通子图切割以及数据更新的具体实现过程可以参见实施例1的相关内容,此处不再赘述。
在一种实施方式中,数据维护系统可以对聚类得到的用户标识集(可以是待更新的用户标识集,也可以是更新后的用户标识集)进行数据标准化处理(生成唯一标识)、隐私保护(对生成的唯一标识进行加密)以及指标监控。其中,所述的数据标准化处理、隐私保护以及指标监控的具体实现过程可以参见实施例1的相关内容,此处不再赘述。
通过本实施例2提供的系统,由于可以根据获得用户标识,以及在获得的用户标识中确定的、在同一业务行为中表示同一用户的用户标识之间的关联关系,采用构建分布式连通子图的方式,对待更新的、由表示同一用户的用户标识构成的用户标识集进行更新,从而提供了一种支持根据新增的用户标识更新所述用户标识集的方案。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (10)
1.一种用户标识集的更新方法,其特征在于,包括:
获得用户标识和待更新的用户标识集,并确定获得的用户标识中的、在同一业务行为中表示同一用户的用户标识之间的关联关系;其中,获得的用户标识包括:不同终端设备保存的用户标识,和/或用户在浏览数据平台时使用的用户标识;其中,每个用户标识集由表示同一用户的用户标识构成,每个用户标识集的各用户标识中,均包含该用户标识集对应的唯一标识;
根据所述关联关系和获得的用户标识,构建第一分布式连通子图,并利用构建的第一分布式连通子图和基于待更新的用户标识集构建的第二分布式联通子图,对获得的用户标识和待更新的用户标识集中的用户标识进行聚类,得到更新后的用户标识集;
根据更新后的用户标识集中的用户标识是否已包含唯一标识的判断结果,分别确定每个更新后的用户标识集的唯一标识,并建立唯一标识与更新后的用户标识集中各用户标识之间的映射关系。
2.如权利要求1所述的方法,其特征在于,建立所述映射关系之后,所述方法还包括:
针对得到的各更新后的用户标识集分别执行下述步骤:
判断该更新后的用户标识集中用户标识的数量是否大于设定的阈值;
在判断结果为是时,对该更新后的用户标识集进行切割。
3.如权利要求1所述的方法,其特征在于,建立所述映射关系之后,所述方法还包括:
针对得到的各更新后的用户标识集分别执行下述步骤:
确定该更新后的用户标识集中的第一预设类型的用户标识的数目;
当该更新后的用户标识集中第一预设类型的用户标识的数目超过一个时,按照第一预设类型的用户标识的数目对所述更新后的用户标识集进行切割。
4.如权利要求1~3任一权项所述的方法,其特征在于,得到更新后的用户标识集之后,所述方法还包括:
确定更新后的用户标识集中的第二预设类型的用户标识的日期标签;
从更新后的用户标识集中,删除日期标签在设定日期之前的第二预设类型的用户标识。
5.如权利要求1~3任一权项所述的方法,其特征在于,根据更新后的用户标识集中的用户标识是否已包含唯一标识的判断结果,分别确定每个更新后的用户标识集的唯一标识,包括:
针对得到的各更新后的用户标识集分别执行下述步骤:
判断该更新后的用户标识集中,是否存在包含有唯一标识的用户标识;
当判断结果为是时,将该唯一标识确定为该更新后的用户标识集的唯一标识;
当判断结果为否时,按照设定的生成方法,为该更新后的用户标识集生成唯一标识。
6.一种用户标识集的更新装置,其特征在于,包括:
获取单元,用于获得用户标识和待更新的用户标识集,并在获得的用户标识中,确定在同一业务行为中表示同一用户的用户标识之间的关联关系;其中,获得的用户标识包括:不同终端设备保存的用户标识;和/或用户在浏览数据平台时使用的用户标识;其中,每个用户标识集由表示同一用户的用户标识构成,每个用户标识集的各用户标识中,均包含该用户标识集对应的唯一标识;
分布式连通子图处理单元,用于根据所述关联关系和获得的用户标识,构建第一分布式连通子图,并利用构建的第一分布式连通子图和基于待更新的用户标识集构建的第二分布式联通子图,对获得的用户标识和待更新的用户标识集中的用户标识进行聚类,得到更新后的用户标识集;
唯一标识确定单元,用于根据更新后的用户标识集中的用户标识是否已包含唯一标识的判断结果,分别确定每个更新后的用户标识集的唯一标识,并建立唯一标识与更新后的用户标识集中各用户标识之间的映射关系。
7.如权利要求6所述的装置,其特征在于,分布式连通子图处理单元,还用于:
在唯一标识确定单元建立所述映射关系后,针对得到的各更新后的用户标识集分别执行下述步骤:
判断该更新后的用户标识集中用户标识的数量是否大于设定的阈值;
在判断结果为是时,对该更新后的用户标识集进行切割。
8.如权利要求6所述的装置,其特征在于,分布式连通子图处理单元,还用于:
在唯一标识确定单元建立所述映射关系后,针对得到的各更新后的用户标识集分别执行下述步骤:
确定该更新后的用户标识集中的第一预设类型的用户标识的数目;
当该更新后的用户标识集中的第一预设类型的用户标识的数目超过一个时,按照第一预设类型的用户标识的数目对所述更新后的用户标识集进行切割。
9.如权利要求6~8任一权项所述的装置,其特征在于,分布式连通子图处理单元,还用于:
在分布式连通子图处理单元得到更新后的用户标识集之后,确定所述更新后的用户标识集中的第二预设类型的用户标识的日期标签;
从更新后的用户标识集中,删除日期标签在设定日期之前的第二预设类型的用户标识。
10.如权利要求6~8任一权项所述的装置,其特征在于,唯一标识确定单元,用于:
针对得到的各更新后的用户标识集分别执行下述步骤:
判断该更新后的用户标识集中,是否存在包含有唯一标识的用户标识;
当判断结果为是时,将该唯一标识确定为该更新后的用户标识集的唯一标识;
当判断结果为否时,按照设定的生成方法,为该更新后的用户标识集生成唯一标识。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510558014.XA CN105227352B (zh) | 2015-09-02 | 2015-09-02 | 一种用户标识集的更新方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510558014.XA CN105227352B (zh) | 2015-09-02 | 2015-09-02 | 一种用户标识集的更新方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105227352A CN105227352A (zh) | 2016-01-06 |
CN105227352B true CN105227352B (zh) | 2019-03-19 |
Family
ID=54996063
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510558014.XA Active CN105227352B (zh) | 2015-09-02 | 2015-09-02 | 一种用户标识集的更新方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105227352B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106302849A (zh) * | 2016-08-04 | 2017-01-04 | 北京集奥聚合科技有限公司 | 一种通过运营商数据进行移固融合的方法 |
CN107193894B (zh) * | 2017-05-05 | 2020-06-16 | 北京星选科技有限公司 | 数据处理方法、个体识别方法及相关装置 |
CN109241421B (zh) * | 2018-08-24 | 2021-02-23 | 北京奇虎科技有限公司 | Id数据网处理方法、装置、计算设备及计算机存储介质 |
CN109829099B (zh) * | 2018-08-24 | 2021-04-09 | 北京奇虎科技有限公司 | Id数据子网处理方法、装置、计算设备及计算机存储介质 |
CN109190035A (zh) * | 2018-08-24 | 2019-01-11 | 北京奇虎科技有限公司 | Id数据网数据分析方法、装置及计算设备 |
CN110502549B (zh) * | 2019-07-08 | 2022-04-01 | 招联消费金融有限公司 | 用户数据处理方法、装置、计算机设备和存储介质 |
CN112487251A (zh) * | 2019-09-12 | 2021-03-12 | 北京国双科技有限公司 | 一种用户id数据关联方法及装置 |
CN111049944B (zh) * | 2019-12-17 | 2021-01-12 | 武汉绿色网络信息服务有限责任公司 | 一种id发现方法和装置 |
CN110995887B (zh) * | 2019-12-17 | 2021-09-24 | 武汉绿色网络信息服务有限责任公司 | 一种id关联方法和装置 |
CN111932317A (zh) * | 2020-09-15 | 2020-11-13 | 腾讯科技(深圳)有限公司 | 基于区块链的广告播放方法、装置、介质及电子设备 |
CN112734466A (zh) * | 2020-12-31 | 2021-04-30 | 联想(北京)有限公司 | 一种关联信息的处理方法、装置及存储介质 |
CN112988842B (zh) * | 2021-03-24 | 2023-12-22 | 北京百度网讯科技有限公司 | 关联用户id的方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103927307A (zh) * | 2013-01-11 | 2014-07-16 | 阿里巴巴集团控股有限公司 | 一种识别网站用户的方法和装置 |
CN104462318A (zh) * | 2014-12-01 | 2015-03-25 | 国家电网公司 | 一种多网络中相同人名的身份识别方法及装置 |
CN104615658A (zh) * | 2014-12-31 | 2015-05-13 | 中国科学院深圳先进技术研究院 | 一种确定用户身份的方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120197802A1 (en) * | 2011-01-28 | 2012-08-02 | Janet Smith | Method and system for determining fraud in a card-not-present transaction |
-
2015
- 2015-09-02 CN CN201510558014.XA patent/CN105227352B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103927307A (zh) * | 2013-01-11 | 2014-07-16 | 阿里巴巴集团控股有限公司 | 一种识别网站用户的方法和装置 |
CN104462318A (zh) * | 2014-12-01 | 2015-03-25 | 国家电网公司 | 一种多网络中相同人名的身份识别方法及装置 |
CN104615658A (zh) * | 2014-12-31 | 2015-05-13 | 中国科学院深圳先进技术研究院 | 一种确定用户身份的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105227352A (zh) | 2016-01-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105227352B (zh) | 一种用户标识集的更新方法及装置 | |
CN105224606B (zh) | 一种用户标识的处理方法及装置 | |
De Choudhury et al. | How does the data sampling strategy impact the discovery of information diffusion in social media? | |
CN104699718B (zh) | 用于快速引入业务数据的方法和装置 | |
CN105099729B (zh) | 一种识别用户身份标识的方法和装置 | |
CN109074377A (zh) | 用于实时处理数据流的受管理功能执行 | |
Boutet et al. | Hyrec: leveraging browsers for scalable recommenders | |
Jeong et al. | Anomaly teletraffic intrusion detection systems on hadoop-based platforms: A survey of some problems and solutions | |
KR20160065923A (ko) | 클러스터링에 기반한 매핑과 라우팅을 위한 시스템 및 방법 | |
CN104104717A (zh) | 投放渠道数据统计方法及装置 | |
Huang et al. | Elastic resource allocation against imbalanced transaction assignments in sharding-based permissioned blockchains | |
Zhang et al. | A method to predict the performance and storage of executing contract for ethereum consortium-blockchain | |
US11238402B2 (en) | Information operation | |
CN109657107A (zh) | 一种基于第三方应用的终端匹配方法和装置 | |
Elkana Ebinazer et al. | ESKEA: enhanced symmetric key encryption algorithm based secure data storage in cloud networks with data deduplication | |
US10182104B1 (en) | Automatic propagation of resource attributes in a provider network according to propagation criteria | |
Coró et al. | Link recommendation for social influence maximization | |
CN107005576B (zh) | 从服务器日志生成用于链接标识符的桥接匹配标识符 | |
Pan et al. | An efficiency approach for RBAC reconfiguration with minimal roles and perturbation | |
CN105550240B (zh) | 一种推荐的方法及装置 | |
CN106506647A (zh) | 一种客户端具有数据备份装置的智慧社区云存储系统 | |
CN109446432A (zh) | 一种信息推荐方法及装置 | |
CN107809748A (zh) | 基于数据安全的医疗软件更新方法及服务器 | |
Fang et al. | Parallelized user clicks recognition from massive HTTP data based on dependency graph model | |
Zhang et al. | Social network sensitive area perturbance method based on firefly algorithm |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20230308 Address after: Room 501-502, 5/F, Sina Headquarters Scientific Research Building, Block N-1 and N-2, Zhongguancun Software Park, Dongbei Wangxi Road, Haidian District, Beijing, 100193 Patentee after: Sina Technology (China) Co.,Ltd. Address before: 100080, International Building, No. 58 West Fourth Ring Road, Haidian District, Beijing, 20 floor Patentee before: Sina.com Technology (China) Co.,Ltd. |