童话说说技术创业美文职业
投稿投诉
职业母婴
职场个人
历史治疗
笔记技能
美文纠纷
幽默家庭
范文作文
乐趣解密
创业案例
社会工作
新闻家居
心理安全
技术八卦
仲裁思考
生活时事
运势奇闻
说说企业
魅力社交
安好健康
传统笑话
童话初中
男女饮食
周易阅读
爱好两性

整天看用户埋点数据,知道数据是咋来的吗?

2月6日 相见欢投稿
  我们平时看到的报表复杂而多样,能够通过多种纬度的数据评估用户的使用习惯和对应功能的价值。然而这些报表是如何产生的呢?今天咱们就看看上报数据一步一步变成报表的大致流程。
  所有上报的数据都是为了记录一次事件的发生或者描述一个状态,具体的上报数据可以设计为KEYVALUE的形式或者数据组合的形式。KEYVALUE的形式主要用来统计简单的计数类上报,如按钮点击的次数,某个选项的值等,KEY用来区分不同的事件,VALUE代表事件发生的次数、状态值等;数据组合的主要用来描述一个事件或者状态需要多种属性描述的场景,比如下载成功事件,描述这个事件的数据组合可能包括对应的下载地址、下载渠道来源、下载耗时等信息。
  当上报数据设计好后,后续的工作才能正常开展。下面一步一步说。
  1、埋点
  所谓埋点,就是在正常的功能逻辑中添加统计逻辑。拿统计微信右上角的点击次数为例,上报的数据可以采用KEYVALUE形式,我们定义KEY为CLICKADDBTN,VALUE的值为点击的次数。当用户点击时,展示菜单的代码会通过按钮的回调(详见《聊聊同步、异步和回调》)来触发执行,程序猿在业务代码执行完后,又加上了统计代码,把CLICKADDBTN对应的VALUE加1,被统计到了一次使用。
  2、上报
  并不是每统计到一次事件或者状态就会发起数据上报,客户端统计到的数据会先暂时存储在内存或者磁盘上,当用户启动、退出应用程序的时候,或者在其他更合适的时机,将当前周期统计到的事件批量上报到服务器,这样做的目的主要是考虑到与服务器多次建立连接的性能损耗(详见《不得不知的TCP和UDP》)和流量问题(相同大小的数据分多次发送比一次发送要消耗更多流量),另外客户端在上报具体的统计事件之外,还会将标识用户的ID一并上报,后续用于计算用户相关的数据如日使用用户和留存率等。
  3、后台记录日志
  数据上报到服务器后,服务器会将客户端上报的原始数据存储到服务器的磁盘中。一般来说,非强实时性的数据上报到服务器后,并不会立即参与计算,获得最终的统计结果,比如一个功能的日使用次数,日用户数,日留存等数据,而是等到服务器负载较低的时间段利用预先配置的计划任务进行离线处理。这样处理的目的是为了节约服务器资源(钱),因为大家肯定不想因为计算统计数据而影响实时业务的处理效率。
  4、计算入库
  报表中展示的数据,并不是客户端上报的原始数据,比如的使用次数、使用用户数、日留存率这三组数据,都是通过对客户端上报的CLICKADDBTN对应VALUE值的累加并结合上报用户ID二次计算得出的。
  如果我们的产品达到微信这种日登陆数五六亿,那么每天上报的统计数据将是海量的,为了从这种海量的数据中计算出的使用次数、使用用户数等信息,就需要用到数据仓库工具,比如当下流行的Hive处理工具,它基于Hadoop分布式系统基础框架,利用计算机集群的能力进行分布式计算。当数据仓库工具计算出最终的结果后,计划任务会将结果(的日使用次数、日使用用户数等数据)保存到数据库中,也就是入库过程。入库后的数据才能与前端对接,组成报表展示系统。
  一般情况下,原始数据经过数据仓库工具处理后,对应的日志文件还会在服务器上保留一段时间(一般37天),以便追溯统计问题,所以,如果发现统计数据有问题问题,一定要及时反馈给负责的程序猿,否则就会死无对证咯。
  5、展示
  当数据入库后,报表的展示就水到渠成了。报表系统通过前端页面用户的输入获取查询条件,然后通过后台数据库查询获得结果,在前端展示出来。
  这里只是简述了埋点数据上报、统计的大致流程,每个过程中还有很多细节要解决,如后台日志乱码问题、客户端异常导致数据丢失等。一旦数据出现问题,经常需要联系各方人员定位原因。在此呼吁广大的产品大虾一定要关心、爱护为你做统计需求的程序猿,他们上辈子都是偷了蟠桃的孙悟空。
投诉 评论 转载

