数据采集:“埋点”到底要不要?

随着移动互联网时代的兴起和数据量的大规模爆发,越来越多的互联网企业开始重视数据的质量。在我创业的这一年里,接触了 200 多家创业型公司,发现如今的企业对数据的需求已经不仅仅局限于简单的PV、UV,而是更加重视用户使用行为数据的相关分析。做数据的同学都知道,在数据分析的道路上,数据采集是重中之重。数据采集的质量直接决定了数据的分析是否准确。而随着企业对数据的要求越来越高,埋点技术也被推到了“风口浪尖”。所谓,埋的好是高手,埋不好反倒伤了自己。而在数据采集的道路上大家经常会遇到各种各样的问题,今天我们就来分析一下埋点是否需要。

首先,把数据采集的问题归结为三类:

  • 不知道怎么采,包括采集什么数据以及用什么技术手段采集;
  • “埋点”混乱,出现埋错、漏埋这样的问题;
  • 数据团队和业务工程团队配合困难,往往产品升级的优先级大于数据采集的优先级。

上面这三类问题让数据团队相当痛苦,进而幻想弃用数据采集,而尝试新方案后,进而迎来的是更大的失望。这里我对这三类问题的现状及应对之策做一下分析。

  • “不知道怎么采”

一般创业公司的数据采集,分为三种方式:

第一种直接使用友盟、百度统计这样的第三方统计工具,通过嵌入 App SDK 或 JS SDK,来直接查看统计数据。这种方式的好处是简单、免费,因此使用非常普及。对于看一些网站访问量、活跃用户量这样的宏观数据需求,基本能够满足。但是,对于现在一些涉及订单交易类型的产品,仅仅宏观的简单统计数据已经不能满足用户的需求了,他们更加关注一些深度的关键指标分析,例如:用户渠道转化、新增、留存、多维度交叉分析等。这个时候才发现第三方统计工具很难满足对数据的需求,而出现这样的问题并不是因为工具的分析能力薄弱,而是因为这类工具对于数据采集的不完整。 通过这种方式 SDK 只能够采集到一些基本的用户行为数据,比如设备的基本信息,用户执行的基本操作等。但是服务端和数据库中的数据并没有采集,一些提交操作,比如提交订单对应的成本价格、折扣情况等信息也没有采集,这就导致后续的分析成了“巧妇难为无米之炊”。通过客户端 SDK采集数据还有一个问题就是经常觉得统计不准,和自己的业务数据库数据对不上,出现丢数据的情况。这是前端数据采集的先天缺陷,因为网络异常,或者统计口径不一致,都会导致数据对不上。

第二种是直接使用业务数据库做统计分析。一般的互联网产品,后端都有自己的业务数据库,里面存储了订单、用户注册信息等数据,基于这些数据,一些常用的统计分析都能够搞定。这种方式天然的就能分析业务数据,并且是实时、准确的。但不足之处有两点:一是业务数据库在设计之初就是为了满足正常的业务运转,给机器读写访问的。为了提升性能,会进行一些分表等操作。一个正常的业务都要有几十张甚至上百张数据表,这些表之间有复杂的依赖关系。这就导致业务分析人员很难理解表含义。即使硬着头皮花了两三个月时间搞懂了,隔天工程师又告诉你因为性能问题拆表了,你就崩溃了。另一个不足之处是业务数据表的设计是针对高并发低延迟的小操作,而数据分析常常是针对大数据进行批量操作的,这样就导致性能很差。

第三种是通过 Web 日志进行统计分析。这种方式相较于第二种,完成了数据的解耦,使业务数据和统计分析数据相互分离。然而,这种方式的问题是“目的不纯”。Web日志往往是工程师为了方便Debug顺便搞搞,这样的日志对于业务层面的分析,常常“缺斤少两”。并且从打印日志到处理日志再到输出结果,整个过程很容易出错,我在百度就花了几年的时间解决这一问题。

