Hadoop是一个能够让用户轻松架构和使用的分布式计算平台。用户可以轻松地在Hadoop上开发和运行处理海量数据的应用程序。
它主要有以下几个优点:
Ø
高可靠性。Hadoop按位存储和处理数据的能力值得人们信赖。
Ø
高扩展性。Hadoop是在可用的计算机集簇间分配数据并完成计算任务的,这些集簇可以方便地扩展到数以千计的节点中。
Ø
高容错性。Hadoop能够自动保存数据的多个副本,并且能够自动将失败的任务重新分配。
Ø
低成本。与一体机、商用数据仓库以及QlikView、Yonghong Z-Suite等数据集市相比,hadoop是开源的,项目的软件成本因此会大大降低。
Hadoop带有用Java语言编写的框架,因此运行在 Linux 生产平台上是非常理想的。Hadoop 上的应用程序也可以使用其他语言编写,比如 C++。
Hadoop版本变迁:
Hadoop 2.X主要特性:
Ø
Append
:支持文件追加功能。Hbase需要使HDFS具有Append功能以防止数据丢失等。
Ø
RAID
:在HDFS之上构建了一个新的分布式文件系统:DRFS。通过引入校验码增强对数据的保护,从而较少副本数来保持同样的可用性保障,进而节省存储空间。
Ø
Symlink
:让HDFS支持文件链接。
Ø
Security
:支持安全认证和授权机制,增强Hadoop的安全机制。
Ø
MRv1
:第一代MapReduce框架。
Ø
YARN/MRv2
:针对MRv1中的MapReduce在扩展性和多框架方面的不足,提出了全新的资源管理框架YARN(Yet AntherResuourceNegotiator)
Ø
NameNode
Federation
:针对1.0中Namenode内存约束限制其扩展性提出的改进方案。它将NameNode横向扩展成多个,每个NameNode分管一部分目录,增加了HDFS的扩展性,也是NameNode具备隔离性。
Ø
NameNode
HA
:解决NameNode单点故障,Name热备方案的实现。