当产品迭代时狗狗在做什么这周冬青问了我一个问题,产品为什么可以无限迭代下去呢?这个问题不小,非得写一篇短文才能完整地回答。产品从诞生开始,首先要搭建出一个强健的主场景,时间期限通常是一年。……入门级产品经理如何把握好产品的需求?刚开始做产品的时候,总是拿到需求就开始着手画原型,遇到卡壳的地方就去参考竞品,看看别人是怎么做的,接着再继续画原型,几个产品做下来,对于产品的了解仍然是微乎其微,对于如何做产品……产品经理必须知道的2B和2C那些事说到2B和2C想必身为产品经理的我们,可能没有人不知道,多少人为它兴奋,又为它懊恼,这种爱恨交织的感情难以言表,今儿就想跟大家聊聊关于2B和2C那些事儿。开门见山既然说到……深度长文:如何从社交行为模型定义产品需求人是群居、社会性的动物。社交行为无时无刻都在发生。发生行为中就产生了需求。需求也是多动可变的,当你在社交交流发生了障碍或者变化,都会结果产生影响。作者将社交行为层次拆分为……ApplePay繁华之外潜藏的危机这两天,朋友圈、微博、公众号都在狂刷ApplePay入华的消息,大有众星捧月之势,苹果的产品有如此的号召力着实令人震撼。中国有句老话叫居安思危未雨绸缪,繁华之外,我似乎看到了潜……少就是多,看两个奇葩的内容应用为何不追求“十万加”一个牛逼的产品,总是能自己创造一些词出来,例如之前百度贴吧出了“屌丝”,而如今,大家称呼一些牛逼的文案,往往会用微信造出的“十万加”来指代。所以我们看到了太多冲着十万加而……从产品的角度看为什么江南皮革厂能爆红?这两天一首叫作浙江温州江南皮革厂倒闭了的DJ神曲爆红网络。就算你没有买过皮革,相信你在过听这首歌之后将永远不会忘记在浙江温州这么个地方,有个江南皮革厂,老板叫黄鹤,吃喝嫖……腾讯产品经理:BAT面试的时候喜欢怎样的新人不知道什么时候开始,“产品经理”一词语就越来越火,不少人都梦想自己能成为一位NB的产品经理,做出一款能改变世界的APP。然而,理想很丰满,现实有时却很骨感。想做好一个产品经理需……产品经理入门技能书:用户体验设计的“一二二”原则新年期间,由于老家没有网络,就多读了几本书,尤其喜欢《礼记》一句话:“言前定则不跲(jia,二声),事前定则不困,行前定则不疚,道前定则不穷”。它很形象地反应了我们作为产……整天看用户埋点数据,知道数据是咋来的吗?我们平时看到的报表复杂而多样,能够通过多种纬度的数据评估用户的使用习惯和对应功能的价值。然而这些报表是如何产生的呢?今天咱们就看看上报数据一步一步变成报表的大致流程。所有……扎克伯格、科比等牛人是如何高效地度过每一天的(内附行程表)一整个人生,你将花30年睡觉、10年工作、6个月看广告、51天决定穿什么、3天算各种账单是不是觉得很多时间在自己无意识中悄悄溜走了?加班的时间占据你人生多少时间呢?你的忙……学点产品心理学只有读懂了孤独与存在,你才能读懂你的用户人会因为有人读懂他的孤独,而愿意把他当作终身朋友,这种朋友便是知己,东方自古有高山流水的友谊,这种友谊在普通人中间不是曲高和寡,而是个体之间的共性。对于产品人而言,拿捏个……
3分钟系列按TTPPRC商业模型,拆解漫威的商业模式谈谈激励的原则假设一个没有想法的产品菜鸟,他会给微信增加哪些功能?类似碰运气的功能,在产品设计中如何体现?这样的产品文案,用户真的看不懂!一张图带你快速掌握iOS设计规范移动产品基础模块设计规范之意见反馈工具软件社交化,一把留住或赶走用户的双刃剑深入分析美团和糯米的团购模式(三)如何打造一款快速增长的互联网产品?产品小白入门记一次独立跟进上线产品功能的全过程我用百度、阿里的产品经验,总结成了这9个产品设计方法
传奇人物李晋阳作文精致男孩的独家秘籍。zip断臂的天使也会飞作文校园江湖事叙事文幼儿园学期工作总结描写一件事的初中作文热闻聚热点网 销售业务员工作总结罚金在判决指定的期限是多久?蜜蜂急造王台几天出王?这位帅气的80后宝藏导演,可能要藏不住了如何培养儿童的创造力?“速度与激情”原来竟是这个意思

友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找作文动态热点娱乐育儿情感教程科技体育养生教案探索美文旅游财经日志励志范文论文时尚保健游戏护肤业界