Spark精华问答 | Spark和Hadoop的架构区别解读

640?wx_fmt=png

总的来说,Spark采用更先进的架构,使得灵活性、易用性、性能等方面都比Hadoop更有优势,有取代Hadoop的趋势,但其稳定性有待进一步提高。我总结,具体表现在如下几个方面。


640?wx_fmt=gif1

Q:Spark和Hadoop的架构区别


A:Hadoop:MapRedcue由Map和Reduce两个阶段,并通过shuffle将两个阶段连接起来的。但是套用MapReduce模型解决问题,不得不将问题分解为若干个有依赖关系的子问题,每个子问题对应一个MapReduce作业,最终所有这些作业形成一个DAG。

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


640?wx_fmt=gif2

Q:Spark和Hadoop的中间计算结果处理区别


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

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

640?wx_fmt=gif3

Q:Spark和Hadoop的操作模型区别


A:Hadoop:只提供了Map和Reduce两种操作所有的作业都得转换成Map和Reduce的操作。

Spark:提供很多种的数据集操作类型比如Transformations 包括map, filter, flatMap, sample, groupByKey, reduceByKey, union, join, cogroup, mapValues,sort,partionBy等多种操作类型,还提供actions操作包括Count,collect, reduce, lookup, save等多种。这些多种多样的数据集操作类型,给开发上层应用的用户提供了方便。


640?wx_fmt=gif4

Q:spark中的RDD是什么,有哪些特性?


A:1.A list of partitions:一个分区列表,RDD中的数据都存储在一个分区列表中

2.A function for computing each split:作用在每一个分区中的函数

3.A list of dependencies on other RDDs:一个RDD依赖于其他多个RDD,这个点很重要,RDD的容错机制就是依据这个特性而来的

4.Optionally,a Partitioner for key-value RDDs(eg:to say that the RDD is hash-partitioned):可选的,针对于kv类型的RDD才有这个特性,作用是决定了数据的来源以及数据处理后的去向

5.可选项,数据本地性,数据位置最优

640?wx_fmt=gif5

Q概述一下spark中的常用算子区别(map,mapPartitions,foreach,foreachPatition)


A:map:用于遍历RDD,将函数应用于每一个元素,返回新的RDD(transformation算子)

foreach:用于遍历RDD,将函数应用于每一个元素,无返回值(action算子)

mapPatitions:用于遍历操作RDD中的每一个分区,返回生成一个新的RDD(transformation算子)

foreachPatition:用于遍历操作RDD中的每一个分区,无返回值(action算子)

总结:一般使用mapPatitions和foreachPatition算子比map和foreach更加高效,推荐使用

640?wx_fmt=png

小伙伴们冲鸭,后台留言区等着你!

关于Spark,今天你学到了什么?还有哪些不懂的?除此还对哪些话题感兴趣?快来留言区打卡啦!留言方式:打开第XX天,答:……

同时欢迎大家搜集更多问题,投稿给我们!风里雨里留言区里等你~


福利

1、扫描添加小编微信,备注“姓名+公司职位”,加入【云计算学习交流群】,和志同道合的朋友们共同打卡学习!


640?wx_fmt=jpeg


推荐阅读:

  • 一场全能的开发者大会,来自助力开发者成功进阶的华为云

  • 抖音微博等短视频千万级高可用、高并发架构如何设计?

  • 20大5G关键技术

  • Fast.ai:从零开始学深度学习 | 资源帖

  • 10个简单小窍门带你提高Python数据分析速度(附代码)

  • 程序员爬取 3 万条评论,《长安十二时辰》槽点大揭秘!

  • 暗网竟成比特币最大用户? 上半年5.15亿美元被用于非法活动


    真香,朕在看了!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/522977.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

7类合作伙伴,190条沟通路径,高德汽车如何实现组织高效沟通?

摘要: 通常协同开发组织或团队大于等于7,关键干系人大于等于10,组织级沟通路径大于等于21条,关键干系人沟通路径大于等于45条,并以较大角系数递增。这种沟通路径曲线下,如何让组织信息快速传递?…

MaxCompute - ODPS重装上阵 第二弹 - 新的基本数据类型与内建函数

摘要: MaxCompute(原ODPS)是阿里云自主研发的具有业界领先水平的分布式大数据处理平台, 尤其在集团内部得到广泛应用,支撑了多个BU的核心业务。 MaxCompute除了持续优化性能外,也致力于提升SQL语言的用户体验和表达能力…

@程序员:可以被认出是写代码的,但是不能因为格子衬衫!

戳蓝字“CSDN云计算”关注我们哦!亲爱的,我今天穿什么衣服比较好呢?你女朋友早上是否也会站在试衣镜前这样询问你?醒醒,你哪里有女朋友!你分得清人家衣服的?比如:裤子:背…

助力全站WebP ,阿里云云上FPGA 团队发布 WebP图片解决方案

摘要: 阿里云 WebP 图片解决方案的软件部分由联捷计算科技(CTAccel)提供,再整合上阿里云自身的FaaS (FPGA as a Service) 弹性计算平台,形成了完整的阿里云 WebP 图片解决方案。 点此查看原文 目前来说,图片…

linux ssh连接交换机_访问SMB交换机CLI使用SSH或远程登录

访问SMB交换机CLI使用SSH或远程登录客观Cisco小型企业被管理的交换机可以通过命令行界面(CLI)远程访问和被配置。访问CLI在一个基于终端的窗口允许命令被输入。如果喜欢配置使用在您的交换机的终端命令通过CLI而不是基于Web的工具,这是一个更加容易的选择。某些任务…

