学习数据挖掘技术可以从事的4类岗位,数据挖掘工程师

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

学习数据挖掘技术可以从事的4类岗位,数据挖掘工程师

文章插图
我上一份工作是数据分析师 , 现在的工作是数据挖掘工程师 , 因此我可以以我自己的实际经验来回答这个问题 。数据分析师和数据挖掘工程师 , 同属于数据领域的洞察者 , 但是两者的工作内容却有着不小的区别 。对于一个数据分析师来说 , 最重要的并不是编程技能 , 而是逻辑分析能力、业务理解能力、报告展示能力等 。数据分析师:数据分析师使用的主要工具可以是编程 , 但并非必要;因为现在已经存在大量的强大、易用的数据分析工具 , 比如Excel、Tableau、SPSS、SAS等 , 即使你没有编程能力 , 仍然能胜任绝大多数的数据分析工作;但是相对于数据挖掘工程师 , 你还额外需要一些能力 , 比如数据可视化的能力、写数据报告的能力、在领导甚至许多人面前做报告、讲演的能力等;同时 , 由于现在互联网公司都在讲大数据 , 数据的存储基本上在各种大数据平台和数据库中 , 因此你有必要掌握Hive、HDFS、MySQL等的使用 , SQL的熟练掌握是不可避免的 。
数据分析师一般有两种 , 一种是面向业务的 , 主要对各业务线、产品经理、运营、各部门领导的需求提供支持 , 帮助他们分析业务、了解业务 , 发掘出业务中的问题并提供解决方案;另一种是偏宏观的分析 , 一般没有需求方 , 主要是自发地进行探索 , 主动找到公司业务中存在的问题 , 弄清公司发展的趋势 , 对于公司发展的方向做出指引 。数据挖掘工程师虽然说不会编程也不至于完全无法做数据挖掘工作 , 但是好的编程技能却会成为你工作中的得力助手;很多时候 , 数据挖掘工程师会为数据分析师提供一些支持性的工作 , 比如为他们搭建数据库、清洗数据、建立报表平台等;有些时候数据分析师也会直接向数据挖掘工程师提出需求 , 有些数据的存储方式、格式超出了数据分析师的技能覆盖范围 , 这时就需要数据挖掘工程师帮他们做一些前期工作;另外呢 , 数据挖掘工程师往往还需要做一些机器学习方面的工作 , 因此就需要对各种机器学习算法的理论及代码实践有足够的认识 。
数据挖掘工程师之中 , 也分很多不同的类型 , 比如做特征工程的、数据仓库的、数据平台支持的、算法工程师、数据科学家等 , 他们的工作职责各有不同 , 职业技能也各有侧重 。对于大多数数据挖掘工程师来说 , 编程技能是必不可少的 , 但是针对不同挖掘工程师的性质 , 需要掌握不同的编程技能 。一般来说 , Python、Java、Scala是常用的大数据挖掘语言 , 有一些数据科学家喜欢用R;最常用的大数据平台是Hadoop平台和Spark平台 , 常用的结构化数据库是MySQL或其他关系型数据库 , 非结构化数据库中MongoDB较为常用 。
对于数据挖掘工程师来说 , 必要的Linux知识也必不可少 。因为数据挖掘工程师绝大多数的工作都是在远程的服务器上完成的 , 不能流畅地在命令行中操作各种Linux系统(常用的有CentOS、Ubuntu等) , 工作的效率会大大降低 。另外Shell在数据处理上也很强大 , sed awk简直是数据处理的神器 。以上并不是非常系统的对比 , 但是是我在工作中最实际的体验 , 我并非码农出身 , 这个转型过程中遇到了很多挑战 , 但是他们之间并没有天堑一样的区别 , 很多地方是共通的 , 如果你编程基础较差 , 那么可以从数据分析师入手 , 之后在考虑转型数据挖掘;如果编程基础较好 , 可以考虑数据挖掘 , 但是数据挖掘工程师一般情况下不会接触太多的业务 。

推荐阅读