我正在设置Hadoop集群以进行测试/ PoC。使用Spark作为处理引擎,今天有什么不能做的吗?在我看来,Spark已经取代了MR,并且所有其他围绕Hadoop构建的工具/抽象也与Spark兼容(Hive,Sqoop,Flume,HBase,Pig ...)-否则还有其他限制吗? 据我了解,即使对于批处理作业,Spark至少与MR一样快,并且如果您希望将来扩展用例(流式传输),那么无论如何都需要适应Spark。
我之所以要问,是因为到目前为止,大多数介绍和教程仍在教您有关Hadoop和MapReduce的问题。
答案 0 :(得分:2)
很简单,不,这些天没有理由使用MapReduce。 Spark更快,更易于使用,具有更多正在进行的开发,更多连接器,更多用户,更多优化...
在教程中使用MapReduce是因为许多教程已经过时,而且因为MapReduce演示了在所有分布式系统中处理数据的基础方法。在我看来,任何想使用“大数据”的人都应该(至少在概念上)理解MapReduce。