文档章节

大数据浪潮下_前端工程师眼中的完整数据链图

大大梁
 大大梁
发布于 2017/06/15 14:30
字数 2128
阅读 14
收藏 0
点赞 0
评论 0

阅读全文

 

0?wx_fmt=jpeg

马云曾经说过『人类正从IT时代走向DT时代』。正如他说言,今天几乎所有的互联网公司背后都有一支规模庞大的数据团队和一整套数据解决方案作决策,这个时代已经不是只有硅谷巨头才玩数据的时代,是人人都在依赖着数据生存,可以说如今社会数据价值已经被推到前所未有的高度。

 

我作为一名前端工程师在阿里巴巴数据团队工作多年,深入了解数据生产加工链路与产品化。我们这群前端是与界面最近的工程师们,似乎与数据离得很远,对于我们来说与数据有些怎样连接呢。

 

 

完整数据链路

 

 

首先,我用直观的一张图绘制出数据采集到产出的流程,中间省略技术细节。

0?wx_fmt=png

业界常提到的 Hadoop,Spark,Druid 都在用户侧的下方,也就是数据研发与数据挖掘职能的工作。相对于前端职能而言,一定是与输出终端相关,包括本职工作数据类产品的研发,如阿里指数或百度指数这样的数据展示型产品,还有较为复杂的 BI 工具等,细分起来,最特别的工作应该是数据采集和数据可视化的工作。

 

但到今天而言,数据研发工程师已经很难说只精通其中一种技术。任何一环深入下去都涉及到整条链路的打通,我就从数据采集,数据可视化,数据产品研发到人工智能几个板块来写写我的体会与经验。

 

 

数据采集

 

过去还是流量为王的年代,流量就意味着钱,互联网都用着简单粗爆的方式导流。在过去做过站长的对数据采集已然不陌生,包括著名的第三方平台 CNZZ(现友盟+) 和 google analytics 两个平台几乎都使用过。

 

 

基本原理
 

Web 端的数据采集的链路从客户端或后端开始一直到存储结束。因此,数据采集这个动作涉及到了前端,客户端,数据研发,产品经理等职位的参与。在这个过程中,前端工程师的工作集中在不同客户端上(PC、iOS、Android)的信息收集及埋点上。

 

再说到采集应用信息这件事,系统可以采集到的信息越丰富,那么数据可分析的内容就越多。数据采集在 Web 端可以分为几个步骤,包括前端 JS 加载,触发事件时收集各种浏览器端的信息,根据用户行为上报日志服务器。

 

Web 端的数据采集可以收集哪些信息呢?这是一件同时带有『用户体验』和『业务反馈』的工作。为什么这么说呢。

 

UX 和前端工程师都非常关注用户体验反馈,而用户体验反应在界面上可以表现为习惯性的浏览轨迹,点击热区等。一般可以采样一部分用户的行为来分析,比如发起一次纯交互改版后,我们需要做一次 AB Test,对于等比例用户分布的点击热力图,同时收集一部分用户的调查反馈,来验证改版后的效果。如果是交互与功能同时改版的话,相对较难判断影响面。

 

业务反馈就比较自然了。对于网站应用来说,一定会带有用户登录的信息,或关联业务的一次活动,那么自然会把业务信息都带到一起。此外,业务形态不同,会设计业务独有的打点采集方式。如区块明显的应用, 我们需要精确的确定站点,页面,区块和链接,可以达到流量的精准定位,就是典型的为业务形态定制采集方案。对于区块化不明显的后台类应用就不完全适用。精细化采集更需要运营或产品经理对于产品功能有细节上的思考。

 

此外,业务反馈还可以从前端本身看,前端需要的稳定性指标也是从界面上采集到的,比如加载性能、JS 报错等。大规模应用背后开发一般都有自己的监控平台,而前端的监控就从用户界面开始。

 

0?wx_fmt=png

 

再说说埋点,这是需要大量前端开发的工作。其实近年来为了减少开发的投入,业界有好一些方案产生,其中比较流行的是可视化埋点和无埋点。

 

可视化埋点对于 PD 或运营来说就十分友好了,仅通过界面就可以配置打点的位置。但有一个极大的问题,我们的界面经常会改变,导致了元素的变化,埋点就需要经常作更新。

 

