Spark和Hadoop之间的区别

1 Hadoop
Hadoop 是一个由 Apache 基金会所开发的分布式系统基础架构。 用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。 Hadoop 实现了一个分布式文件系统(Hadoop Distributed File System , HDFS )。 HDFS 有高容错性的特点,并且设计用来部署在低廉的(low-cost )硬件上;而且它提供高吞吐量( high throughput )来访问应用程序的数据,适合那些有着 超大数据集( large data set )的应用程序。 HDFS 放宽了( relax ) POSIX 的要求,可以以流的形式访问(streaming access )文件系统中的数据。
Hadoop 的框架最核心的设计就是: HDFS 和 MapReduce 。 HDFS 为海量的数据提供了存储,而 MapReduce为海量的数据提供了计算。
2 Spark
Apache Spark 是专为大规模数据处理而设计的快速通用的计算引擎。 Spark 是 UC Berkeley AMP lab ( 加州大学伯克利分校的AMP 实验室 ) 所开源的类 Hadoop MapReduce 的通用并行框架, Spark 拥有 Hadoop MapReduce所具有的优点;但不同于 MapReduce 的是 ------Job 中间输出结果可以保存在内存中,从而不再需要读写HDFS ,因此 Spark 能更好地适用于数据挖掘与机器学习等需要迭代的 MapReduce 的算法。
Spark 在某些工作负载方面表现得更加优越,换句话说, Spark 启用了内存分布数据集,除了能够提供交互式查询外,它还可以优化迭代工作负载。
Spark 是在 Scala 语言中实现的,它将 Scala 用作其应用程序框架。与 Hadoop 不同, Spark 和 Scala 能够紧密集成,其中的 Scala 可以像操作本地集合对象一样轻松地操作分布式数据集。 尽管创建 Spark 是为了支持分布式数据集上的迭代作业,但是实际上它是对 Hadoop 的补充,可以在 Hadoop 文件系统中并行运行。通过名为 Mesos 的第三方集群框架可以支持此行为。
3 、数据的存储和处理区别
Hadoop 实质上更多是一个分布式系统基础架构 : 它将巨大的数据集分派到一个由普通计算机组成的集群中的多个节点进行存储,同时还会索引和跟踪这些数据,大幅度提升大数据处理和分析效率。Hadoop可以独立完成数据的存储和处理工作,因为其除了提供 HDFS 分布式数据存储功能 ,还 提供 MapReduce 数据处理功能
Spark 是一个专门用来对那些分布式存储的大数据进行处理的工具, 没有提供文件管理系统,自身不会 进行数据的存储 。它必须和其他的分布式文件系统进行集成才能运作。可以选择 Hadoop 的 HDFS, 也可以选择其他平台。
4 、处理速度区别
Hadoop 是磁盘级计算,计算时需要在磁盘中读取数据;其采用的是 MapReduce 的逻辑,把数据进行切片计算用这种方式来处理大量的离线数据。
Spark ,它会在内存中以接近 " 实时 " 的时间完成所有的数据分析。 Spark 的批处理速度比 MapReduce 快近10倍,内存中的数据分析速度则快近 100 倍。比如实时的市场活动,在线产品推荐等需要对流数据进行分析场景就要使用Spark 。
5 、灾难恢复
Hadoop 将每次处理后的数据写入磁盘中,对应对系统错误具有天生优势。
Spark 的数据对象存储在弹性分布式数据集 (RDD:) 中。这些数据对象既可放在内存,也可以放在磁盘,所以RDD 也提供完整的灾难恢复功能。

相关推荐
面向Google编程8 小时前
Flink源码阅读:Watermark机制
大数据·flink
Elastic 中国社区官方博客11 小时前
让我们把这个 expense 工具从 n8n 迁移到 Elastic One Workflow
大数据·运维·elasticsearch·搜索引擎·ai·信息可视化·全文检索
邮一朵向日葵14 小时前
企查查开放平台MCP:为AI智能体注入精准商业数据,驱动智能决策新时代
大数据·人工智能
沃达德软件14 小时前
智能警务视频侦查系统
大数据·人工智能·数据挖掘·数据分析·实时音视频·视频编解码
湘-枫叶情缘14 小时前
“智律提效”AI数字化运营落地项目可行性方案
大数据·人工智能·产品运营
Blossom.11815 小时前
大模型推理优化实战:连续批处理与PagedAttention性能提升300%
大数据·人工智能·python·神经网络·算法·机器学习·php
F36_9_16 小时前
数字化项目管理系统分享:7款助力企业实现项目智能化协同的工具精选
大数据
qq_124987075316 小时前
基于协同过滤算法的在线教育资源推荐平台的设计与实现(源码+论文+部署+安装)
java·大数据·人工智能·spring boot·spring·毕业设计
程途拾光15817 小时前
发展中国家的AI弯道超车:医疗AI的低成本本土化之路
大数据·人工智能
Mr-Apple17 小时前
记录一次git commit --amend的误操作
大数据·git·elasticsearch