本发明涉及数据处理,尤其是涉及一种基于flink构建idmapping的方法、系统及计算机存储介质。
背景技术:
1、随着社会不端发展进步,每个人(用户)都会有多个手机,注册不同的账号,相同一个人(用户)拥有多个手机和多个注册账号。现需要将相同一个人(用户)拥有多少手机或者账号的用户视为一个用户。所以需要基于设备标识信息和注册信息进行用户唯一标识映射。
技术实现思路
1、本发明提供了一种基于flink构建idmapping的方法、系统及计算机存储介质,以解决现有技术中同一用户不同移动终端设备与不同注册信息难以关联识别的技术问题。
2、本发明的一个方面在于提供一种基于flink构建idmapping的方法,所述方法包括如下方法步骤:
3、s1、获取用户在移动终端不同移动设备登录的设备标识id数据,并同步至数据仓库;
4、s2、获取服务器端用户注册的不同注册id数据,并同步至数据仓库;
5、s3、将步骤s1中获取的设备标识id数据,与步骤s2中获取的注册id数据取交集,创建第一数据集;
6、s4、在步骤s1中获取的设备标识id数据与步骤s2中获取的注册id数据中,剔除步骤s3中的第一数据集,创建第二数据集;
7、s5、将步骤s3中创建的第一数据集合集与步骤s4中创建的第二数据集合并,得到第三数据集;
8、s6、使用flink读取第三数据集,生成点集合和边集合,并通过生成的点集合和边集合进行图计算,生成大通图;
9、s7、使用flink读取步骤s6生成的大通图中的所有点,并将大通图中的所有点通过任意生成的唯一函数,转换成明文格式数据输出,存入hive表中,构建idmapping。
10、在一个优选的实施例中,在步骤s1中,对获取的用户在移动终端不同移动设备登录的设备标识id数据,进行字段去重,并将去重后的数据存入hive表中。
11、在一个优选的实施例中,在步骤s2中,对获取服务器端用户注册的不同注册id数据,进行字段去重,并将去重后的数据存入hive表中。
12、在一个优选的实施例中,当增加新的设备标识id数据或注册id数据,则将新增的设备标识id数据或注册id数据插入步骤s5中生成的第三数据集中;
13、重复步骤s6至步骤s7,构建构建idmapping。
14、在一个优选的实施例中,在步骤s7中,存入hive表中之前,还包括:使用etl程序对输出的明文格式数据进行数据清洗。
15、本发明的另一个方面在于提供一种基于flink构建idmapping的系统,其特征在于,所述系统包括:数据采集模块,用于获取用户在移动终端不同移动设备登录的设备标识id数据,以及获取服务器端用户注册的不同注册id数据,并同步至数据仓库;
16、图计算模块,用于使用flink读取第三数据集,生成点集合和边集合,并通过生成的点集合和边集合进行图计算,生成大通图。
17、idmapping生成模块,用于使用flink读取大通图中的所有点,并将大通图中的所有点通过任意生成的唯一函数,转换成明文格式数据输出,存入hive表中,构建idmapping。
18、本发明的又一个方面在于提供一种计算机存储介质,所述计算机存储介质用于存储计算机执行程序,所述计算机执行程序用于执行本发明提供的一种基于flink构建idmapping的方法的方法。
19、与现有技术相比,本发明具有以下有益效果:
20、本发明提供的一种基于flink构建idmapping的方法、系统及计算机存储介质,能够实现同一用户不同移动设备,不同注册账号的关联,实现用户设备标识信息和注册信息与用户的唯一标识映射。
21、本发明提供的一种基于flink构建idmapping的方法、系统及计算机存储介质,能够实现对用户新增设备标识信息,注册信息及时更新并与用户的唯一标识映射。
1.一种基于flink构建idmapping的方法,其特征在于,所述方法包括如下方法步骤:
2.根据权利要求1所述的方法,其特征在于,在步骤s1中,对获取的用户在移动终端不同移动设备登录的设备标识id数据,进行字段去重,并将去重后的数据存入hive表中。
3.根据权利要求1所述的方法,其特征在于,在步骤s2中,对获取服务器端用户注册的不同注册id数据,进行字段去重,并将去重后的数据存入hive表中。
4.根据权利要求1所述的方法,其特征在于,当增加新的设备标识id数据或注册id数据,则将新增的设备标识id数据或注册id数据插入步骤s5中生成的第三数据集中;
5.根据权利要求1所述的方法,其特征在于,在步骤s7中,存入hive表中之前,还包括:使用etl程序对输出的明文格式数据进行数据清洗。
6.一种基于flink构建idmapping的系统,其特征在于,所述系统包括:数据采集模块,用于获取用户在移动终端不同移动设备登录的设备标识id数据,以及获取服务器端用户注册的不同注册id数据,并同步至数据仓库;
7.一种计算机存储介质,其特征在在于,所述计算机存储介质用于存储计算机执行程序,所述计算机执行程序用于执行权利要求1至5中任一权利要求所述的方法。