我们知道,为了维护大数据并以不同的方式从此数据获取相应的报告,我们使用了Hadoop,它是Apache Software Foundation基于Java编程语言的开源框架。
现在,Apache引入了名为Hadoop 2的下一个Hadoop版本,因此本文着重介绍这两个版本之间的差异。
以下是Hadoop 1和Hadoop 2之间的主要区别。
序号 | 键 | Hadoop 1 | Hadoop 2 |
---|---|---|---|
1 | 新组件和API | 正如Hadoop 1在Hadoop 2之前引入的那样,与Hadoop 2相比,它具有更少的组件和API。 | 另一方面,在Hadoop 1之后引入的Hadoop 2与Hadoop 1相比具有更多的组件和API,例如YARN API,YARN FRAMEWORK和增强的Resource Manager。 |
2 | 支持 | Hadoop 1在其体系结构中仅支持MapReduce处理模型,不支持非MapReduce工具。 | 另一方面,Hadoop 2允许在MapReducer模型以及其他分布式计算模型(例如Spark,Hama,Giraph,消息传递接口)MPI和HBase协处理器中工作。 |
3 | 资源管理 | Hadoop 1中的Map reducer负责处理和集群资源管理。 | 另一方面,在使用Hadoop 2进行群集资源管理的情况下,使用YARN进行处理管理是使用不同的处理模型完成的。 |
4 | 可扩展性 | 由于Hadoop 1早于Hadoop 2,因此可伸缩性比Hadoop 2相对要小,并且在节点扩展的情况下,每个集群最多只能有4000个节点 | 另一方面,Hadoop 2具有比Hadoop 1更好的可伸缩性,并且每个群集最多可伸缩10000个节点。 |
5 | 实作 | Hadoop 1的实现遵循插槽的概念,插槽仅可用于运行Map任务或Reduce任务。 | 另一方面,Hadoop 2遵循了可用于运行一般任务的容器的概念。 |
6 | Windows支持 | 最初,在Hadoop 1中,Apache不提供对Microsoft Windows的支持。 | 另一方面,随着Hadoop版本的改进,Apache为Hadoop 2中的Microsoft Windows提供了支持。 |