一.引言
大家在上网的过程中是不是经常有这样的体验,我在百度(或者京东、淘宝)上搜索一件商品(比如说:我搜索了一台iphone 手机看了看,但是没买),奇怪的是过两天,我竟然在某视频平台或者某网页上又看到了它?而且更加奇怪的是,我明明是在电脑pc 端搜索的手机,但是我在手机上看电影的时候却能看到它,是不是也太奇怪了。难道我的电脑、我的手机、我的ipad 等等电子设备都被监控了吗?二、背景
《阿里巴巴大数据之路》中有讲到关于数据中台OneData 的方法论,其中分别涉及到OneModel、OneService、OneID。OneService 在之前的文章中已经有过分享,参考:某互联网大厂亿级大数据服务平台的建设和实践引言中所提到的小故事其实就是本文着重要分享的关于OneID 的部分例子一:我用我自己的电脑搜索小米11,我又用这台电脑浏览其他网站,然后这个网站给我弹小米11的广告,对,也许你认为这种都是同一台电脑,非常简单,只需要根据ip等相关信息进行匹配就可以了。例子二: 我用我自己的电脑搜索小米11,然后用自己的苹果手机,去浏览其他网站,然后其他网站又给我弹了小米11的广告,这怎么识别的呀?我们认为这台电脑、这部手机、以及其他的电子设备是可以构成一个唯一的ID,即:OneID但是你一定会问了,那他们是怎么关联上的呢?而不会关联错呢?比如说没有把我在电脑上搜索的小米11,推到我的手机上,而不是推到我女朋友的手机上当使用安卓手机安装app,启动时会上报 IMEI,Mac地址 ,AndroidID,手机型号等设备信息同理ios 会上报相关启动信息 idfa,手机设备等信息;pc 浏览器端会上报 cookie、浏览器相关信息。但是每一次上报的信息不一定完全相同,比如说手机权限问题,浏览器cookie 清空等问题。LocalID:app 启动会根据AndroidID生成本地id(不需要连网),记录为本地IDOneID:app 联网上报的设备相关信息,用来打通多个app以及多端应用的唯一ID(1)打通手机上多个app,比如说:淘宝、支付宝、高德等等是同一个用户(未登录时,登录时用账号id)(2)打通多端应用,比如说你在手机端看剧,然后pc web 端能知道还是同一用户(解决账号共享无法定位同一用户的问题)安卓端表映射表结构(android_id_mapping),其他端类似:OneID imei mac_adress android_id oaid本地id 和 OneId映射表结构(local_id_mapping):(2)为了应对高并发场景,将HBase 提前预热至Redis 缓存,redis 表设计imei_value oneid1,oneid2...mac_address_value oneid1,oneid2...根据客户端上报的参数信息去redis 里面匹配OneID,核心权重设置问题一:我在百度(或者京东、淘宝)上搜索一件商品(比如说:我搜索了一台iphone 手机看了看,但是没买),奇怪的是过两天,我竟然在某视频平台或者某网页上又看到了它?在视频平台看视频的时候,获取到浏览器的cookie等相关信息,通过调用百度的服务去匹配同一个设备的最新的搜索数据,然后进行广告投放,做到千人千面问题二:而且更加奇怪的是,我明明是在电脑pc 端搜索的手机,但是我在手机上看电影的时候却能看到它,是不是也太奇怪了。手机端装了看电影的app,同时我在pc web 端之前也在该网站有观影信息,结合账号信息+设备信息+观影信息,生成一个OneID,打通该视频网站,所有端的数据。后续我在pc web 看电影获取当前唯一id的所有端的信息,然后调用京东或者淘宝的广告服务,进行投放。历史用户画像系列文章:
用户画像系列—当我们聊用户画像,我们在聊什么?
用户画像系列—如何从0到1建设用户画像
用户画像系列——推荐相关核心标签(偏好类)
用户画像系列——Lookalike在营销圈选扩量中的应用
用户画像系列——布隆过滤器在策略引擎中的应用
用户画像系列——在一些中小型公司数据不全的情况下做画像怎么做呢?
作者简介:诸葛子房,曾供职于京东、BAT,在大数据领域有多年实践经验,欢迎交流
