自动采集数据(联合创始人:从数据组成的角度来说完善的闭环数据源)
优采云 发布时间: 2021-10-11 09:00自动采集数据(联合创始人:从数据组成的角度来说完善的闭环数据源)
本文作者叶凌迪是GrowingIO的联合创始人。他还是一位连续创业者和企业协作工具 Windmill 的联合创始人。他拥有十多年的工程开发经验和多年的项目管理经验。现在负责核心项目开发和技术实施。. 本文是他对互联网创业公司数据采集的思考和体会以及分析。
这六七年,我一直在企业服务领域创业,用过很多分析工具:GA、Mixpanel、Heap等,很强大,但总觉得少了点什么。我们已经看到了 PV/UV 等概览指标,但它们无法指导我们做得更好。在通过这些粗略的数据知道用户做了什么之后,我们需要看看他们是怎么做的,并理解他们为什么这样做。我们需要实时完整的用户行为数据。通过对用户行为全过程的分析,我们可以找到关键的转化节点和用户流失的核心原因,从而帮助我们对症下药,找到可执行的指标,并作为优化动作来实施。
今天,我想分享的是我们在这方面的一些探索和解决方案。
一. 用户行为分析的巨大需求
单纯从数据构成来看,一个完整的闭环数据源主要分为三个区块:第一个区块是用户行为数据,第二个区块是服务器日志数据,第三个区块是交易数据。其中,除了交易数据往往存储在离线数据库中并通过ETL获取和分析外,行为数据和日志数据往往是相似的。完整的用户行为数据基本可以覆盖大部分服务端日志数据。同时,它收录了很多日志数据中所缺乏的信息。
从技术发展来看,近几年增长最快的可以说是前端。每个月都有很多新的东西出现。总体趋势是开发单页应用,追求用户体验。同时,也有移动端的应用,也会产生大量的行为数据,不会与服务器进行过多的交互。
因此,从应用提供商那里,我们需要了解屏幕前的人如何使用我们的产品,了解用户行为背后的价值。
GrowingIO 于去年 12 月 8 日发布至今已有数月时间,目前已被数百家客户使用。我总结了客户经常问我们的分析需求,大致可以分为三个场景:
二. 复杂且容易出错的传统分析方法
归根结底,所有的分析最终都是为了业务,而业务是为了人。因此,用户行为分析意味着我们需要建立一套基于用户行为的分析系统。除了了解用户的“谁”做了“什么”和“他做了什么”,然后了解了“为什么”去做,开出正确的补救措施,并转化为一个优化动作。
分析是一个长期的优化过程,需要我们持续监控数据的变化。除了行为数据指标,还有一类数据指标,我们称之为虚荣指标,比如PV、UV等流量概览数据。这些指标一看到就可以看到,并不能指导我们做得更好。用户行为数据指标是另外一个类别,比如我们上面介绍的用户获取、用户激活、用户留存。了解这些行为会对应一个优化过程,所以也称为Actionable Metric,这也是用户行为数据的魅力所在。
那么接下来,我们将开始跟踪用户行为,我们如何开始?一般可分为以下七个步骤:
1.确定分析场景或目标
确定一个场景或目标。例如,我们发现很多用户访问了注册页面,但很少有人完成注册。我们的目标是提高注册转化率,了解用户为什么没有完成注册,哪个步骤屏蔽了用户。
2.想想你需要知道哪些数据
想想我们需要了解哪些数据来帮助我们实现这一目标。比如之前的目标,我们需要拆解从进入注册页面到完成注册的每一步的数据,每一个输入的数据,同时,完成或者没有成为的人的特征数据这些步骤。
3.确定谁将负责采集数据?
我们的工程师负责采集这些数据。
4.什么时候评测分析?
如何分析采集的数据以及何时评估 采集 收到的数据。
5.如何给出优化方案?
发现问题后,如何想出解决办法。例如,无论是设计上的改进,还是工程上的错误。
6.谁负责实施解决方案。确定计划实施的责任人。
7.如何评估解决方案的有效性?下一轮数据采集并分析,返回第一步继续迭代。
知易行难。在这整个过程中,步骤2到4是关键。目前GA、Mixpanel、友盟等传统服务商采用的方式就是我所说的Capture模式。通过在客户端埋点某些点,将采集相关数据发送到云端,最终呈现在云端。比如图中的例子,相信房间里的每个人都写过类似的代码。
捕获模式是一种非常有效的非探索性分析方法。但同时,对整个过程的参与者也提出了非常高的要求:
缺点一:依赖体验
捕获模式在很大程度上依赖于人类的经验和直觉。不是经验和直觉不好,而是有时我们不知道什么是好的。经验将成为一种先入为主的负担。我们需要用数据来证明。
缺点二:通信成本高
此外,有效的分析结果取决于数据的完整性和完整性。和很多公司沟通后,很多抱怨都是“日志格式都不能统一”,更不用说后续的分析了。这不是特定人的问题,而是协作和沟通的问题。涉及的人越多,产品经理、分析师、工程师、运维等,每个人的专业领域都不一样。产生误解是正常的。我曾经和我们的 CEO Simon 交流过。当他在领英领导数据分析部门时,领英组建了一个多达 27 人的葬礼团队。他们每天召开会议,统一墓地的形式和地点。几个星期。
缺点三:大量时间数据清洗和数据分析代码入侵
此外,由于需求的多变性,墓地被划分为多个加建,缺乏整体设计和统一管理,结果自然是极其脏乱。因此,我们的数据工程师仍然有一个大的数据清理工作,手动运行 ETL 生成报告。据统计,70%~80%的分析工作都花在了数据清洗和手工ETL上,只有20%左右是在做真正有商业价值的事情。另一方面,作为清洁工程师,我最讨厌的是大量分析代码侵入我的业务代码。我不敢删,也不敢改。随着时间的推移,整个代码库变得混乱。
缺点4:数据遗漏和错误步进
以上还是不错的。最气人的是发现采集的数据有误或丢失。更正后,我不得不再次运行该过程。一两周过去了。这就是为什么数据分析工作如此耗时且通常以月为单位计算的原因,而且效率非常低。
三. 数据分析不埋点原理
在经历了无数个痛苦的夜晚之后,我们决定转变思路,希望能尽量减少人为错误。我们称之为记录模式。与Capture模式不同,Record模式使用机器代替人的体验,自动采集用户在网站或应用程序中的全部行为数据。由于自动化,我们从分析过程开始就控制数据的格式。
所有数据,从业务角度来看,分为5个维度:谁,行为背后的人有什么属性;何时,何时触发行为;哪里,市区浏览器甚至GPS等;内容是什么;怎么做,怎么做。基于信息的解构,保证数据从源头上是干净的。在此基础上,我们可以完全自动化ETL,需要什么数据可以随时追溯。
回到上一个过程的第二到第四步,我们将多方参与者的数量减少到只有一方。无论是产品经理、分析师还是运营人员,您都可以使用可视化工具来查询和分析数据。你所看到的就是你得到的。不仅支持PC,还支持iOS、Android和Hybrid,实现跨屏用户分析。
作为用户行为分析工具的提供者,GrowingIO 不仅内部使用,还需要适应外部上千种网站和应用,所以我们在实现过程中做了很多探索:
◦ 自动用户行为采集
我们目前接触的GUI程序,无论是Web App、iOS App还是Android App,都是基于两个原则,一个是树状结构,一个是事件驱动模型。无论是 Web 上的 DOM 节点结构,还是 App 上的 UI 控件结构,都构建了一个完整的树状结构并呈现在页面或屏幕上。所以通过监控和检测树状结构,我们可以很容易的知道哪些节点发生了变化,什么时候发生了变化,发生了什么变化。同时,当用户进行某种操作,比如鼠标点击或屏幕触摸时,会触发一个事件,并触发与该事件绑定的回调函数开始执行。基于这两点的理解,SDK中如何实现无埋点就比较清楚了。
◦ 数据可视化
如何将采集 接收到的数据与业务目标进行匹配。我们的解决方案是我们的可视化工具。如前所述,任何原子数据都被分解为 5 个不同的分类维度。因此,我们在可视化工具中做匹配时,是对不同维度的信息进行匹配。例如,当一个链接被点击时,它会匹配内容或重定向地址是What,点击行为是How。还有它在页面上的定位信息,比如在树状结构中的层次位置,是否有一些id、class或者tag,都是用于数据匹配的信息。我们开发了一套智能匹配系统,通过学习用户的真实行为,建立了一套元素匹配规则引擎。也正是因为采集
◦ BI 业务分析
在系统设计过程中,在整个Data Pipeline流程中,数据处理完毕后,首先会根据不同的优先级通过Spark Streaming实时处理定义的数据,然后每次对匹配的数据进行离线预聚合. ,多维分析非常灵活。
用户行为数据采集的目的是通过了解用户过去的行为来预测未来会发生什么,不埋点,随时回顾数据,以便产品经理处理用户行为分析全过程由他本人完成。GrowingIO 希望提供一个简单、快速、*敏*感*词*的数据分析产品,可以大大简化分析流程,提交效率,直达业务。这一切的基础是我们从第一天就开始开发的无埋点智能全数据采集。基于此,我们优化产品体验,实现精细化运营,用数据驱动用户和收入增长。.
___________________________
GrowingIO 是新一代基于用户行为的数据分析产品。如果您属于以下三类人群,请立即关注我们,免费注册:
如果你是一名数据工程师,却“无所事事”地构建BI和配置嵌入代码:免费注册,立即减少无效加班;
如果您是产品经理,但不知道如何分解KPI:免费注册,三步洞察留存曲线,精准识别用户行为;
如果您是业务负责人,收入增长乏力:免费注册,让我们教您如何让客户高效下单。
_________________________