写点什么

还在用全埋点的方式来监控数据?这款开源软件能够解决你的“麻烦”

  • 2019-11-04
  • 本文字数:2534 字

    阅读完需:约 8 分钟

还在用全埋点的方式来监控数据?这款开源软件能够解决你的“麻烦”

为企业提供更全面的数据能力,实现在业务层面的数据驱动

2019 年 10 月 24 日 -26 日, 以“精益·成长”为主题的“2019 易观 A10 数据智能生态大会”在上海成功举办。此次大会上,易观正式发布了易观方舟 5.0 版本。作为旨在打造精益化企业数据管理的智能数据平台,易观方舟 5.0 版本,在数据采集功能实现层面上,采用了前不久刚刚开源的可视化 SDK 埋点技术。该方式简化了数据管理难度,让数据所见即所得。可视化埋点很大程度上解决了数据采集领域的痛点,是当前业内发展的重要方向之一。


作为一个尚处于发展初期方法,可视化埋点技术对于诸多开发者来说,仍然是一个相对陌生的概念。那么我们应该如何理解可视化埋点,可视化埋点目前已经发展到怎样的地步了,对于数据行业来说,对于数据分析领域来说,可视化埋点技术能带来怎样的改变?

可视化埋点的前言:数据统计

要更加深入了解什么是可视化埋点,首先要了解什么是数据统计。作为产品迭代过程中非常重要的一部分,在互联网化程度不断加深、业务变更如此之快的环境下,准确全面的数据统计能够为公司的发展决策做出高效的方向指引。数据统计在现阶段,更是成为了场景之间、领域之间、企业之间进行合作与融合的数据基础。


数据统计,主要由数据采集和数据分析这两大部分组成,本文将着重介绍【数据采集】这一部分的技术实现与未来发展趋势。数据采集主要 SDK 嵌入的方式来进行数据的挖掘与采集,通过这层确定了数据的来源为后续数据分析提供了最具价值的数据基础。在现阶段,如何快速、准确、无遗漏地获取数据,是数据采集 SDK 所面临的主要挑战。

数据采集 SDK 的发展阶段

回顾过去数据采集方式的发展,主要经历了代码埋点 - 全埋点 - 可视化埋点这 3 个阶段:


  • 代码埋点,在运营人员提出统计需求后,首先产品人员设计前端采集埋点方案,开发人员植入埋点,重新打包发布新版本,最后运营人员拿到新版本提交的数据进行分析。这种埋点方式的优点是非常精准,完全贴合业务需求;但同样缺点也很明显,就是埋点的流程非常漫长,每次增加新的埋点都必须重新升级前端程序,对于统计需求比较紧迫的场景来说并不合适。

  • 全埋点,全埋点方式满足了“对某个细节进行数据统计”的需求,在程序打包时将埋点代码植入每个可操作元素,实现了所有元素的点击数据上报,产品、商务及运营人员都可以筛选出相关按钮的统计数据,同时也避免了重新发版的麻烦;但是全埋点方式的缺点也很明显,就是数据量非常大,从而造成大量服务器资源的浪费。

  • 可视化埋点,如何在不发版的情况下新增统计业务,且能精准地植入埋点,避免全埋点方式下的资源浪费?可视化埋点方式完美解决了这种矛盾。并且可视化埋点的优点不仅于此,其最大意义在于将埋点工作交给了真正关心业务效果的人。开发者只是功能的实现者,他并不关心这个功能实现后能够起到多大的作用。而运营人员则不同,如果能够依照所关心的业务方向进行自定义埋点,就可以灵活及时且更直观的看到运营效果,对于运营人员来说就能够随时感知各个渠道的状况。从而能够解放开发人员的工作量,让关心业务的人主宰整个埋点过程。

模块化设计思想:方舟可视化

现阶段,市面上广泛使用的埋点方式是“全埋点”,但是上文也有提到,全埋点具有数据体量大、服务资源浪费等不足,并且在业务强耦合的场景下,全埋点也很难满足相关的需求。虽然可视化埋点方式目前尚处于发展初期,但其能力已经可以满足甚至替代部分全埋点功能以及简单的业务场景。并且由于可视化埋点的实时修改,立即生效、所见即所改等特性的存在,未来等到可视化埋点技术进一步成熟后,相信将能够很好解决业务强耦合场景下的诸多需求。


方舟可视化目前已经实现了从前端展示、埋点圈选、事件捕获、数据上报的全流程可视化,满足界面交互相关的大部分数据统计需求。方舟可视化产品分为三大部分,分别为可视化 SDK、长链服务端以及前端圈选页面。三端各司其职,默契配合才能实现埋点设计和数据上报,下面这张图概述了在埋点阶段各端的配合流程:



浏览器圈选和长链服务端的主要功能是正确下发埋点指令,在接收到埋点指令后,可视化 SDK 将其转化为准确的数据并上报到服务端 。


为了满足上述的目标,可视化 SDK 需要进行模块化设计,通过将服务端发送的数据流分发到每一个模块下,最终准确完整实现埋点需求。方舟可视化 SDK 整体分为下图中这 4 个模块:



各个模块的功能如下:


1、长链接、数据解析与封装、指令分发这三个模块,实现了 WebSocket 协议的封装,业务数据处理,将每个指令分发到各自的指令处理模块;


2、指令处理模块,主要的指令处理模块包括设备信息(用户封装设备信息上报到前端)、页面信息(用于获取页面截图和结构信息)、埋点信息(用户事件绑定和埋点);


3、事件绑定模块,服务员埋点信息处理模块,收到埋点指令后该模块会查找当前页面,定位埋点目标元素,并设置事件监听;


