Hadoop|带你对比Hadoop MapReduce与Apache Spark( 三 )

  • Hadoop MapReduce可以是一种经济的选择 , 因为Hadoop即服务(HaaS)和更多人员的可用性 。 根据基准测试 , Apache Spark更具成本效益 , 但是在使用Spark的情况下 , 人员配置会很昂贵 。
  • Apache Spark和Hadoop MapReduce都具有容错能力 , 但是相对而言 , Hadoop MapReduce比Spark具有更高的容错能力 。
  • 就数据类型和数据源而言 , Spark和Hadoop MapReduce都具有相似的兼容性 。
  • 在Apache Spark中进行编程比较容易 , 因为它具有交互模式 , 而Hadoop MapReduce需要具有核心的Java编程技能 , 但是有多种实用程序使在Hadoop MapReduce中进行编程更加容易 。
  • Apache Spark是否会消除Hadoop MapReduce?Hadoop MapReduce被大多数用户谴责为Hadoop Clustering中的日志阻塞 , 原因是MapReduce以批处理模式执行所有作业 , 这意味着无法实时分析数据 。 随着Hadoop Spark的问世(事实证明它是Hadoop MapReduce的替代品), 阻碍数据科学家的最大问题是Hadoop vs. Spark-谁赢得了胜利?
    Apache Spark以微批的方式执行作业 , 这些作业非常短 , 例如大约不到5秒 。 与面向实时流的Hadoop框架相比 , Apache Spark过去一直在提供更高的稳定性方面取得了成功 。
    尽管如此 , 每个硬币都有两个面 , 是的 , Hadoop Spark也存在一些积压 , 例如如果中间数据大于节点的内存大小 , 则无法处理 , 节点故障时的问题 , 最重要的是成本因素 。
    Hadoop Spark利用日志记录(也称为“重新计算”)来提供弹性 , 以防万一发生节点故障 , 因此我们可以得出结论 , 节点故障情况下的恢复行为与以下情况相似: Hadoop MapReduce除外 , 事实上恢复过程会更快 。
    如果特定节点的RAM不足以存储数据分区 , Spark还具有“溢出磁盘”功能 , 从而为基于磁盘的数据处理提供了适度的降级功能 。
    Hadoop MapReduce相对于Apache Spark的一大优势 是 , 如果数据大小大于内存 , 则在这种情况下 , Apache Spark将无法利用其缓存 , 并且很有可能比它慢得多 。MapReduce的批处理 。
    困惑的Hadoop与Spark –选择哪一个?
    如果让您对Hadoop MapReduce或Apache Spark 感到困惑的问题 ,或者说是选择基于磁盘的计算或基于RAM的计算 , 那么这个问题的答案很简单 。 这全都取决于并且这个决定所依赖的变量会随着时间而动态变化 。
    【Hadoop|带你对比Hadoop MapReduce与Apache Spark】但是 , 当前的趋势支持诸如Apache Spark之类的内存技术 , 因为行业趋势似乎正在为其提供积极的反馈 。 因此 , 总而言之 , 我们可以说 , 选择Hadoop MapReduce与Apache Spark取决于基于用户的情况 , 我们无法做出自主选择 。


    推荐阅读