0
点赞
收藏
分享

微信扫一扫

数据中台之OneID (ID-Mapping)架构设计细节全解

数据中台之OneID (ID-Mapping)架构设计细节全解_数据

编 辑:诸葛子房

彭友们好,我是老彭。之前抽空写了一篇《​​One ID中的核心技术ID-Mapping究竟是怎么实现的?​​》结果一大堆人追着我问有没有具体的实施细节。

这个需求,老彭必须满足!来,上干货!

数据中台之OneID (ID-Mapping)架构设计细节全解_android_02

One ID 简介

《阿里巴巴大数据之路》中有讲到关于数据中台OneData 的方法论,其中分别涉及到OneModel、OneService、OneID。 

数据中台之OneID (ID-Mapping)架构设计细节全解_android_03

OneID是指同一用户、同一设备的一个唯一ID。


例子一:我用我自己的电脑搜索小米11,我又用这台电脑浏览其他网站,然后这个网站给我弹小米11的广告,对,也许你认为这种都是同一台电脑,非常简单,只需要根据ip等相关信息进行匹配就可以了。

例子二: 我用我自己的电脑搜索小米11,然后用自己的苹果手机,去浏览其他网站,然后其他网站又给我弹了小米11的广告,这怎么识别的呀?

我们认为这台电脑、这部手机、以及其他的电子设备是可以构成一个唯一的ID,即:OneID。

但是你一定会问了,那他们是怎么关联上的呢?而不会关联错呢?比如说没有把我在电脑上搜索的小米11,推到我的手机上,而不是推到我女朋友的手机上

这个映射的过程,称之为:ID-Mapping

数据中台之OneID (ID-Mapping)架构设计细节全解_android_04

业务逻辑梳理

当使用安卓手机安装app,启动时会上报 IMEI,Mac地址 ,AndroidID,手机型号等设备信息。


同理ios 会上报相关启动信息 idfa,手机设备等信息;pc 浏览器端会上报 cookie、浏览器相关信息。


但是每一次上报的信息不一定完全相同,比如说手机权限问题,浏览器cookie 清空等问题。


LocalID:app 启动会根据AndroidID生成本地id(不需要连网),记录为本地ID


OneID:app 联网上报的设备相关信息,用来打通多个app以及多端应用的唯一ID


OneID的作用:


(1)打通手机上多个app,比如说:淘宝、支付宝、高德等等是同一个用户(未登录时,登录时用账号id)


(2)打通多端应用,比如说你在手机端看剧,然后pc web 端能知道还是同一用户(解决账号共享无法定位同一用户的问题)


数据中台之OneID (ID-Mapping)架构设计细节全解_搜索_05

Mapping流程及架构设计


(1)HBase数据表结构设计


安卓端表映射表结构(android_id_mapping),其他端类似:


OneID   imei  mac_adress    android_id      oaid


本地id 和 OneId映射表结构(local_id_mapping):


LocalID   OneID


(2)为了应对高并发场景,将HBase 提前预热至Redis 缓存,redis 表设计


imei_value                 oneid1,oneid2...


mac_address_value  oneid1,oneid2...


(3)ID-Mapping 映射流程

 数据中台之OneID (ID-Mapping)架构设计细节全解_android_06

票选服务:

根据客户端上报的参数信息去redis 里面匹配OneID,核心权重设置

数据中台之OneID (ID-Mapping)架构设计细节全解_数据_07

如上,就实现了同一个对象在不同端的ID-Mapping,将多端数据串起来,可以做更多的分析了。

数据中台之OneID (ID-Mapping)架构设计细节全解_数据_08

总结

嘿嘿,这个技术就是你反复看到类似广告的罪魁祸首之一数据中台之OneID (ID-Mapping)架构设计细节全解_搜索_09数据中台之OneID (ID-Mapping)架构设计细节全解_搜索_09数据中台之OneID (ID-Mapping)架构设计细节全解_搜索_09。比如之前总有人问老彭几个问题,都可以用上面的技术知识解答了:



问题一:你在百度(或者京东、淘宝)上搜索一件商品(比如说:我搜索了一台iphone 手机看了看,但是没买),奇怪的是过两天,你竟然在某视频平台或者某网页上又看到了它?


回答:在视频平台看视频的时候,获取到浏览器的cookie等相关信息,通过调用百度的服务去匹配同一个设备的最新的搜索数据,然后进行广告投放,做到千人千面


问题二:而且更加奇怪的是,你明明是在电脑pc 端搜索的手机,但是你在手机上看电影的时候却能看到它,是不是也太奇怪了。


回答:手机端装了看电影的app,同时你在pc web 端之前也看在该网站有观影信息,结合账号信息+设备信息+观影信息,生成一个OneID,打通该视频网站,所有端的数据。


后续你在pc web 看电影取获取当前唯一id的所有端的信息,然后调用京东或者淘宝的广告服务,进行投放。


数据中台之OneID (ID-Mapping)架构设计细节全解_数据_12

排版 | 老彭

审校  主编 | 老彭


举报

相关推荐

0 条评论