学大数据都可以就业哪些岗位?因为大数据涉及到的知识相对比较广泛,全部学精难度太大,所以现在企业在招聘的时候会细分大数据岗位,专注于某个方向招聘,所以先解下大数据的都有哪些就业方向,然后你在后续的学习过程中对哪部分比较感兴趣就重点关注那部分。
数仓工程师 (全称:数据仓库工程师)
数仓工程师日常工作一般是不写代码的,主要以写 SQL 为主!
数仓工程师是大数据领域公司招聘较多的岗位,薪资也较高,需要重点关注!
数据仓库分为离线数仓和实时数仓,但是企业在招聘时大多要求两者都会,进入公司之后可能会专注于离线或实时其中之一。
就目前来说,大多数的企业还是以离线数仓为主,不过未来趋势肯定是实时数仓为主,所以学习时,为了现在能找到工作,需要学习离线数仓,为了以后的发展,需要学习实时数仓。所以,离线和实时都是我们重点掌握的!
需要掌握的技能:
不管离线还是实时,重中之重就是:SQL
SQL 语法及调优一定要掌握,这里说的 SQL 包括 mysql 中的 sql,hive中的 hive sql,spark 中的 spark sql,flink 中 的 flink sql。
在企业招聘的笔记及面试中,一般问的关于 sql 的问题主要是以 hive sql 为主,所以请重点关注!
除 sql 外,还需要重点掌握以下技能,分为离线和实时
离线数仓需要重点掌握的技能:
Hadoop(HDFS,MapReduce,YARN)
Hive(重点,包括hive底层原理,hive SQL及调优)
Spark(Spark 会用及了解底层原理)
Oozie(调度工具,会用即可)
离线数仓建设(搭建数仓,数仓建模规范)
维度建模(建模方式常用的有范式建模和维度建模,重点关注维度建模)
实时数仓需要重点掌握的技能:
Hadoop(这是大数据基础,不管离线和实时都必须掌握)
Kafka(重点,大数据领域中算是唯一的消息队列)
Flink(重中之重,这个不用说了,实时计算框架中绝对王者)
HBase(会使用,了解底层原理)
Druid(会用,了解底层原理)
实时数仓架构(两种数仓架构:Lambda架构和Kappa架构)
大数据开发工程师
数据开发工程师一般是以写代码为主,以 Java 和 Scala 为主。
大数据开发分两类,一类是编写Hadoop、Spark、Flink 的应用程序,第二类是对大数据处理系统本身进行开发,如对开源框架的扩展开发,数据中台的开发等!
需要重点掌握的技能:
语言:Java 和 Scala(语言以这两种为主,需要重点掌握)
Linux(需要对Linux有一定的理解)
Hadoop(需理解底层,能看懂源码)
Hive(会使用,能进行二次开发)
Spark(能进行开发。对源码有了解)
Kafka(会使用,理解底层原理)
Flink(能进行开发。对源码有了解)
HBase(理解底层原理)
通过以上技能,我们也能看出,数据开发和数仓开发的技能重复率较高,所以很多公司招聘时 大数据开发 和 数仓建设 分的没有这么细,数据开发包含了数仓的工作!
ETL工程师
ETL是三个单词的首字母,中文意思是抽取、转换、加载
从开始的图中也能看出,ETL工程师是对接业务和数据的交接点,所以需要处理上下游的关系
好程序员大数据培训分享:学大数据都做哪些岗位?对于上游,需要经常跟业务系统的人打交道,所以要对业务系统比较熟悉。比如它们存在各种接口,不管是API级别还是数据库接口,这都需要ETL工程师非常了解。 其次是其下游,这意味着你要跟许多数据开发工程师师、数据科学家打交道。比如将准备好的数据(数据的清洗、整理、融合),交给下游的数据开发和数据科学家。
需要重点掌握的技能
语言:Java/Python(会基础)
Shell脚本(需要对shell较为熟悉)
Linux(会用基本命令)
Kettle(需要掌握)
Sqoop(会用)
Flume(会用)
MySQL(熟悉)
Hive(熟悉)
HDFS(熟悉)
Oozie(任务调度框架会用其中一个即可,其他如 azkaban,airflow)
数据分析工程师
在数据工程师准备好数据维护好数仓后,数据分析师就上场了。
分析师们会根据数据和业务情况,分析得出结论、制定业务策略或者建立模型,创造新的业务价值并支持业务高效运转。
好程序员大数据培训分享:学大数据都做哪些岗位?同时数据分析师在后期还有数据爬虫、数据挖掘和算法工程师三个分支。
需要重点掌握的技能:
数学知识(数学知识是数据分析师的基础知识,需要掌握统计学、线性代数等课程)
编程语言(需要掌握Python、R语言)
分析工具(Excel是必须的,还需要掌握 Tableau 等可视化工具)
数据敏感性(对数据要有一定的敏感性,看见数据就能想到它的用处,能带来哪些价值)