数据工程师需要掌握的知识

根据麦肯锡报告,仅仅在美国市场,2018年大数据人才和高级分析专家的人才缺口将高达19万。此外美国企业还需要150万位能够提出正确问题、运用大数据分析结果的大数据相关管理人才。 对于高速发展的大数据行业来说,行业人才的稀缺目前已成为抑致行业发展的重要因素。人才的稀缺性外加上诱人的高额薪资,使得互联网行业很多技术人员纷纷想要转型进入大数据领域,成为数据科学家、大数据工程师等等。

在这里相信有许多想要学习大数据的同学,大家可以+下大数据学习裙:716加上【五8一】最后014,即可免费领取系统的大数据学习教程

今天,我们将为大家介绍大数据工程师所需掌握的技能,让小伙伴们有个参照。 先来看一个常见的大数据基础平台架构图。

从这张大数据架构图上来看,我们发现,一个普通的大数据基础平台架构中,分为数据集成层、文件存储层、数据存储层、编程模型层和数据分析层,然后再到上层应用。大数据基础平台架构中,往往还会有数据挖掘层和数据可视化层等。 再看这场架构图。

从以上两张架构图我们可以看到,整个大数据基础平台架构中,其实是涉及非常多的技术、语言和技能的。下面为大家一一细表。

一、大数据通用处理平台

1、Spark Spark是UC Berkeley AMP lab (加州大学伯克利分校的AMP实验室)所开源的类Hadoop MapReduce的通用并行框架,Spark,拥有Hadoop MapReduce所具有的优点;但不同于MapReduce的是Job中间输出结果可以保存在内存中,从而不再需要读写HDFS,因此Spark能更好地适用于数据挖掘与机器学习等需要迭代的MapReduce的算法。

其中,RDD是Spark的核心,RDD,全称为Resilient Distributed Datasets,是一个容错的、并行的数据结构,可以让用户显式地将数据存储到磁盘和内存中,并能控制数据的分区。同时,RDD还提供了一组丰富的操作来操作这些数据。在这些操作中,诸如map、flatMap、filter等转换操作实现了monad模式,很好地契合了Scala的集合操作。除此之外,RDD还提供了诸如join、groupBy、reduceByKey等更为方便的操作(注意,reduceByKey是action,而非transformation),以支持常见的数据运算。 Spark SQL是Spark的一个组件,用于结构化数据的计算。Spark SQL提供了一个称为DataFrames的编程抽象,DataFrames可以充当分布式SQL查询引擎。 Spark Streaming是建立在Spark上的实时计算框架,通过它提供的丰富的API、基于内存的高速执行引擎,用户可以结合流式、批处理和交互试查询应用。 Spark Streaming是一种构建在Spark上的实时计算框架,它扩展了Spark处理大规模流式数据的能力。 Spark Streaming的优势在于:

► 能运行在100+的结点上,并达到秒级延迟。
► 使用基于内存的Spark作为执行引擎,具有高效和容错的特性。
► 能集成Spark的批处理和交互查询。
► 为实现复杂的算法提供和批处理类似的简单接口。

MLlib 是Spark对常用的机器学习算法的实现库,同时包括相关的测试和数据生成器。MLlib 目前支持四种常见的机器学习问题:二元分类,回归,聚类以及协同过滤,同时也包括一个底层的梯度下降优化基础算法。 下面是Spark学习脑图。

2、Flink

Flink 是一个开源的针对批量数据和流数据的处理引擎,已经发展为 ASF 的顶级项目之一。Flink 的核心是一个提供了数据分发以及并行化计算的流数据处理引擎,已经支持了 API 化的 SQL 查询,包括图操作和机器学习的相关算法。Flink 是一个针对流数据和批数据的分布式处理引擎。它主要是由 Java 代码实现。目前主要还是依靠开源社区的贡献而发展。对 Flink 而言,其所要处理的主要场景就是流数据,批数据只是流数据的一个极限特例而已。再换句话说,Flink 会把所有任务当成流来处理,这也是其最大的特点。Flink 可以支持本地的快速迭代,以及一些环形的迭代任务。并且 Flink 可以定制化内存管理。

3、Hadoop

Hadoop是一个由Apache基金会所开发的分布式系统基础架构。 用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。 Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。HDFS有高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上;而且它提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。HDFS放宽了(relax)POSIX的要求,可以以流的形式访问(streaming access)文件系统中的数据。 其中,

► HDFS (分布式文件系统)
► Mapreduce(计算框架)
► Yarn(资源管理平台)
► Pig(piglatin 语句到 mapreduce 的映射)
► Hive(数据仓库,提供 SQL)

秦皇岛配资配资

猜你喜欢

转载自blog.csdn.net/a15732111571/article/details/88537518