Hadoop是大数据生态系统,是集成了文件存储,文件抽取,批量计算,资源管理等等,而spark设计初衷是实时并行计算,而目前spark可以作为计算引擎嵌入hive,同时解决了批量与实时计算的问题。
直接比较hadoop和spark有难度,因为它们处理的许多任务都一样,但是在一些方面又并不相互重叠。
比如说,spark没有文件管理功能,因而必须依赖hadoop分布式文件系统(hdfs)或另外某种解决方案。
hadoop框架的主要模块包括如下:
hadoop common
hadoop分布式文件系统(hdfs)
hadoop yarn
hadoop mapreduce
虽然上述四个模块构成了hadoop的核心,不过还有其他几个模块。这些模块包括:ambari、avro、cassandra、hive、 pig、oozie、flume和sqoop,它们进一步增强和扩展了hadoop的功能。
spark确实速度很快(最多比hadoop mapreduce快100倍)。spark还可以执行批量处理,然而它真正擅长的是处理流工作负载、交互式查询和机器学习。
相比mapreduce基于磁盘的批量处理引擎,spark赖以成名之处是其数据实时处理功能。spark与hadoop及其模块兼容。实际上,在hadoop的项目页面上,spark就被列为是一个模块。
spark有自己的页面,因为虽然它可以通过yarn(另一种资源协调者)在hadoop集群中运行,但是它也有一种独立模式。它可以作为 hadoop模块来运行,也可以作为独立解决方案来运行。
mapreduce和spark的主要区别在于,mapreduce使用持久存储,而spark使用弹性分布式数据集(rdds)。
用户登录
还没有账号?立即注册
用户注册
投稿取消
文章分类: |
|
还能输入300字
上传中....