写点什么

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

  • 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:376546
用户头像
佘磊 策划编辑

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

关注

评论

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

技术沙龙 | 探索软件测试前沿技术及最佳实践,体验ChatGPT在测试领域中的应用

测试人

软件测试 沙龙 ChatGPT

React等前端框架如何与小程序结合

Onegun

前端 前端框架 React Vue 3

瓴羊Quick BI和Tableau哪个更适合复杂表格呢?

夏日星河

2022 IoTDB Summit:东方国信王超《Apache IoTDB 在东方国信的商业化及应用》

Apache IoTDB

大数据 开源 时序数据库 IoTDB

ByteHouse实时导入技术演进

字节跳动数据平台

大数据 数据仓库 Clickhouse 数据仓库服务 企业号 3 月 PK 榜

秒懂算法 | 搜索基础

TiAmo

DFS BFS 搜索算法

Vineyard 论文被 SIGMOD'2023 接收,助力计算引擎之间高效数据交换

阿里巴巴中间件

阿里云 计算引擎

中国特供版也残了!AMD 3GHz最强核显梦碎

科技之家

2022 IoTDB Summit:用友郭关飞《用友在 Apache IoTDB 应用与生态建设方面的探索与实践》

Apache IoTDB

大数据 开源 时序数据库 IoTDB

NFTScan:怎么使用 NFT API 开发一个 NFT 数据分析平台?

NFT Research

数据分析 API NFT

性能平台数据提速之路

百度Geek说

大数据 百度 提效 企业号 3 月 PK 榜 性能平台

Caffeine高性能本地缓存框架初探

FunTester

技术沙龙 | 探索软件测试前沿技术及最佳实践,体验ChatGPT在测试领域中的应用

测吧(北京)科技有限公司

测试

等保联盟是什么机构?有什么用?

行云管家

等保 等级保护 等保联盟

用户分享 | 达梦第三方客户端DockQuery使用体会

BinTools图尔兹

数据库 用户体验 国产数据库工具

OceanBase 生态产品:时序数据库CeresDB 正式发布 1.0 版本

OceanBase 数据库

数据库 oceanbase

京东云RASP云原生安全免疫创新实践

京东科技开发者

Web 安全 漏洞 业务安全 企业号 3 月 PK 榜

面试官:请说一下如何优化结构体的性能?

王中阳Go

Go golang 高效工作 学习方法 高效学习

动转静两大升级!一键转静成功率领先,重点模型训练提速18%+

飞桨PaddlePaddle

人工智能 百度 飞桨 PaddlePaddle 框架解析

搬得进来,搬得出去!快来过一把数据迁移的“瘾”

OceanBase 数据库

数据库 oceanbase

探索以小程序提升运维效率

Onegun

运维 小程序容器

瓴羊Quick BI和Power BI哪个比较好呢?

巷子

2022 IoTDB Summit:天谋科技刘海《Timecho:孵化于Apache IoTDB的开源商业化公司及其核心产品》

Apache IoTDB

大数据 分布式 开源数据库 IoTDB

瓴羊Quick BI:“3端4表4擎、3+NPlus”得到众多行业内部人士的认可!

对不起该用户已成仙‖

MMMBSC互助基金系统开发智能合约部署

薇電13242772558

智能合约 dapp

TypeScript 与 JavaScript:你应该知道的区别

京东科技开发者

JavaScript typescript 前端 后端 企业号 3 月 PK 榜

DevOps 与平台工程:企业该如何选择?

SEAL安全

DevOps IdP 平台工程 企业号 3 月 PK 榜

SSH和VNC的四个区别简单讲解

行云管家

SSH 行云管家

淘宝 APP 网络架构演进与弱网破障实践

阿里技术

架构 网络

数据测试实践:从一个bug开始的大数据引擎兼容性探索

京东科技开发者

大数据 bug修复 引擎 测试数据构造 企业号 3 月 PK 榜

精选案例 | 博睿数据30w+监测节点护航新华网、人民网两会重保工作

博睿数据

可观测性 智能运维 博睿数据 精选案例 主动式拨测

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