大数据都需要掌握什么?

1、编程语言:Java、python

2、Linux

  掌握Linux系统的基本操作。

3、SQL

  大数据的特点就是数据量非常大,因此大数据的核心之一就是数据仓储相关工作。因此大数据工作对于数据库要求是非常的高。

4、分布式计算

  面对海量的数据,往往一个服务器无法存储所有的数据。这样数据就散落在各台服务器中,需要取用时则要从各台服务器中获取数据进行计算。

(1)Hadoop(分布式管理存储计算的生态系统)

  三大模块:HDFS(存储)、MapReduce(计算)、Yarn(资源调度)。计算模块中只提供了Map和Reduce两个操作。

  Hadoop的一个任务为一个job,该job里分为Map Task和Reduce Task阶段。Hadoop是从HDFS读取数据,通过计算模块MR将中间结果写入HDFS;然后再重新从

HDFS读取数据进行MR,再刷写到HDFS。因为一个Job只有一个Map和Reduce阶段,对于复杂的计算,需要使用多次MR,这样涉及到落盘和磁盘IO,效率不高。

  Hadoop适合处理离线的静态的大数据,HDFS只能对数据进行追加和全表删除。

(2)spark(分布式计算平台)

  Spark是专门为大规模数据处理而设计的快速通用的计算引擎。可以用它来完成各种各样的运算,包括SQL查询、文本处理、机器学习等等。

  scala语言编写,丰富了算子,可以通过RDD转换算子和RDD行动算子,实现很多复杂算法操作。

  spark的一个任务为一个application:一个Application -> 多个job ->一个job多个stage -> 一个stage多个task

  spark只是一个计算分析框架,专门用来对分布式存储的数据进行计算处理,它本身并不能存储数据。因此它要配合其他含有数据的分布式文件系统才能运作,

Spark可以使用基于HDFS的HBase数据库,也可以使用HDFS的数据文件,还可以通过jdbc连接使用Mysql数据库数据。

  Spark的设计模式是读取集群中的数据后,在内存中存储和运算,直到全部运算完毕后,再存储到集群中:设计计算模式,通过RDD进行转换,数据之间形成血缘关

系和类型转换。中间结果存放优先存放在内存中,内存不够再存放在磁盘中,不放入HDFS,避免了大量的IO和刷写读取操作;

  Spark适合处理离线的流式的大数据,可以对数据库数据进行修改删除。

5、机器学习

 

————————————————
版权声明:转载自CSDN攻城狮Kevin

 

posted @ 2021-06-15 22:36  桃子|TTW  阅读(334)  评论(0)    收藏  举报