
1.大数据架构的工具与组件
数据工程师更关注分析基础架构,因此所需的大部分技能都是以架构为中心的。
2.深入了解SQL和其它数据库解决方案
数据工程师需要对数据库管理系统有比较熟悉的了解,而且深入了解SQL非常重要。同样其它数据库解决方案,例如Cassandra或BigTable也须熟悉,因为不是每个数据库都是由可识别的标准来构建。
3.数据仓库和ETL工具
数据仓库和ETL经验对于数据工程师至关重要。像Redshift或Panoply这样的数据仓库解决方案,以及ETL工具,比如StitchData或Segment都非常有用。另外,数据存储和数据检索经验同样重要,因为处理的数据量是个天文数字。
4.基于Hadoop的分析(Hbase,Hive,MapReduce等)
对基于Apache Hadoop的分析有深刻理解是这个领域的一个非常必要的需求,一般情况下Hbase,Hive和MapReduce的知识存储是必需的。
5.编码
说到解决方案,编码与开发能力是一个重要的优点(这也是许多职位的要求),你要熟悉Python,C/C++,Java,Perl,Golang或其它语言,这会非常有价值。
6.机器学习
虽然数据工程师主要关注的是数据科学,但对数据处理技术的理解会加分,比如一些统计分析知识和基础数据建模。
一、数仓开发
1,Java是必问的,不过问的不深,把Javase部分吃透,足以应付Java部分的面试。
2,Hadoop生态,Yarn、Zookeeper、HDFS这些底层原理要懂,面试经常被问。
3,Mapreduce的shuffle过程这个也是面试被常问的。
4,Hbase和HIve,搞大数据这些不懂真的说不过去。
5,Mysql、Oracle和Postgres数据库操作要回,Sql要会写。
6,linux操作系统,这个简单得命令必须要懂,会写shell脚本更好了。
7,Kettle或Sqoop这种数据处理工具至少要会一个。
8,数据仓库建模、数据模型的问题。
二、技术方面
1,SparkSql和SparkStreaming,底层原理、内核、提交任务的过程等等,尽量深入内幕,这个经常会跟MapReduce作比较的。当然也要了解Storm和Flink,Flink这个建议要学会,以后用处会越来越广。
2,Redis、Kafka、ElasticSearch这些都得懂原理,深入了解,会使用,会操作,会调优。
3,impala和kylin这些尽量也要了解会用。
4,Python这个要是有能力,有精力,建议也要往深处学习,我目前正在自学中。
5,集群的问题,包括一些简单的运维知识。
6,大数据数据倾斜的问题,包括Spark JVM内存调优问题等等。
关于大数据开发工程师需掌握哪些技能,青藤小编就和您分享到这里了。如果你对大数据工程有浓厚的兴趣,希望这篇文章能够对你有所帮助。如果您还想了解更多数据分析师、大数据工程师的技巧及素材等内容,可以点击本站的其他文章进行学习。