另外就是无埋点,这是一些新兴数据公司如 GrowingIO 推崇的概念。其实无埋点的理念十分简单就是全采集,不论是有效还是无效,所有的点击行为都会被采集下来。这种方案最大的优点就是零工作量,采集的数据非常全,缺点就有大量的无效信息需要到计算或存储过滤。这是计算资源、硬件存储与人力成本之间的考量。

 

 

新采集

 

前端只是客户端采集的源头。比如音频,图像,视频等新媒体都需要一种可以量化成数据的方法,沉淀成指标;在 IoT 领域,更是涉及到硬件设备上采集技术。这些采集可以说与前端都没有联系,但都是采集的一部分。

 

数据多样的同时,我们需要什么样的数据才是有价值的问题。同样的信息有这样收集,那样收集的,但最好采集的方式是要考虑的。今天非常多的数据是被动的收集的,用户没有发现价值还被强迫采集。数据其实是业务的一部分,业务应该会自生产我们需要的数据,通过智能化手段改善业务,这是主动的方式。

 

 

数据可视化

 

 

经过清洗,计算与存储后达到数据展现的阶段。无论是面向哪个群体的数据产品都绕不开对数据的可视化,可以说产品端除了考虑分析链路或操作链路外,最重要的工作就是如何更好的反应它们,可视化在其中至关重要。

 

数据可视化包括科学可视化、信息可视化和可视分析学。数据可视化绝不是单纯的视觉,也不是单纯的图表,它是帮助人类从原始信息中做到对信息有一定程度的认知,任何可视化手段都为了这个过程,而非结果。如果计算机已经可以得出结论,那么可视化是没有意义的。

 

数据可视化对于我们而言其实是一个跨界的领域,交互视觉知识远远不够,还还涉及硬件、客户端编程、数据分析、机器学习等领域。

 

什么是优秀的可视化图表

 

数据可视化常指将数据用统计图表方式呈现,从大的分类上看可以分为统计数据可视化、关系数据可视化、地理空间数据可视化,当然还有时间序列数据可视化、文本数据可视化等。

 

在这里,我就从数据可视化中的图表这个宏观概念来讲讲,如何来构建可视化图表,什么是优秀的可视化图表。

 

0?wx_fmt=png

 

我们看过形形色色的图表,可视化图表是从数据 -> 清洗 -> 交互 -> 视觉 -> 开发的整个过程下创造的。那么优秀的可视化作品具备哪些特征呢?正如上图所说,优秀的可视化作品 = 信息 + 故事 + 目标 + 视觉形式。

 

阅读全文

 

本文转载自:

共有 人打赏支持
大大梁
粉丝 0
博文 225
码字总数 0
作品 0
浪潮可信云服务器:五大能力护航公有云

  【IT168 资讯】近日,知名内容分发网络(CDN)和云服务提供商 Akamai Technologies 发布了《 2017 Q2 互联网安全现状报告》,报告显示与第一季度相比,第二季度的 DDoS 攻击数目增加了约 ...

it168网站
2017/11/22
0
0
前端工程的入门须知

本文是写给那些想要入门web前端工程的初学者,高手请路过,也欢迎高手们拍砖。 先说下web前端工程师的价值,目前web产品交互越来越复杂,用户使用体验和网站前端性能优化这些都得靠web前端工...

WEB攻程狮
2017/12/01
0
0
web前端工程师入门须知,你全部了解吗?

本文是写给那些想要入门web前端工程的初学者,高手请路过,也欢迎高手们拍砖。 先说下web前端工程师的价值,目前web产品交互越来越复杂,用户使用体验和网站前端性能优化这些都得靠web前端工...

DarkSpy13
2017/11/28
0
0
想成为大数据人才?你得拥有这些能力!

01 起 大数据行业持续升温,越来越多的人才涌进这个行业。 想知道这个行业需要什么样的人才么? 大数据的问题就交给大数据去完成吧~~ 我们按特定的职位名称,爬取了拉勾网上成都地区所有大数...

邓莎
06/28
0
0
11月 第4周 GitChat 话题排行榜

编辑 | 嘉仔 因现在每天开展的 Chat 活动较多,GitChat 根据每场 Chat 参与人数、作者评分、课程内容等综合信息,为用户推荐每周优秀内容,方便大家阅读及回顾。榜单内包含了每场 Chat 的参与...

gitchat
2017/11/26
0
0
物联网浪潮之下,前端工程师如何迎刃而上?

经历了过去几年的发展,Node.js、Angular.js、Vue.js 等前端主流技术框架填补了原有技术的空白与不足,日渐趋于成熟。然而信息时代的来临,任何的技术不会趋于稳定而止于脚下,现如今物联网、...

