基于 阿里云 RDS PostgreSQL 打造实时用户画像推荐系统
标签
PostgreSQL , 实时推荐系统 , 用户画像 , 标签 , TAG , 比特位
背景
用户画像在市场营销的应用重建中非常常见,已经不是什么新鲜的东西,比较流行的解决方案是给用户贴标签,根据标签的组合,圈出需要的用户。
通常画像系统会用到宽表,以及分布式的系统。
宽表的作用是存储标签,例如每列代表一个标签。
但实际上这种设计不一定是最优或唯一的设计,本文将以PostgreSQL数据库为基础,给大家讲解一下更加另类的设计思路,并且看看效率如何。
业务场景模拟
假设有一个2B的实时用户推荐系统,每个APPID代表一个B。
业务数据包括APPID,USERIDs,TAGs。(2B的用户ID,最终用户ID,标签)
业务没有跨APPID的数据交换操作需求,也就是说仅限于APPID内的用户推荐。
查询局限在某个选定的APPID,以及TAG组合,搜索符合