所以,以上三种方式虽然都多多少少解决了一部分数据采集的问题,但又都解决的不彻底。

  • “埋点混乱”

聊完采集方法,再来说说关于埋点的管理。我曾经接触了一家做了七八年的老牌互联网公司,他们的数据采集有 400 多个点。每次数据产品经理提出数据采集的需求后,工程师就会按照要求增加埋点,然后交给数据产品经理去验证。数据产品经理在试用的时候也感觉不到异常,可等产品上线之后,才发现埋的不对,再进行升级发版操作,整个过程效率极低。我们发现,一个公司发展到了一定程度,没有专人去负责埋点管理工作,数据采集就完全没有准确性可言。甚至有时产品上线之后,才发现数据采集的工作没有做,也就是漏埋了。

于是数据团队又开始幻想,既然埋点这么容易出问题,有没有可能不埋点?这就像寻找可以祈求风调雨顺的神灵。在 2010 年,我的团队曾经做了一个叫 ClickMonkey 的产品,只要页面上嵌入 SDK,就可以采集页面上所有的点击行为,然后就可以绘制出用户点击的热力图,这种方式对于一些探索式的调研还是比较有用的。到了2013 年,国外有家数据分析公司 Heap Analytics,把这种方式更近一步,将 App 的操作尽量多的采集下来,然后通过界面配置的方式对关键行为进行定义,这样便完成了所谓的“无埋点”数据采集。使用这种方案,必须在产品中嵌入 SDK,等于做了一个统一的埋点,所以“无埋点”的叫法实际上是“全埋点”的代名词。

另外,这种方式同样也只能采集前端数据,后端服务器和数据库中的数据,依旧是无可奈何的。并且,即便进行前端数据采集,也无法深入到更细粒度。比如提交订单操作,订单运费、成本价格之类的维度信息,都丢失掉了,只剩下“提交”这一个行为类型。

对于非技术人员,容易被这种方式的名称和直接优势所吸引,但很快又会发现许多深度数据分析需求无法直接满足,进而有种被忽悠的感觉,会感到失望。其实不止是非技术人员,即使是技术人员,也都会让我解释一下“可视化埋点”的原理,说明“无埋点”真是个有迷惑性又不甚清晰的概念,难以细究。这里说一下关键点:一是事先在产品上埋一个 SDK,二是通过可视化的方式,生成配置信息,也就是事件名称之类的定义,三是将采集的数据按照配置重命名,进而就能做分析了。

  • “数据团队和业务工程团队的配合问题”

最后,我们再聊一聊数据采集中遇到的非技术性问题。一般来说,公司到了 A 轮以后,都会有专门的数据团队或者兼职数据人员,对公司的一些业务指标负责。即使为了拿到这些基本的业务指标,一般也要工程团队去配合做一些数据采集工作。这个时候雷军的“快”理念就起到作用了,天下武功唯快不破。于是所有事情都要给产品迭代升级让路,快的都没有时间做数据采集了。殊不知没有数据指标的支撑,又怎么衡量这个功能升级是不是合理的呢?互联网产品并不是功能越多就越好,产品是否经得起用户考验,还是要基于数据说话的,然后学习新知识,用于下一轮的迭代。

数据团队和业务工程团队是平级的团队,而数据团队看起来总是给业务工程团队增加麻烦事儿,似乎也不能直接提升工程团队的 KPI,所以就导致需求不被重视,总是被更高优先级的事情挤掉,数据的事情难有进展。

解决之道

前面给大家抛出了数据采集中常见的三类问题,下面我们来看一下应对之道。

