数据埋点方案简述

数据是机器学习的前提,前面 使用Python爬虫抓取数据 篇介绍了通过爬虫抓取网页的方式采集数据。对于新产品,最重要的事项是获取用户,参看前面互联网产品怎么发掘种子用户和意见领袖 这篇。

在产品上线之后,最重要的工作就是数据分析,产品和运营人员关心使用产品的用户的行为、使用习惯、人口统计信息及运营指标等,这些都依赖于数据。埋点是采集数据的重要途径。

数据埋点不是新名词,在电脑网站出来之后就有统计工具,站长们很熟悉的谷歌、百度统计等工具,通过在HTML页面中嵌入它们提供的js代码实现数据采集。

多说几句,无论谷歌、百度还是其它的web页面统计工具,技术实现原理都是由Web服务器端通过代码的方式向浏览器返回一张1*1像素的透明图片(在网页上人眼看不到这张图片),图片的过期时间设置成立即过期,这样每次打开页面浏览器都会去请求这张图片,服务器端就可以记录下请求数据。明白了原理,自己也可以写一个简单的统计工具。

在设计埋点方案之前需要确定收集哪些数据,将这些需求汇总,产品、运营、技术一起确定埋点方案。

从埋点位置划分,可以分为:前端埋点,后端埋点。

前端埋点

顾名思义就是在用户可见的那端(APP、网页、PC客户端)嵌入数据采集代码,像一些第三方的统计工具,比如友盟等,前端嵌入它们的SDK,调用SDK提供的接口采集数据。

前端埋点能收集到用户在界面上的操作轨迹,这些数据后端没法收集,比如用户点击了哪个按钮,打开了哪些页面,页面之间的跳转次序等。

后端埋点

后端埋点就是在服务端嵌入代码,收集数据,由于是在服务端采集数据,可以避免前端埋点的以下一些问题:

客户端采集数据,为了尽量减少对用户体验的影响,需要对采集的数据压缩、暂存,为减少移动端的数据流量,一般只在网络状况良好的情况下向服务器发送数据,因此数据会有延迟,丢数据等弊端。而在服务端采集数据,数据在内网传输,数据传输的即时性强,丢失数据的风险小。

客户端采集数据,如果要增加采集点或变更采集方案,需要修改客户端代码,这就需要发布新版本,受发布周期的影响,而且通常很多用户并不会及时更新版本,将导致新方案不能覆盖所有用户。在服务端采集数据则没有这些问题。

通过以上比较,实施时尽量采用后端埋点,除非后端没法采集到所需要的数据。

前端埋点技术

目前常见的前端埋点技术,有下面三类:

1、代码埋点

谷歌统计、百度统计、友盟等都是代码埋点的例子。在前端代码里嵌入数据采集代码,比如在APP启动时嵌入,在按钮点击事件里嵌入等。

代码埋点的优点是控制精准,采集的数据项精确。缺点:首先是需要开发人员到处添加采集代码,添加和修改的工作量大;其次变更采集策略,需要发布新版本,代价巨大;此外对于APP来说还有耗电、消耗数据流量、丢失数据的风险。

2、可视化埋点

从上面可知,代码埋点的缺点很多,最大的缺点是变更需要开发人员修改代码,不灵活。为了改善,有的公司开发出了可视化埋点技术,产品与运营人员通过GUI界面,鼠标点击的方式随时调整埋点位置,增加、取消埋点,再也不需要开发人员的介入,而且不用发布新版本。

最早提供这种方案的是 Mixpanel 公司,Github上有该公司发布的SDK代码,https://github.com/mixpanel。国内提供可视化埋点技术的公司大都是在它的基础上进行二次开发而成。

技术实现原理

基本原理就是将埋点位置信息做成可配置的资源,通过在后台管理端上操作生成这些配置,客户端启动或者定时从服务器端获取这些配置,客户端根据最新的配置采集数据,发送给服务端。

具体实现是SDK定时做界面截图,在截图的同时从界面UI的根对象开始遍历所有的可视化子对象,得到其层级关系。根据截图和UI元素的可视化信息重新渲染页面,识别可埋点的控件。当产品人员在后台管理端的截屏画面上点击可埋点控件,设置事件关联方面的配置,服务器保存这些配置,客户端在获取到这些配置信息以后,按照新配置采集数据。

3、无埋点

原理跟可视化埋点几乎一样,唯一的不同就是,无埋点是先把所有控件的操作数据采集下来,发给服务器,数据分析人员在后台管理端设置对哪些数据进行分析。由此可知,这个方案收集的数据量巨大,增加了网络传输和服务器存储负担。

无埋点比可视化方案优势的地方是收集的历史数据齐全,可以回溯分析过往数据。

工具选择

国内不少数据服务公司提供了数据采集、分析工具,初创公司可以选择使用它们的服务,不过最好选择可以独立部署的提供方,方便控制,防止数据泄漏。

总结一下,数据埋点需要根据需求而定,灵活使用以上方案,扬长避短。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,324评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,303评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,192评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,555评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,569评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,566评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,927评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,583评论 0 257
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,827评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,590评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,669评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,365评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,941评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,928评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,159评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,880评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,399评论 2 342

推荐阅读更多精彩内容