Nos*_*osk 26 hadoop mapreduce bigdata apache-spark
我用cloudera测试了hadoop和mapreduce,我发现它非常酷,我认为我是最新的相关BigData解决方案.但是几天前,我发现了这个:https: //spark.incubator.apache.org/
一个"闪电快速集群计算系统",能够在Hadoop集群的顶部工作,并且显然能够破坏mapreduce.我看到它在RAM中比mapreduce更有效.我认为当你必须进行集群计算来克服单个机器上的I/O问题时,mapreduce仍然是相关的.但是,由于Spark可以完成mapreduce所做的工作,并且可能在几个操作上更有效率,它不是MapReduce的结束吗?或者MapReduce可以做些什么,或者MapReduce在特定环境中比Spark更有效?
Ada*_*dam 33
取决于你想做什么.
MapReduce最大的优势在于处理大量的大型文本文件.Hadoop的实现是围绕字符串处理构建的,而且I/O非常重.
MapReduce的问题在于人们看到简单的平行锤,一切看起来都像钉子一样.不幸的是,除了处理大型文本文件之外,Hadoop的性能非常糟糕.如果您编写了一个不错的并行代码,您通常可以在Hadoop生成其第一个VM之前完成它.我在自己的代码中看到了100x的差异.
Spark消除了许多Hadoop的开销,例如依赖I/O来解决所有问题.相反,它将所有内容保存在内存中.如果你有足够的记忆,那就太棒了,如果你没有,那就太好了.
请记住,Spark是Hadoop的扩展,而不是替代品.如果您使用Hadoop处理日志,Spark可能无济于事.如果你有更复杂的,可能紧密耦合的问题,那么Spark会帮助很多.此外,您可能喜欢Spark的Scala接口进行在线计算.
Pra*_*ati 25
MapReduce本质上是批量导向的.因此,像Hive和Pig这样的MR实现之上的任何框架本质上也是面向批处理的.对于机器学习和交互式分析的迭代处理,Hadoop/MR不符合要求.这是来自Cloudera的一篇很好的文章,Why Spark
很好地总结了它.
这不是MR的结束.在撰写本文时,与Spark相比,Hadoop非常成熟,许多供应商都支持它.它会随着时间而改变.Cloudera已开始将Spark纳入CDH,随着时间的推移,越来越多的供应商将其纳入其大数据发行版并为其提供商业支持.在可预见的未来,我们会看到MR和Spark并行.
此外,使用Hadoop 2(也称为YARN),MR和其他模型(包括Spark)可以在单个群集上运行.所以,Hadoop不会去任何地方.
归档时间: |
|
查看次数: |
20646 次 |
最近记录: |