SPM,全称超级位置模型(Super Position Model),是大数据中 Web 端和 APP 端采集用户在界面具体位置上的行为日志数据。同时,由 SCM (Super Content Model,超级内容模型)配合来获取位置中的内容,它们一起来完成用户行为细节的数据收集。
SPM 和 SCM 范式最早由阿里巴巴提出并应用,现已成为大数据采集中数据埋点的重要规范。
需求背景
在统计页面(界面)的访问的指标如 PV、UV 时,是对页面整体进行监控,这时页面级的 PV 日志或者统计服务端 nginx/apache 等产生的请求日志就足以完成。
SPM
随着数据分析的精细化,不能满足于粗粒度的页面级数据分析,还需要知道用户在页面的哪个位置做了点击、哪个位置做了曝光等等。同时,随着在移动端页面多采用上滑加载、左右滑动等模式,更多的浏览和交互在单一页面完成,因此对于页面位置区块的内容分析诉求就越来越强烈,SPM 便是来解决定位内容位置的标识。
SCM
那么 SCM(Super Content Model,超级内容模型)又是做什么的呢?试想下这个场景,在一个 APP 中,首页有一个幻灯广告 Banner,它自动更换并共 4 张,那么我们可以用 SPM 标记为 Banner0 到 Banner3,这样就知道了用户点击了哪个 Banner 图。但问题也来了,当时用户点击的 Banner 内容是什么呢?这就需要 SCM 来记录当时的 Banner 内容,因为广告位是不变的,广告内容会随时变化。
在当前互联网产品形态中,类似千人千面等个性化推荐项目中,软件界面正是提供了类似广告位的固定框架,这个框架相对稳定(当然也会改版,也会做 A/B 测试),内容则是通过大数据分析利用算法为具体用户定制,这时由 SCM 快照当时给用户的内容。
设计
SPM 设计
SPM(Super Position Model),全称超级位置模型,用于内容的位置,其设计理念同UTM,可先阅读理解。
一般包含四位信息:
- A:站点/业务,一般以站点编码的形式记录,也可记录平台,如 iOS、小程序等
- B:页面,一般对业务进行编号,不同平台的相同对应页面编号相同
- C:页面区块,对页面进行大的区域划分编号
- D:区块内点位:小区域内的位置编号
以上信息一般没有隐私内容,可显式传输。位置编号一般从 0 开始,也可以用便于识别的字符命名。
SPM 可搭载在:
- PV 日志:记录被浏览的页面从上一页面的哪个位置点击而来;
- 曝光日志:表示哪个位置被曝光;
- 事件日志:表示事件发生的位置,如点击的哪个区域、点击了哪个按钮、在哪儿滑动了屏幕
可以设计多个用途的 SPM,以下是阿里的设计应用:
SPM的原理SCM 设计
SPM(Super Content Model),全称超级内容模型,用于表示位置中的具体内容,其设计理念同UTM,可先阅读理解。scm 编码是用来跟踪内容的编码。与业务内容一起下发的埋点数据,用来唯一标识一块内容。 客户端打点时,将 scm 编码作为埋点的参数上传给日志服务器。
scm 编码也采用 a.b.c.d 的格式,下边是一个应用设计的示例:
- a 标识投放系统 ID,用来标识不同的内容投放方,比如商城的阿拉丁系统,对应的投放系统ID为1003。
- b 标识投放算法ID,用来标识投放系统产生不同内容的投放算法。
- c 标识投放算法版本ID,用来标识投放算法的不同版本。
- d 标识投放人群ID,用来标识不同的投放人群,或者对接profile。
SCM 可以表示内容在配置系统中的映射,如广告在 CMS 系统的的配置 ID,也可以表示内容使用的推荐算法、营销策略等内容。
SCM 可搭载在:
- PV 日志:记录被浏览的页面从上一页面的哪个位置的什么内容点击而来,可用于分析内容的吸引力;
- 曝光日志:表示哪些内容被曝光过;
- 事件日志:表示事件发生在什么内容上,如哪个商品被点击,哪个优惠券被刮开。
网友评论