大家都知道,现在的商业模式都是由数据来驱动业务的,特别是在互联网行业,数据的重要性,尤为明显。那么如何让数据来驱动业务呢,这就不得不提到埋点系统。
所谓埋点,我相信大部分开发者都能理解是什么意思,也都曾经遇到过五花八门的埋点需求,甚是头大,可能跟我们的产品经理为此“大打出手”过。产品经理想要更加详细的数据分析,转化流程,漏斗及流程等等,而这些数据就需要非常多的埋点数据上报,对业务代码产生大量的入侵。数据收集上来之后还要写代码分析埋点数据,写可视化界面展示,这是让开发者最烦恼的事情。
这一切的问题都源于没有一套趁手的一体化埋点系统,那么如何才能设计一套自由度高,易使用的埋点系统呢?
一、自由设计字段,自由设计点位
对于埋点系统而言,它的字段(column)设计不同于监控系统。因为监控系统的数据不涉及主观意识,无论你是否需要,它们都是客观存在的。而埋点的作用主要用于满足产品经理的主观要求,比如,多少用户在什么时间点击了什么一个叫什么名字的按钮;他们下一步干了什么;留存是多少;诸如此类,光靠监控系统是做不到的。
所以,一套完整的埋点系统必须要具备设计字段和设计点位的能力。字段就是组成点位的一个个要素,点位可以当做一个事件,这个事件包含了id、名字、动作、事件、发生时间等,这些都可以是字段。
而点位,将一个个的字段组合在一起,组成了可以表达一个事件需要的所有属性,这个点位就可以生成了。后端的程序也可以根据这些属性将这个点位的数据统计分析出来,转化成产品经理需要的结果。
二、SDK的设计与创建
在没有一套完整的点位系统支撑的情况下,想要完成产品经理的埋点需求流程应该是这样的:产品提出需求 -> 开发设计上报字段 -> 找DB申请数据库 -> 开发完成上报逻辑 -> 开发接口获取分析数据 -> 开发页面展现数据。
整个过程非常的冗余,效率极低,这让开发无法更加关注业务,而需要设计整个过程。所以这些都可以让一套埋点系统来完成。让产生设计好点位之后,生成sdk后,开发只需要将数据上报就行了。
三、点位测试
对于一套完整的埋点系统,点位测试是必须要包含的环节。因为我们不可能要等到上线之后才去验证点位是否上报,这样不仅增加上线的风险,而且验证效率非常低。有了测试能力,我们就可以在上线之前进行充分的验证了。如图
四、数据可视化
当前边的准备工作都已经做完了,最终的目的就是需要把数据以可视化的形式展现出来。产品经理需要对数据有一个直观的认识,才能够指导下一步的需求。
可视化图表应该支持多种选择,如折线图,柱状图,多折线,漏斗图等
最终我们将以清晰的图表形式进行展示效果,如图:
好了,到此为止,我们就可以将一套完整的,且自由度高的埋点产品设计出来了。如果有什么问题和建议,请给我留言(* ̄︶ ̄)
标签:点位,一体化,系统,上报,设计,埋点,数据,搭建 From: https://www.cnblogs.com/warm-stranger/p/16617835.html