资讯专栏INFORMATION COLUMN

Spark VS Hadoop:两大大数据分析系统深度解读

anRui / 2203人阅读

摘要:实际上,就是大数据分析领域的重量级大数据平台。许多使用大数据集和分析工具的公司使用。它已成为大数据应用系统中事实上的标准。

大数据,无论是从产业上,还是从技术上来看,都是目前的发展热点。在中国,政府控制着80%的数据,剩下的多由“BAT”这样的大公司拥有,中小企业如何构建自己的大数据系统?其他企业如何建设自己的大数据系统?

推荐两大应用最广泛、国人认知最多的Apache开源大数据框架系统:spark Hadoop

Spark:速度快、易于使用

Spark以性能见长,但是它也因易用性而小有名气,原因是它随带易于使用的API,支持Scala(原生语言)、Java、Python和Spark SQL。Spark SQL非常类似于SQL 92,所以几乎不需要经历一番学习,马上可以上手。

Spark是UC Berkeley AMP lab所开源的类Hadoop MapReduce的通用的并行计算框架,Spark基于map reduce算法实现的分布式计算,拥有Hadoop MapReduce所具有的优点;但不同于MapReduce的是Job中间输出结果可以保存在内存中,从而不再需要读写HDFS,因此Spark能更好地适用于数据挖掘与机器学习等需要迭代的map reduce的算法。

Spark还有一种交互模式,那样开发人员和用户都可以获得查询和其他操作的即时反馈。MapReduce没有交互模式,不过有了Hive和Pig等附加模块,采用者使用MapReduce来得容易一点。

成本上来看:Spark需要大量内存,但是可以使用常规数量的常规转速磁盘。一些用户抱怨会产生临时文件,需要清理。这些临时文件通常保存7天,以便加快针对同一数据集的任何处理。磁盘空间相对便宜,由于Spark不使用磁盘输入/输入用于处理,已使用的磁盘空间可以用于SAN或NAS。

容错上:Spark使用弹性分布式数据集(RDD),它们是容错集合,里面的数据元素可执行并行操作。RDD可以引用外部存储系统中的数据集,比如共享式文件系统、HDFS、HBase,或者提供Hadoop InputFormat的任何数据源。

Spark可以用Hadoop支持的任何存储源创建RDD,包括本地文件系统,或前面所列的其中一种文件系统。

Hadoop:分布式文件系统

Hadoop是Apache.org的一个项目,其实是一种软件库和框架,以便使用简单的编程模型,跨计算器集群对庞大数据集(大数据)进行分布式处理。Hadoop可灵活扩展,从单一计算机系统,到提供本地存储和计算能力的数千个商用系统,它都能轻松支持。实际上,Hadoop就是大数据分析领域的重量级大数据平台。

Hadoop由协同运行、构建Hadoop框架的多个模块组成。Hadoop框架的主要模块包括如下:

Hadoop Common

Hadoop分布式文件系统(HDFS)

Hadoop YARN

Hadoop MapReduce

虽然上述四个模块构成了Hadoop的核心,不过还有其他几个模块。这些模块包括:Ambari、Avro、Cassandra、Hive、Pig、Oozie、Flume和Sqoop,它们进一步增强和扩展了Hadoop的功能,得以扩大到大数据应用领域,处理庞大数据集。

许多使用大数据集和分析工具的公司使用Hadoop。它已成为大数据应用系统中事实上的标准。设计Hadoop的初衷是处理这项任务:搜寻和搜索数十亿个网页,将这些信息收集到数据库中。正是由于渴望搜寻和搜索互联网,才有了Hadoop的HDFS及分布式处理引擎MapReduce。

成本上:MapReduce使用常规数量的内存,因为数据处理基于磁盘,所以公司得购买速度更快的磁盘和大量磁盘空间来运行MapReduce。MapReduce还需要更多的系统,将磁盘输入/输出分布到多个系统上。