tangxiaoyin
2017/05/31
0
0
中国采用OpenPOWER技术

今天来自政府部门的有关领导以及数百名科技商业领军人物齐聚北京,支持OpenPOWER的发展。OpenPOWER作为开放式的系统设计模式,在全球科技厂商和最终用户中已经取得了长足发展,势头强劲。 世...

玄学酱
05/22
0
0
开源云产业成熟度持续提升,迎接开放基础设施浪潮

进入2018年,中国采用私有云的企业中,80%以上已经应用开源技术。根据中国信息通信研究院于2018年3月发布的《中国云计算开源发展调查报告(2018)》,85.3%被调研企业已经应用了开源技术;企...

云科技时代
06/20
0
0
大数据行业就业指南:三大方向 十大职位

当下,大数据的趋势已逐步从概念走向落地,而在IT人跟随大数据浪潮的转型中,各大企业对大数据高端人才的需求也越来越紧迫。这一趋势,也给想要从事大数据方面工作的人员提供了难得的职业机遇...

柯西带你学编程
05/27
0
0
浪潮提出智慧计算 立足CBD构建智慧世界

2017年4月26日,在美丽的浙江乌镇互联网国际会展中心,浪潮集团执行总裁王恩东面向前来参加浪潮云数据中心全国合作伙伴大会(IPF2017,Inspur Partner Forum)的2000余名嘉宾和合作伙伴,提出...

玄学酱
04/12
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

about git flow

  昨天元芳做了git分支管理规范的分享,为了拓展大家关于git分支的认知,这里我特意再分享这两个关于git flow的链接,大家可以看一下。 Git 工作流程 Git分支管理策略   git flow本质上是...

qwfys
今天
2
0
Linux系统日志文件

/var/log/messages linux系统总日志 /etc/logrotate.conf 日志切割配置文件 参考https://my.oschina.net/u/2000675/blog/908189 dmesg命令 dmesg’命令显示linux内核的环形缓冲区信息,我们可...

chencheng-linux
今天
1
0
MacOS下给树莓派安装Raspbian系统

下载镜像 前往 树莓派官网 下载镜像。 点击 最新版Raspbian 下载最新版镜像。 下载后请,通过 访达 双击解压,或通过 unzip 命令解压。 检查下载的文件 ls -lh -rw-r--r-- 1 dingdayu s...

dingdayu
今天
1
0
spring boot使用通用mapper(tk.mapper) ,id自增和回显等问题

最近项目使用到tk.mapper设置id自增,数据库是mysql。在使用通用mapper主键生成过程中有一些问题,在总结一下。 1、UUID生成方式-字符串主键 在主键上增加注解 @Id @GeneratedValue...

北岩
今天
2
0
告警系统邮件引擎、运行告警系统

告警系统邮件引擎 cd mail vim mail.py #!/usr/bin/env python#-*- coding: UTF-8 -*-import os,sysreload(sys)sys.setdefaultencoding('utf8')import getoptimport smtplibfr......

Zhouliang6
今天
1
0
Java工具类—随机数

Java中常用的生成随机数有Math.random()方法及java.util.Random类.但他们生成的随机数都是伪随机的. Math.radom()方法 在jdk1.8的Math类中可以看到,Math.random()方法实际上就是调用Random类...

PrivateO2
今天
3
0
关于java内存模型、并发编程的好文

Java并发编程:volatile关键字解析    volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在...

DannyCoder
昨天
1
0
dubbo @Reference retries 重试次数 一个坑

在代码一中设置 成retries=0,也就是调用超时不用重试,结果DEBUG的时候总是重试,不是0吗,0就不用重试啊。为什么还是调用了多次呢? 结果在网上看到 这篇文章才明白 https://www.cnblogs....

奋斗的小牛
昨天
2
0
数据结构与算法3

要抓紧喽~~~~~~~放羊的孩纸回来喽 LowArray类和LowArrayApp类 程序将一个普通的Java数组封装在LowArray类中。类中的数组隐藏了起来,它是私有的,所以只有类自己的方法才能访问他。 LowArray...

沉迷于编程的小菜菜
昨天
1
0
spring boot应用测试框架介绍

一、spring boot应用测试存在的问题 官方提供的测试框架spring-boot-test-starter,虽然提供了很多功能(junit、spring test、assertj、hamcrest、mockito、jsonassert、jsonpath),但是在数...

yangjianzhou
昨天
8
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部