你了解你的数据吗?
前几天突然来了点灵感,想梳理一下自己对数据的理解,因此便有了这篇博客或者说这系列博客来聊聊数据。
数据从业者有很多,比如说数据开发工程师、数据仓库工程师、数据分析师、数据挖掘工程师、数据产品经理等等,不同岗位的童鞋对数据的理解有很大的不一样,而且侧重点也不同。那么,是否有一些数据相关的基础知识是所有数据从业者都值得了解的?不同的岗位对数据的理解又有多大的不同?数据开发工程师是否有必要去了解数据分析师是如何看待数据的?
本系列博客会尝试去学习、挖掘和总结这些内容,在数据的海洋中一起装x一起飞。
开篇先上几个问题:
如果你对前面说的问题有不太了解的,那么我们就可以在以后的内容中一起愉快地交流和探讨。如果前面说的问题你的回答都是 “Yes”,那么我还是会尝试用新的问题来留住你。比如说:
假设你对上面的问题有稍许困惑或者感兴趣,我们正式开始对数据的认知之旅。
现在,我们粗略地将数据从业者分为数据集群运维、数据开发工程师、数据仓库工程师、数据分析师、数据挖掘工程师和数据产品经理,这一小节先起一个引子来大致说明不同岗位对数据的了解是不同的,后文会详细地说明细节内容。
首先要说明的是,在工作中数据相关的职位都是有很多重合的,很难一刀切区分不同岗位的职责,比如说数据开发工程师本身就是一个很大的概念,他可以做数据接入、数据清洗、数据仓库开发、数据挖掘算法开发等等,再比如说数据分析师,很多数据分析师既要做数据分析,又要做一些提数的需求,有时候还要自己做各种处理。
公司的数据团队越大,相应的岗位职责就会越细分,反之亦然。在这里我们姑且用数据开发工程师和数据仓库工程师做对比来说明不同职责的同学对数据理解的侧重点有什么不同。我们假设数据开发工程师侧重于数据的接入、存储和基本的数据处理,数据仓库工程师侧重于数据模型的设计和开发(比如维度建模)。
上面的例子可能都会在一个数据质量监控系统中一起解决,但是我们在这里不讨论系统的设计,而是先有整体的意识和思路。
那么,后续博客的内容会是什么样子的呢?目前来看,我认为会有两个角度:
本篇主要是抛出一些问题,后续会逐步展开地细说数据从业者对数据理解。其实最开始我想用“数据敏感度”、“数据感知力”这类标题,但是感觉这种概念比较难定义,因此用了比较口语化的标题。
笔者认为,在数据从业者的职业生涯中,不应只有编程、算法和系统,还应有一套数据相关的方法论,这套方法论会来解决某一领域的问题,即使你们的系统从Hadoop换到了Spark,数据模型从基本的策略匹配换到了深度学习,这些方法论也依旧会伴你整个职业生涯。因此这系列博客会尝试去学习、挖掘和总结一套这样的方法论,与君共勉。