对于不知道数据怎么采的问题,首先从意识上要重视数据采集工作。数据的事情归结起来就两点:数据采集和数据分析。可不能只看到数据分析而忽略了数据采集。事实上我个人在百度做数据的几年里,最大的心得就是数据这个事情要做好,最重要的是数据源,数据源收集得好,就成功了一大半。数据采集的基本原则是全和细。全就是把多种数据源都进行采集,而不只是客户端的用户数据。细就是强调多维度,把事件发生的一系列维度信息,比如订单运费、成本价格等,尽量多的记录下来,方便后续交叉分析。其次,要有一个数据架构师,对数据采集工作负责,每次数据采集点的增加或变更,都要经过系统化的审核管理,不能顺便搞搞。最后,我这里要推荐 Event 数据模型,针对用户行为数据,简化成一张宽表,将用户的操作归结为一系列的事件。

对于埋点混乱的问题,前面提到的数据架构师的角色,要对这块的管理负责。如果前面完成对 Event 的梳理,这里的埋点就会清晰很多。另外还要推荐尽量从后端进行埋点,这样便无需多客户端埋点了。当然,如果有行为只在客户端发生,还是要在客户端进行埋点的。对于业务复杂的情况,只有负责人还不够。目前我们神策分析针对这个问题,推出了埋点管理功能,对于每个采集点的数据收集情况,都能够做到全盘监控,并且可以针对一些无效采集点进行禁用。总之是希望把这个问题尽量好的解决掉。

对于数据团队和工程团队的配合问题,我这里是想说给创业公司的创始人听的。两个平行部门间的推动,是很难的。数据的事情一定要自上而下的推动,也就是创始人一定要重视数据,把数据需求的优先级提升,这样在项目排期时,能够把数据的需求同时做了。我们知道两军对战,情报收集工作的重要性。做产品也是一样,数据收集工作的重要性不言而喻。

最后,期望越来越多的创始人,从拍脑袋决策逐步向数据驱动决策做出转变。

原文发布时间为:2016年7月21日 

本文来自合作伙伴至顶网,了解相关信息可以关注至顶网。

时间: 2024-10-29 03:58:10

数据采集:“埋点”到底要不要?的相关文章

胖子哥的大数据之路(16):数据采集标准-我们到底需要什么样的数据?

