背景
精准营销从被提出到广泛运用,伴随着互联网技术飞速发展,尤其是大数据和人工智能技术的日趋成熟。精准营销也成为每一家互联网企业必然绕不开的课题,围绕它展开的业务不胜枚举。通常营销过程包含如下三部分:
① 营销活动前:确定营销的目标,
② 营销活动中:效果监控和跟踪,
③ 营销活动后:效果评估和优化。
本文主要分享笔者在精准营销工程化方面做的一些尝试和实践,侧重点在营销目标的确定。
现状
营销目标就是我们传统意义的圈人,筛选出一批跟营销计划匹配的人。最初圈人逻辑是通过标签圈人,后续又加入了算法圈人,这两种模式的数据核心都基于离线数仓,按天更新。这两种方式在初期能够满足业务需求,但是随着业务发展及精细化运营的需求,该模式短板越来越明显,例如转化率的提升越来越难、实时性不高、灵活度不够等。希望有一套既能兼容现有离线链路,同时又能引入实时特征的方案。
挑战
离线链路侧,每个签约品牌每天会基于MaxCompute,通过协同过滤的方式从经济体的数亿用户中召回和品牌群像具有相似度的人,粗召回人数大品牌数亿中小品牌数千万。通过粗召回的数据量乘以签约品牌数,就可以很轻易的预估出离线召回的数据量在百亿级别,并且随着签约品牌的新增该数据量还会增加。实时链路侧,用户的实时特征,例如交易特征、LBS特征、商品加购特征、店铺点击特征等,每天特征总量也维持在几十亿级别,并且特征会随着业务的发展越来越多。
面对如此庞大的数据量,每条数据多耗时一毫秒,那么在百亿量级下就会放大到数千小时;一条数据多1bit,百亿就会放大到1G。所以特征数据如何传递、处理、存储都需要精心设计,否则带来的不但是程序性能上的急剧下降,而且还会导致计算和存储成本的飞速飙升,这便是我们在整个系统建设过程中遇到最大挑战。