全部产品

对接个性化推荐

更新时间:2017-06-07 13:26:11   分享:   

1. 简介

移动数据分析(Mobile Analytics)提供的小时级别日志数据源可以由App开发者加工成规范的行为数据后对接到推荐引擎,进而快速实现个性化推荐服务。

2. 使用方法

2.1 开通日志分析

只有获取到日志数据后,App开发者才能进一步加工为推荐引擎所需的数据格式,开通步骤参见自定义数据分析

2.2 了解推荐引擎

产品介绍

快速入门

数据格式规范

其中数据格式规范这一页与移动数据分析密切相关,其中的行为表(user_behavior)的数据源可以很方便从移动数据分析采集的数据获取到。下面就来介绍推荐引擎需要的字段,移动数据分析的怎么埋点?在哪里取埋点内容?

字段名 类型 注释 Nullable SDK埋点 SDK日志字段
user_id string 用户ID 取设备ID是无需埋点自动采集,取会员ID是需要调用updateUserAccount()来传入会员ID 取设备ID可使用utdid或imei字段,取会员id用user_id字段
item_id string 物品ID 页面调用updatePageProperties()或自定义事件调用setProperty()以kv方式埋入物品ID值 取日志args字段埋入的kv值,一般用ODPS的keyvalue()可以很方便解析出来
bhv_type string 行为类型:;view:物品曝光;click:用户点击物品;collect:用户收藏了某个物品;uncollect:用户取消收藏某个物品;search_click:用户点击搜索结果中的物品;comment:用户对物品的评论;share: 分享;like:点赞;dislike:点衰;grade:评分;consume:消费;use:观看视频/听音乐/阅读;行为表记录的用户行为用于用户偏好建模 这一类行为事件一般埋自定义事件,具体参见SDK手册 在日志数据中用event_id=19999筛选出自定义事件后的arg1即为自定义的行为埋点
bhv_amt double 用户对物品的评分、消费、观看时长等。 页面调用updatePageProperties()或自定义事件调用setProperty()以kv方式埋入物品ID值 取日志args字段埋入的kv值,一般用ODPS的keyvalue()可以很方便解析出来
bhv_cnt double 行为次数,默认为1,消费可以埋购买件数 页面调用updatePageProperties()或自定义事件调用setProperty()以kv方式埋入物品ID值 取日志args字段埋入的kv值,一般用ODPS的keyvalue()可以很方便解析出来
bhv_datetime datetime 行为发生的时间,UTC格式。 SDK自动采集 取日志的localtime字段
content string 用户对物品的评价文本 自定义事件调用setProperty()以kv方式埋入物品ID值 取日志args字段埋入的kv值,一般用ODPS的keyvalue()可以很方便解析出来
media_type string 如果bhv_type=share,该字段记录分享到目标媒体。短信:sms,邮件:email,微博:sina_wb,微信好友:wechat_friend,微信朋友圈:wechat_circle,QQ空间:qq_zone,来往好友:laiwang_friend,来往动态:laiwang_circle 自定义事件调用setProperty()以kv方式埋入物品ID值 取日志args字段埋入的kv值,一般用ODPS的keyvalue()可以很方便解析出来
pos_type string 行为发生的位置及类型 SDK没有采集经纬度 默认pos_type 取 ‘poi’
position string 行为发生的位置 SDK没有采集经纬度 可在日志中取province或city字段
env string JSON String:IP、network、device等其他自定义环境变量 SDK自动采集 日志中取ip、network_type、brand、device_model等字段
trace_id string 返回的推荐列表用于跟踪效果。如果对item_id 的行为不是来自推荐引导,则为NULL 该ID可以埋入行为的属性kv值里面 分析效果时候取日志args字段埋入的kv值

*注:不同行为bhv_type要埋点不同的参数,具体参见帮助文档,如物品点击click需埋点商品金额bhv_amt参数,用品评论comment需埋点content参数

2.3 加工行为数据

示例:各个城市的用户把商品加入心愿单的行为那首先需要用ODPS DDL创建数据表,如下:

  1. CREATE TABLE user_behavior (
  2. user_id STRING,
  3. item_id STRING,
  4. bhv_type STRING,
  5. bhv_amt DOUBLE,
  6. bhv_datetime DATETIME,
  7. pos_type string,
  8. position string
  9. )
  10. PARTITIONED BY (ds STRING);

接着,按上述的取埋点内容方法,将内容对应更新到相应字段:

  1. INSERT OVERWRITE TABLE user_behavior PARTITION (ds='20160101')
  2. select
  3. utdid AS user_id
  4. , keyvalue(args, '\;', ':', 'itemid的key值') AS item_id
  5. , 'favorite' AS bhv_type
  6. , keyvalue(args, '\;', ':', 'item金额的key值') AS bhv_amt
  7. , local_time AS bhv_datetime
  8. ,'poi' as pos_type
  9. , city as position
  10. FROM SDK日志表名
本文导读目录
本文导读目录
以上内容是否对您有帮助?