大数据之路——阿里巴巴大数据实践:日志采集要点

1.基于UT(user visit)采集的“透传参数功能”

透传参数功能,即把当前页面的某些信息,传到下个页面,甚至是下下个页面的日志中。比如:访问淘宝,搜索“连衣裙”->list页面->商品A,分析商品A的时候,顺带着,list页面和“连衣裙”关键字都会被放入A的日志中了,给以后数据分析带来了很大的方便。

2.客户端日志聚合

在客户访问页面时,我们提前在客户端进行日志聚合,减少对日志采集服务器端的请求次数,还可以适当减少日志大小。比如:若商品每次曝光就对应一条日志(商品每次从数据库中加载出来,显示在网页上),那么我们从上往下浏览网页的时候,内容不断的被曝光,日志不断的产生,我们可以将整个页面的所有信息压缩在一起,等到合适的机会在发送到日志采集器上。

3.手机回退功能,可能产生垃圾数据,客户也许只有一次有效访问,因为回退,在此页面出现了很多次,需要对干扰数据特殊处理。

4.因为APP分为两类:纯Native APP和Hybrid APP(既含有Native APP,又有H5页面镶嵌)

很多情况下,Native日志和H5日志互跳,即使关联也无法还原路径,数据丢失严重。为了将日志统一管理,阿里使用Native采集SDK的方式,将H5日志归到Native日志中,主要元婴如下:

  • SDK采集更多的设备相关的信息,这与大数据分析和挖掘息息相关
  • SDK处理日志会先缓存在本地,而后借机上传,可以避免在网络不佳的情况下,文件选择合适时机顺利上传。

5.WebView作为桥接js的框架,如果未来更改事件,不需要改动WebView层,只需要改动js的部分内容以及移动客户采集日志的SDK。

6.无线设备的识别,通过是否登陆,分为ID标识和UTDID标识,UTDID作为设备的唯一标识。

7.对于很多大型的电商网站而言,数据分析人员对于点击流前端的促销页面和位于后端的商品页面的关注点是不一样的,往往对这两种日志需要分类,阿里巴巴为了满足高频率的更新数据,减少服务器分类日志的压力,将分类任务分配到客户端(使用真正意义的“分布式”)。

8.采集与计算的一体化,以PV为例,对于PV日志的采集,以前是依托URL正则分类,这样会增加服务器分类日志所带来的压力,现在通过SPM(SPM实现了穿透参数)规范,在URL就可以看到SPM参数,通过SPM注册和部署,用户即可讲任意的页面流量进行聚类。

9.大促销,如“双11”采用TT实时消息处理(类似于storm+kafka)保证实时推荐。

全部评论

相关推荐

不愿透露姓名的神秘牛友
11-21 17:16
科大讯飞 算法工程师 28.0k*14.0, 百分之三十是绩效,惯例只发0.9
点赞 评论 收藏
分享
霁华Tel:秋招结束了,好累。我自编了一篇对话,语言别人看不懂,我觉得有某种力量在控制我的身体,我明明觉得有些东西就在眼前,但身边的人却说啥也没有,有神秘人通过电视,手机等在暗暗的给我发信号,我有时候会突然觉得身体的某一部分不属于我了。面对不同的人或场合,我表现出不一样的自己,以至于都不知道自己到底是什么样子的人。我觉得我已经做的很好,不需要其他人的建议和批评,我有些时候难以控制的兴奋,但是呼吸都让人开心。
点赞 评论 收藏
分享
头像
11-26 15:46
已编辑
中南大学 后端
字节国际 电商后端 24k-35k
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务