数据分析师和数据挖掘工程师有什么区别?

计算机思维和数学思维都包括抽象和逻辑

数据分析师和数据挖掘工程师虽然都是数据领域的洞察者,但他们的工作内容却大相径庭。对于一个数据分析师来说,最重要的不是编程能力,而是逻辑分析能力、业务理解能力、报表呈现能力等。


数据分析师

数据分析师使用的主要工具可以是编程,但不是必须的。

因为有大量强大易用的数据分析工具,如Excel、Tableau、SPSS、SAS等,即使你没有编程能力,仍然可以胜任大部分数据分析工作。

但相比数据挖掘工程师,你还需要一些额外的能力,比如数据可视化、编写数据报告、在领导甚至很多人面前做报告、演讲等能力。

同时,因为现在互联网公司都在讲大数据,而数据基本都存储在各种大数据平台和数据库中,所以你需要掌握Hive、HDFS、MySQL等的使用方法,并且熟练掌握SQL是不可避免的。


数据分析师一般有两种,一种是业务导向的,主要为各业务线、产品经理、运营、各部门领导的需求提供支持,帮助他们分析理解业务,发现业务问题和提供他们。解决方案; 二是宏观分析。一般没有需求端。主要是自发探索,积极发现公司业务中存在的问题,摸清公司发展趋势,指导公司发展方向。

数据挖掘工程师

虽然不能做数据挖掘工作就不能编程,但好的编程技能会成为你工作中的得力助手。

很多时候,数据挖掘工程师都会为数据分析师做一些支持性的工作,比如为他们构建数据库、清理数据、搭建报表平台等。

有时数据分析师也会直接向数据挖掘工程师提出要求。某些数据存储方法和格式超出了数据分析师的技能范围。这时候需要数据挖掘工程师为他们做一些前期工作。


另外,数据挖掘工程师经常需要做一些机器学习的工作,所以需要对各种机器学习算法的理论和代码实践有足够的了解。

在数据挖掘工程师中,也有很多不同的类型,如特征工程、数据仓库、数据平台支持、算法工程师、数据科学家等,他们的工作职责不同,专业技能也不同。

对于大多数的数据挖掘工程师来讲,编程技能是必须掌握的,但是根据不同的挖掘工程师的性质,需要掌握不同的编程技能。一般来讲,Python、Java、Scala是常用的大数据挖掘语言,部分数据科学家喜欢使用R;最常用的大数据平台是Hadoop平台和Spark平台,常用的结构化数据库有MySQL或其他关系型数据库,MongoDB更常用于非结构化数据库。

对于数据挖掘工程师来说,必要的 Linux 知识也是必不可少的。由于数据挖掘工程师的大部分工作都是在远程服务器上完成的,无法在命令中去操作各种Linux系统(常用的CentOS、Ubuntu等),工作效率会大打折扣。另外,Shell在数据处理方面也很强大,sed+awk简直就是数据处理的神器。

以上不是很系统的比较,但是是我工作中最实际的体会。我不是码农。在这个转型的过程中,我遇到了很多挑战,但是它们之间并没有什么区别,很多东西都是共通的。

如果你编程基础不好,可以从数据分析师入手,然后考虑转型数据挖掘;如果你的编程基础好,可以考虑数据挖掘,但是数据挖掘工程师一般不会接触太多业务。两个领域的职业道路截然不同。数据分析师之后可以做业务、产品转移和管理;而数据挖掘工程师一般可以在技术领域进行纵向深入的探索,后面可能做技术管理,也有搞一辈子的技术的。

你可能感兴趣的:(数据分析师和数据挖掘工程师有什么区别?)