Spark 和 Hadoop 架构区别(全新视角)

1、Spark和Hadoop的架构区别

Hadoop :mapreduce 有Map和reduce两个阶段,并通过Shuffle将两个阶段连接起来的。但是套用MapReduce 模型解决问题,不得不将
问题分解为若干个有依赖关系的子问题,每个子问题对应一个MapReduce作也,最终将作业生成一个DAG。

Spark :是通用的DAG框架,可以将多个依赖关系放入作业转换为一个大的DAG。核心思想是将map和reduce两个操作进一步拆分为多个元操作,
这些元操作可以灵活组合,产生新的操作,并经过一些控制程序组装后形成一个大的DAG作业。

2、Spark 和Hadoop的中间计算结果处理区别

Hadoop :在DAG 中,由于多个MapReduce作业生成,每个作业都会从HDFS上读取一次数据和写一次数据(默认写三份),即使这些MapReduce
作业产生的数据是中间数据也需要写HDFS。这种表达作业依赖关系的方式比较抵效,会浪费大量不必要的磁盘和网络IO,根本原因是作业之间产生的数据不
是直接流动的,而是借助HDFS作为共享数据存储系统。

Spark :在Spark 中,使用内存(内存不够使用本地磁盘)替代了使用HDFS存储中间结果。对于迭代运算效率更高。

3、Spark 和Hadoop的操作模型区别

Hadoop:只提供了map和reduce两种操作所有的作业都得转换成Map和reduce操作。
Spark:提供了多种数据集操作类型比如:
Teansformations包括:
Map,
filter,
flatMap,
sample,
groupbyKey,
reduceByKey
sory,
partitionByKey 等 …

actions包括:
count,
collect,
reduce,
lookup,
save等多种。

寄语专区:

《转载注明出处,你的点赞是我的动力。》

在这里插入图片描述

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值