4、获取埋点配置、埋点上报模块,负责获取当前埋点配置信息,事件触发后通过该模块将埋点数据上报到服务器。



模块间的交互模式


从上面的交互图中可以初步了解方舟可视化的模块化设计思想,通过针对数据流进行模块设计,以数据作为关注点,使每一个模块的输入与输出都与数据流息息相关。


除此之外,通过方舟技术团队的持续攻关,方舟可视化实现了与界面相关的强业务耦合场景,最大限度地覆盖了埋点需求,并最大限度地实现了“将埋点主动权从开发和产品人员转交给运营人员”这一可视化埋点的设计初衷。

方舟可视化的发展方向 - 让数据大众化、全民化

方舟可视化目前正在稳步发展中,已经能够支持界面间的交互相关埋点,但是非界面交互相关场景目前尚无能为力,这也是未来方舟可视化研究的重要方向;除此外支持更多交互场景、适配更多设备与系统、更全面地覆盖事件和属性、不断丰富 SDK 采集的数据、满足更多的业务场景等等众多方向,方舟可视化在这些方面会不断发力。


为了促进行业发展,方舟可视化于近日正式宣布开源,以社区的形式促进可视化 SDK 的持续进化,通过开放接口协同创新,方舟愿与各位社区开发一起,真正实现企业在一次次快速闭环实践的精益成长,并且通过可视化埋点这一技术,降低数据门槛,真正能够将数据价值普及开来,让数据实现真正的大众化与全民化。


目前方舟可视化已经开源,点击【易观方舟开源】即可访问易观方舟于 GitHub 上的开源界面。


2019-11-04 15:375956
用户头像
佘磊 策划编辑

发布了 50 篇内容, 共 21.5 次阅读, 收获喜欢 76 次。

关注

评论

发布
暂无评论
发现更多内容

软件测试/测试开发丨学习笔记之Python运算符

测试人

Python 程序员 软件测试 运算符

接口测试|HttpRunner环境变量与跨文件输出传递变量

霍格沃兹测试开发学社

HttpRunner

敏捷项目管理流程及工具

顿顿顿

敏捷项目 敏捷项目管理 敏捷工具 scrum敏捷工具

火山引擎DataTester:企业如何使用A/B实验优化商业化能力

字节跳动数据平台

A/B 测试

SaaS产品如何用好大模型?腾讯云给出了一个参考答案

ToB行业头条

2023京东全球科技探索者大会暨京东云峰会来了!

京东科技开发者

人工智能 AI 京东云 AIGC 企业号 6 月 PK 榜

接口测试|HttpRunner获取响应数据&extract提取值到变量

霍格沃兹测试开发学社

HttpRunner

性能提升30%!袋鼠云数栈基于 Apache Hudi 的性能优化实战解析

袋鼠云数栈

数据湖 Hudi 企业号 6 月 PK 榜

国内外常用的Scrum敏捷看板工具

顿顿顿

Scrum 敏捷开发

TDengine 3.0.5.0 正式发布,系统稳定性进一步提升

爱倒腾的程序员

涛思数据 时序数据库 ​TDengine

接口测试|HttpRunner接口关联与常用断言

霍格沃兹测试开发学社

HttpRunner

【有奖征文 】AI编程:华为云CodeArts Snap入门体验

华为云PaaS服务小智

人工智能 AI

建设数字工厂:华为云数字工厂平台接入第三方网关设备数据

华为云开发者联盟

云计算 后端 华为云 华为云开发者联盟 企业号 6 月 PK 榜

如何使用敏捷工具管理敏捷缺陷

顿顿顿

Scrum 敏捷开发 缺陷管理

Run in PaddleX 2.0,一站式搞定飞桨精选模型开发全流程!

飞桨PaddlePaddle

人工智能 百度 paddle 飞桨

单元测试|Unittest setup前置初始化和teardown后置操作

霍格沃兹测试开发学社

HttpRunner

将 NGINX 部署为 API 网关,第 1 部分

NGINX开源社区

nginx 网关 NGINX Kubernetes Gateway

AI教你实现敏捷游戏自由,再也不用担心陷入瓶颈啦!

禅道项目管理

项目管理 AI ChatGPT

华为云AI实战训练营即将截止,赶紧报名,不要错过!

华为云PaaS服务小智

云计算 华为 华为云 华为云开发者联盟

英特尔Flex系列GPU支持数字内容创作,提高创意生产力

E科讯

如何用好数智员工实现轻松采购?

用友BIP

数智底座 Pass平台 采购云

接口测试|HttpRunner header处理以及发送post请求

霍格沃兹测试开发学社

HttpRunner

上新!智能分析云助力【消费品行业】实现数智驱动

用友BIP

数据分析

PAGC2023 金帆奖 | 融云三度荣膺「年度优秀出海产品技术服务」奖

融云 RongCloud

网络 通信 融云 PAGC

ZEGO 即构音乐场景降噪技术解析

ZEGO即构

音视频

客户案例|某知名连锁咖啡品牌点餐小程序排障实录

观测云

可观测性 观测云 云原生可观测 可观测性用观测云

ABAQUS 在按键手感分析中的应用

思茂信息

软件设计 abaqus abaqus软件 abaqus有限元仿真 有限元仿真技术

中原银行 OLAP 架构实时化演进

Apache Flink

大数据 flink 实时计算

WorkPlus AI助理正式上线!为企业打造定制化的AI私有助理

WorkPlus

接口测试|Fiddler介绍以及安装

霍格沃兹测试开发学社

fiddler

透明LED橱窗屏的作用

Dylan

解决方案 LED显示屏 室外显示屏 屏幕

还在用全埋点的方式来监控数据?这款开源软件能够解决你的“麻烦”_开源_易观数据采集团队_InfoQ精选文章