Spark-------初识

Spark:通用的大数据计算框架,主要用于大数据的计算,而Hadoop主要用于大数据的存储以及资源调度。

HDFS:针对大数据的存储系统

MapRedure:针对大数据的计算框架

Hive:针对大数据的查询框架(sql查询)

Hbase:实时/准实时

YARN:资源调度

 

Spark可以针对HDFS进行大数据的批处理的计算,可以针对Hive进行SQl查询,核心就是一种新型的大数据计算框架,可以基于Hadoop上存储的大数据进行计算(HDFS、Hive)本身不提供大数据存储。(通用的大数据快速处理引擎)

 

MapReduce的基本计算过程:

Map是独立的机器   Reduce是独立的机器   Map每个独立的机器会有自己的任务   Reduce只获取自己对应的的任务    Shuffle,以及MapReduce的计算模型,就决定了MapReduce,只适合处理对速度不敏感的离线批处理任务。

 

Spark是基于内存的一种计算框架,有时候也会使用磁盘,(每个小节点都有任务和数据,所有的小节点都在一个物理机器上)

MapReduce的计算很固定必须基于磁盘以及大量的网络传输。

 

所以Spark的速度可以比MapReduce、Hive(底层也是基于MapReduce来执行Sql语句)快出至少数倍。

 

Hive的架构

一部分是Hadoop的HDFS,表、分区,其实是HDFS上的目录和文件,还有一部分类似于数据仓库,对数据进行导入导出,还有一部分是查询引擎(执行Sql语句),analyser,需要生成SQL语句的执行计划,Optimzer,对执行计划进行调优。

 

Spark SQL 可以通过Hive的数据仓库执行SQl语句,也可以直接针对HDFS文件执行SQL语句。更多的时候是对Hive数据仓库中的表进行查询,执行SQL语句。他替代的是Hive的查询引擎,而不是Hive的全部。

 

Storm:

        计算框架,topology,拓扑,分布式的,在很多节点上。

Storm的计算模型;

        它是针对每条记录的流式实时计算框架,他是一种非常纯粹的实时计算框架,但是由于每来一条数据都会处理,所以吞吐量不高。

Spark Streaming :Spark流式框架,分布式的  就是在一定的时间间隔内,会把数据都收集起来,作为一个batch,进行处理。

Spark Streaming的计算模型;

       严格意义上来说,Spark Streaming不是纯粹的实时计算框架,更是一种准实时计算框架。他的吞吐量远远高于Storm。但是他在实时性上不如Storm。

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值