数据埋点

http://www.techweb.com.cn/network/system/2016-02-22/2281763.shtml

1、埋点

所谓「埋点」,就是在正常的功能逻辑中添加统计逻辑。拿统计微信右上角「+」的点击次数为例,上报的数据可以采用KEY-VALUE形式,我们定义 KEY为「CLICK_ADD_BTN」,VALUE的值为点击的次数

2、上报

并不是每统计到一次事件或者状态就会发起数据上报,客户端统计到的数据会先暂时存储在内存或者磁盘上,当用户启动、退出应用程序的时候,或者在其他更合适的时机,将当前周期统计到的事件批量上报到服务器,这样做的目的主要是考虑到与服务器多次建立连接的性能损耗(详见《不得不知的TCP和UDP》) 和流量问题(相同大小的数据分多次发送比一次发送要消耗更多流量),另外客户端在上报具体的统计事件之外,还会将标识用户的ID一并上报,后续用于计算用户相关的数据如日使用用户和留存率等。

3.后台记录日志

数据上报到服务器后,服务器会将客户端上报的原始数据存储到服务器的磁盘中。一般来说,非强实时性的数据上报到服务器后,并不会立即参与计算

4.计算&入库

如果我们的产品达到微信这种日登陆数五六亿,那么每天上报的统计数据将是海量的,为了从这种海量的数据中计算出「+」的使用次数、使用用户数等信息,就需要用到「数据仓库工具」,比如当下流行的Hive处理工具,它基于Hadoop分布式系统基础框架,利用计算机集群的能力进行分布式计算。

一般情况下,原始数据经过数据仓库工具处理后,对应的日志文件还会在服务器上保留一段时间(一般3~7天),以便追溯统计问题

5.展示

报表系统通过前端页面用户的输入获取查询条件,然后通过后台数据库查询获得结果,在前端展示出来。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 13,864评论 6 13
  • 原作者做最大:原文链接 数据的重要性不言而喻,好的数据分析可以使我们的产品不偏离正确的轨道,做好数据分析的第一步就...
    尼克努努阅读 4,361评论 0 0
  • 数据是机器学习的前提,前面 使用Python爬虫抓取数据 篇介绍了通过爬虫抓取网页的方式采集数据。对于新产品,最重...
    AIAndData阅读 11,017评论 0 1
  • 一个人的记忆就是座城市,时间腐蚀着一切建筑,把高楼和道路全部沙化。如果你不往前走,就会被沙子掩埋。所以我们泪...
    宫宇商阅读 1,755评论 0 0
  • BIMBOY第四期培训感悟 2017-10-15—2017-10-22 北京昌平西御园酒店 四海八方而来,或喜或忧...
    半个文盲阅读 1,872评论 0 0