面试官问我:你们的数据库是怎么架构的?

戳蓝字“CSDN云计算”关注我们哦!作者:尜尜人物来源:https://www.cnblogs.com/littlecharacter/p/9084291.html一、数据库架构原则高可用高性能一致性扩展性二、常见的架构方案方案一:主备架构,只有主库提供读写服务&a…

一张图学会数据库迁云最佳路径

摘要: 我们以基于Oracle数据库的应用系统上云为例,如何根据实际需求,及不同的应用特征,去选择合适的上云解决方案?看懂了以下这张图,就能找到最适合你的应用系统总体的迁移上云路径。 点此查看原文 传统架构…

透析《长安十二时辰》里的望楼,人类在唐朝就有 5G 愿望了?

戳蓝字“CSDN云计算”关注我们哦!作者 | 胡巍巍出品 | 程序人生(ID:coder_life)《古都24小时》哦不《长安十二时辰》,让很多人跟着易烊千玺和雷佳音,回了趟大唐!为了体现真实,剧中大…

MaxCompute - ODPS重装上阵 第三弹 - 复杂类型

摘要: MaxCompute(原ODPS)是阿里云自主研发的具有业界领先水平的分布式大数据处理平台, 尤其在集团内部得到广泛应用,支撑了多个BU的核心业务。 MaxCompute除了持续优化性能外,也致力于提升SQL语言的用户体验和表达能力…

ecplise安装flowable插件

ecplise安装flowable插件步骤: Help ---- > Install New Software ---- > add, 然后添加的弹窗中输入以下信息: Name: Flowable BPMN 2.0 designerLocation: http://flowable.org/designer/update/创建一个maven项目测试一下:

OpenStack精华问答 | OpenStack和CloudStack对比

自诞生以来,OpenStack 似乎一直被质疑,其背后最重要的两大推手 NASA 和 Rackspace 都弃它而去,惠普、思科接连宣布关闭基于 OpenStack 的公有云服务,但是,OpenStack 依旧坚挺。1Q:OpenStack发展历史A:2Q:op…

基于TableStore/MaxCompute的数据采集分析系统介绍

摘要 在互联网高度发达的今天,ipad、手机等智能终端设备随处可见,运行在其中的APP、网站也非常多,如何采集终端数据进行分析,提升软件的品质非常重要,例如PV/UV统计、用户行为数据统计与分析等。虽然场景简单&#xf…

第3篇:Flowable-IDM详述

接上一篇: 第2篇:Flowable启动 https://blog.csdn.net/weixin_40816738/article/details/102875324 文章目录一、Flowable-IDM功能二、Flowable-IDM登录地址三、Flowable-IDM登录用户和页面四、Flowable-IDM用户管理页面五、Flowable-IDM用户组管理页面六…

比“5G有多快”更重要的,是5G将带来哪些改变

戳蓝字“CSDN云计算”关注我们哦!“速度,其实是5G最无聊的应用。”北京邮电大学20岁的何同学,在他制作的一个火遍全网的视频中,用这句话结尾。5G,对我们普通人而言,是个熟悉又陌生的词。由于它是中美贸易战…

阿里云新推出 HiTSDB + IoT套件 物联网设备上云步入快车道

摘要: 阿里云针对物联网企业遇到的5大痛点,提供了HiTSDB IoT 套件的一体化解决方案,能够支持物联设备快速上云,高效设备管理,数据安全,低成本海量数据存储,实时掌握设备状态,快速发现…

阿里云 MVP技术直播——缪政辉教你如何搭建万能LNMP环境

摘要: 阿里云 MVP 缪政辉开直播咯!快把这个好消息告诉你身边热爱技术,喜欢云计算的同学! 缪政辉是谁? 网名妙正灰,真名和网名读法一致。阿里云第三季新晋MVP,电商在读大学生。云计算领域罕见的文…

第4篇:Flowable-Modeler详述之流程概述

接上一篇 第3篇:Flowable-IDM详述 https://blog.csdn.net/weixin_40816738/article/details/102885902 文章目录一、Flowable-Modeler功能1. 提供可视化编辑器2. 提供可视化参数配置3. 提供导入导出功能二、Flowable-Modeler界面之流程介绍三、Flowable-Modeler之创…

MaxCompute - ODPS重装上阵 第四弹 - CTE,VALUES,SEMIJOIN

摘要: MaxCompute(原ODPS)是阿里云自主研发的具有业界领先水平的分布式大数据处理平台, 尤其在集团内部得到广泛应用,支撑了多个BU的核心业务。 MaxCompute除了持续优化性能外,也致力于提升SQL语言的用户体验和表达能力…

Kubernetes端到端解决方案Part3:如何正确部署Kubernetes

戳蓝字“CSDN云计算”关注我们哦!在之前的文章中我们向您介绍了Kubernetes的入门挑战以及如何执行端到端的即服务解决方案。本篇文章,我们将继续探讨如何正确部署Kubernetes,并探索服务编排解决方案。01如何正确部署Kubernetes?在我们进一步…

浅谈PyODPS

摘要: 在我看来,PyODPS就是阿里云上的Python。值得注意的是,这里的定语“阿里云上的”一定不能精简掉,因为PyODPS不等于单机版的Python! 点此查看原文 目录 我眼中的PyODPS 安装和升级PyODPS版本 PyODPS的牛刀小试 …