容错上:MapReduce使用TaskTracker节点,它为JobTracker节点提供了心跳(heartbeat)。如果没有心跳,那么JobTracker节点重新调度所有将执行的操作和正在进行的操作,交给另一个TaskTracker节点。这种方法在提供容错性方面很有效,可是会大大延长某些操作(即便只有一个故障)的完成时间。

总结:Spark与MapReduce是一种相互共生的关系。Hadoop提供了Spark所没有的功能特性,比如分布式文件系统,而Spark为需要它的那些数据集提供了实时内存处理。完美的大数据场景正是设计人员当初预想的那样:让Hadoop和Spark在同一个团队里面协同运行。

作者:张景龙,畅移(上海)信息科技有限公司CTO,CCFYOCSEF上海委员,京东今夜酒店特价app技术奠基人和首任CTO,中国第一代智能手机开发者。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/38727.html

相关文章

  • Spark VS Hadoop大大数据分析系统深度解读

    摘要:实际上,就是大数据分析领域的重量级大数据平台。许多使用大数据集和分析工具的公司使用。它已成为大数据应用系统中事实上的标准。 大数据,无论是从产业上,还是从技术上来看,都是目前的发展热点。在中国,政府控制着80%的数据,剩下的多由BAT这样的大公司拥有,中小企业如何构建自己的大数据系统?其他企业如何建设自己的大数据系统? 推荐两大应用最广泛、国人认知最多的Apache开源大数据框架系统:...

    Loong_T 评论0 收藏0
  • Spark VS Hadoop大大数据分析系统深度解读

    摘要:实际上,就是大数据分析领域的重量级大数据平台。许多使用大数据集和分析工具的公司使用。它已成为大数据应用系统中事实上的标准。 大数据,无论是从产业上,还是从技术上来看,都是目前的发展热点。在中国,政府控制着80%的数据,剩下的多由BAT这样的大公司拥有,中小企业如何构建自己的大数据系统?其他企业如何建设自己的大数据系统? 推荐两大应用最广泛、国人认知最多的Apache开源大数据框架系统:...

    leoperfect 评论0 收藏0
  • Spark VS Hadoop大大数据分析系统深度解读

    摘要:实际上,就是大数据分析领域的重量级大数据平台。许多使用大数据集和分析工具的公司使用。它已成为大数据应用系统中事实上的标准。 大数据,无论是从产业上,还是从技术上来看,都是目前的发展热点。在中国,政府控制着80%的数据,剩下的多由BAT这样的大公司拥有,中小企业如何构建自己的大数据系统?其他企业如何建设自己的大数据系统? 推荐两大应用最广泛、国人认知最多的Apache开源大数据框架系统:...

    stormzhang 评论0 收藏0
  • Spark VS Hadoop大大数据分析系统深度解读

    摘要:实际上,就是大数据分析领域的重量级大数据平台。许多使用大数据集和分析工具的公司使用。它已成为大数据应用系统中事实上的标准。 大数据,无论是从产业上,还是从技术上来看,都是目前的发展热点。在中国,政府控制着80%的数据,剩下的多由BAT这样的大公司拥有,中小企业如何构建自己的大数据系统?其他企业如何建设自己的大数据系统? 推荐两大应用最广泛、国人认知最多的Apache开源大数据框架系统:...

    liangdas 评论0 收藏0
  • 一篇文看懂Hadoop:风雨十年,未来何去何从

    摘要:机器学习的开源项目除了之前的等,今年发生了很多令人瞩目的大事,迎来了数个明星巨头的重磅加入年月,开源前沿深度学习工具。由一个服务于分布式机器学习的框架和一组分布式机器学习算法组成,可将机器学习算法应用到大数据中。 本文分为技术篇、产业篇、应用篇、展望篇四部分技术篇2006年项目成立的一开始,Hadoop这个单词只代表了两个组件——HDFS和MapReduce。到现在的10个年头,这个单词代表...

    Hanks10100 评论0 收藏0

发表评论

0条评论

anRui

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<