HDFS

使用 Hadoop 分布式文件系统 (HDFS) 将 Apache Hadoop 集群扩展到数百个节点

摘要 pcb 电路板

什么是 HDFS?

HDFS 是一种分布式文件系统,用于处理在商业硬件上运行的大型数据集。 它用于将单个 Apache Hadoop 集群扩展到数百 (甚至数千)个节点。 HDFS 是 Apache Hadoop 的主要组件之一,其他组件包括 MapReduce 和 YARN。 HDFS 不应与 Apache HBase 混淆或被 Apache HBase 取代,Apache HBase 是一个面向列的非关系数据库管理系统,它位于 HDFS 之上,可以通过其内存处理引擎更好地支持实时数据需求。


HDFS 的目标

从硬件故障中快速恢复

因为一个 HDFS 实例可能由数千台服务器组成,所以至少有一台服务器出现故障是不可避免的。 HDFS 可检测故障并自动快速恢复。

访问流数据

HDFS 更适用于批处理而不是交互式使用,因此设计中的重点是高数据吞吐率,以适应对数据集的流式访问。

容纳大数据集

HDFS 适用于数据集大小通常为 GB 到 TB 的应用程序。 HDFS 提供高聚合数据带宽,可以扩展到单个集群中的数百个节点。

可移植性

为了便于采用,HDFS 设计为可跨多个硬件平台移植,并与各种底层操作系统兼容。


HDFS 的一个示例

考虑一个文件,其中包括美国每个人的电话号码;姓氏以 A 开头的人的号码可能存储在服务器 1 上,B 存储在服务器 2 上,以此类推。

使用 Hadoop,这个电话簿的片段将存储在集群中,要重建整个电话簿,您的程序需要集群中每个服务器的数据块。

为了确保服务器出现故障时的可用性,缺省情况下,HDFS 会将这些较小的部分复制到另外两台服务器上。 (冗余可以根据每个文件或整个环境增加或减少;例如,开发 Hadoop 集群通常不需要任何数据冗余。) 这种冗余提供了多种好处,最明显的是更高的可用性。

冗余还允许 Hadoop 集群将工作分解成更小的块,并在集群中的所有服务器上运行这些作业,以获得更好的可伸缩性。 最后,您可以实现数据本地性,这在处理大型数据集时至关重要。


相关解决方案

利用 IBM 的大数据解决方案推动更好、更快的分析

IBM 和 Cloudera 合作提供了一个行业领先的企业级 Hadoop 分发版,包括产品和服务的集成生态系统,以支持更快的大规模分析。



了解最新资讯,保持联系

探索 Hadoop 认知课程 博客