一.前言       刚刚有一个好友向我咨询数据相关的问题,朋友目前是IT设备生产厂商的人.从好友的描述中,提到对用户特征获取的需求.包括:人的兴趣爱好.关注焦点等,在用户的描述中其实只是直觉性的列决出了几点,然后基于此作相应的后续产品或服务推荐.朋友要表达的内容,在我理解,其实是想获取用户的完整的画像信息,只是她并不清楚,完整的用户标签体系应该是个什么样子而已,数据标签体系作为下一个系列,我们单独探讨.在此,我们讨论的问题聚焦到,要想实现业务目标,我们到底需要什么采集(此处不区分自有,还是外部

APP添加CNZZ统计插件教程 Android版添加phonegap_Android

KeyMob移动广告平台是精准稳定的广告SDK.移动广告平台,致力于塑造国内最具有影响力的移动广告平台.主营移动广告服务,横跨IOS.Android两大平台,包含横幅.插屏.全屏.视频广告.banner等多种广告形式.一.导入JAR包使用Eclipse进行开发的用户,首先将下载的MobileProbe.jar解压到本地工程目录下的libs子目录里面(例如,您的工程目录为,D:workspaceXXproject,请将MobileProbe.jar放入D:workspaceXXprojectlib

从“埋点技术已死?”开始说起

大数据时代的到来意味着数据量的爆炸,也意味着收集数据的难度将大幅增加.为了将海量的数据收集起来,埋点技术应运而生.然而随着大数据的发展和深入,用户的要求越来越高,埋点技术开始变得力不从心. 近期,一些公司开始以"无埋点技术"为卖点,开始到处宣传无埋点比埋点好,那么到底事实如何了? 埋点技术的时代 埋点技术通过在代码的关键部位植入统计代码,追踪用户的点击行为;或者植入多段代码,追踪用户的连续行为;并通过建立模型等方法,得出用户操作行为;最终作为建立产品数据系统的一个环节准确的收集数据.

WiFi真正的商业价值到底在哪里

近日,一家名为WiFi共享精灵的企业获得千万美元融资的新闻引爆了互联网业界的关注,这也让外界开始掀开不为人知的WiFi争夺战的内幕. "商用WiFi,下一个移动入口"的提法被响亮推出,而在这个高达亿万级的市场里,运营商.互联网业界大佬.草根创业者均云集于此,试图掘金WiFi所蕴藏的无穷的商业价值. 相比此前炙手可热的智能家居的争夺,WiFi的争夺无疑意义更大.看看互联网世界的发展,人与信息的连接,人与交易的连接,人与信息的连接创造了BAT国内互联网界的三大巨头,而未来更大的蓝海在于人与

现阶段的seo到底如何做网站排名?

相信现在的seoer最头疼的莫过于外链建设了,百度一下外链建设的方法,发现基本上都是那几种:友链,百度产品,博客,B2B,分类信息,软文.在之前外链为皇的年代.这些方法确实很不错.效果也很明显.但是现如今百度对于各种外链的打击,外链所占到的权重已经微乎其微了,那么现在的seoer到底该怎么做才能获取好的网站排名呢?本人才疏学浅,简要说明一下自己的观点. 1.网站内部结构优化 我们现在做优化基本上就是百度优化,毕竟百度占据了搜索引擎80%的市场份额,在百度的场子玩,肯定要符合人家的规矩.百度站长工

基于TableStore的数据采集分析系统介绍

摘要 在互联网高度发达的今天,ipad.手机等智能终端设备随处可见,运行在其中的APP.网站也非常多,如何采集终端数据进行分析,提升软件的品质非常重要,例如PV/UV统计.用户行为数据统计与分析等.虽然场景简单,但是数据量大,对系统的吞吐量.实时性.分析能力.查询能力都有较高的要求,搭建起来并不容易.今天我们来介绍一下基于阿里云表格存储,以及相关的大数据产品来采集与分析数据的方案. TableStore TableStore(表格存储)是阿里云自主研发的专业级分布式NoSQL数据库,是基于共享存

DataWorks数据埋点的设计及未来发展的思考

什么是前端埋点?         马总曾经说过现在是DT时代(大数据的时代).         数据已经成为一家公司最宝贵的财富,越来越多的互联网公司开始重视数据的应用.数据应用的过程是:数据收集 -> 数据整理(数据同步)-> 数据分析 -> 数据可视化.         前端埋点是用户行为数据采集领域非常重要的手段,指的是针对特定用户行为或事件进行捕获.处理和发送的相关技术及其实施过程.         当然前端埋点上报也不仅仅有用户行为数据的采集,还有一个很重要的领域--前端健康度

数据增长第一步:选择“最优”的埋点采集方式

本文讲的是数据增长第一步:选择"最优"的埋点采集方式[IT168 评论]在这一个大数据的时代,凭经验拍脑门的决策方式已成过去,数据的重要性不言而喻,数据分析的第一步就是从数据源头做好采集工作,我们今天的主题:数据埋点. 埋点:数据分析的第一步 大数据,从庞杂的数据背后挖掘.分析用户的行为习惯和喜好,找出更符合用户"口味"的产品和服务,并结合用户需求有针对性地调整和优化自身,正是大数据的价值.而这信息的汇集.分析就绕不开"埋点".诸葛io为企业提供

大数据到底怎么学:数据科学概论与大数据学习误区

"数据科学家走在通往无所不知的路上,走到尽头才发现,自己一无所知."-Will Cukierski,Head of Competitions & Data Scientist at Kaggle 最近不少网友向我咨询如何学习大数据技术?大数据怎么入门?怎么做大数据分析?数据科学需要学习那些技术?大数据的应用前景等等问题.由于大数据技术涉及内容太庞杂,大数据应用领域广泛,而且各领域和方向采用的关键技术差异性也会较大,难以三言两语说清楚,本文从数据科学和大数据关键技术体系角度,来说