Spark 和 Hadoop 在技术结构上的共同点和区别?

尹桑 2016-06-24 09:52:13
Spark 和 Hadoop 在技术结构上有哪些共同点和区别呢?
本人刚接触这些,不太了解,有大神帮忙解答一下吗
...全文
821 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
SongDongmei 2016-07-11
  • 打赏
  • 举报
回复
引用 1 楼 link0007 的回复:
Hadoop最重要的模块是HDFS分布式文件系统,基本上所有分布式计算框架都架构于它之上。 而Spark和Hadoop MR的共同点就是都是Map-Reduce计算框架,不同点是Spark的中间结果放在内存,而Hadoop MR放在HDFS上。所以Spark支持快速迭代运算与近线的流式处理。在编程风格上,Spark更加友好,RDD操作的代码风格非常接近Java8的stream操作,同时DataFrame支持SQL。另外Spark支持的语言有源生的Scala,以及Java,Python,R。
感觉楼上的说法略有不妥。spark的计算框架不是mapreduce。经常有人说Spark就是内存版的MapReduce,实际上不是的。Spark使用的DAG计算模型。
LinkSe7en 2016-06-27
  • 打赏
  • 举报
回复
Hadoop最重要的模块是HDFS分布式文件系统,基本上所有分布式计算框架都架构于它之上。 而Spark和Hadoop MR的共同点就是都是Map-Reduce计算框架,不同点是Spark的中间结果放在内存,而Hadoop MR放在HDFS上。所以Spark支持快速迭代运算与近线的流式处理。在编程风格上,Spark更加友好,RDD操作的代码风格非常接近Java8的stream操作,同时DataFrame支持SQL。另外Spark支持的语言有源生的Scala,以及Java,Python,R。
大数据基础知识入门 社会保障事业部 张火磊 主要内容 大数据价值 03 大数据概念、特性、由来 01 大数据应用举例 04 02 Hadoop技术介绍 大数据概念、特性、由来 什么叫大数据? 麦肯锡全球研究所给出的定义是:一 种规模大到在获取、存储、管理、分 析方面大大超出了传统数据库软件工 具能力范围的数据集合,具有海量的 数据规模、快速的数据流转、多样的 数据类型和价值密度低四大特征。 大数据的特性 大量(Volume) 多样(Variety) 快速(Velocity) 价值(Value) 大数据技术的由来 自 2002 年 数 字 时 代 开 启 以 来,数据呈现海量增长趋势(如图 所示)。特别是在2004年社交媒体 产生后,数据更是呈现爆炸性增 长趋势. 随着数据的增长,尤其数据 达到PB级以后,数据的存储和分 析都会变得非常困难。 2003-2006年,Google提出了三大关键技术来解决大规模数据的存 储和处理: GFS、MapReduce、BigTable并称Google大数据的三驾马 车。虽然Google没有公布这三个产品的源码,但是他发布了这三个 产品的详细设计论文,奠定了风靡全球的大数据的基础! Hadoop之父Doug Cutting 受此启发的Doug Cutting等人用2 年的业余时间实现了GFS和MapReduce机制。 2005年,Hadoop作为Lucene的子项目Nutch 的一部分正式引入Apache基金会。2006年2 月被分离出来,成为一套完整独立的软件, 起名为HadoopHadoop的起源 总结起来,Hadoop起源于Google的三大论文 GFS—->HDFS Google MapReduce—->Hadoop MapReduce BigTable—->HBase Hadoop技术介绍 Hadoop的架构 Cloudera Manger Ambari 和 Cloudera Manger都是基于Web的工具,支持 Apache Hadoop集群的供应、管理 和 监 控 。 支 持 大 多 数 Hadoop 组 件 , 包 括 HDFS 、 MapReduce 、 Spark 、 Hive 、 Pig 、 Hbase 、 Zookeper、Sqoop等 大数据集群管理方式 分 为 手 工 方 式 ( Apache hadoop)和工具方式(Ambari + hdp 和 Cloudera Manger + CDH) HDFS HDFS ( Hadoop Distributed File System ) 是 Hadoop项目的核心组件之一,是分布式计算中数据存储 管理的基础,是基于流数据模式访问和处理超大文件的 需求而开发的,可以运行于廉价的商用服务器上。它所 具有的高容错、高可靠性、高可扩展性、高吞吐率等特 征为海量数据提供了不怕故障的存储,为超大数据集的 应用处理带来了很多便利。主要包含NameNode(用来管理 文件系统的命名空间)和DataNode(文件系统中真正存储 数据的地方) MapReduce MapReduce是一个高性能的批处理分布式 计算框架,用于对海量数据进行并行分析和处 理。MapReduce采用"分而治之"的思想,把对大 规模数据集的操作,分发给一个主节点管理下 的各个分节点共同完成,然后通过整合各个节 点的中间结果,得到最终结果。简单地说, MapReduce就是"任务的分解与结果的汇总"。 举例:如果想统计下过去10年计算机论文出现 最多的几个单词 传统方法:首先写一个遍历论文的程序,部署 到N台机器上去,然后把论文集分成N份,一台 机器跑一个作业。这个方法从理论上可以实 现,但是部署起来很麻烦,我们要人工把程序 copy到别的机器,要人工把论文集分开,最后 还要把N个运行结果进行整合。 Spark Apache Spark 是专为大规模数据处理而设计的快速通用的计算引擎。 Spark在借鉴Hadoop MapReduce优点的同时,很好地解决了MapReduce所面临的问题。 Spark的计算模式也属于MapReduce,但不局限于Map和Reduce操作,还提供了多种数 据集操作类型,编程模型比Hadoop MapReduce更灵活。 Spark基于DAG的任务调度执行机制,要优于Hadoop MapReduce的迭代执行机制,因此 Spark能更好地适用于数据挖掘与机器学习等需要迭代的MapReduce的算法。 Spark 优点: 运行速度快:使用DAG执行引擎以支持循环数据流与内存计算 容易使用:支持使用Scala、Java、Python和R语言进行编程,可以通过Spark Shell 进行交互式编程 通用性:Spark提供了完整而强大的技术

742

社区成员

发帖
与我相关
我的任务
社区描述
该论坛主要探讨Linux系统在IBM Power平台的安装、部署、应用开发等话题,并为网友们提供自由交流的平台。
社区管理员
  • Power Linux社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