HDFS Architecture

栏目: 服务器 · 发布时间: 7年前

内容简介:HDFS(Hadoop Distributed File System)是一个分布式文件系统,它具有很高的容错性,可以支持运行在廉价的硬件设备上。HDFS具有很高的吞吐量,非常适合拥有海量数据的application。HDFS放宽了一些POSIX要求,以支持一个HDFS实例可以包含成百上千台的服务器,每个服务器存储整个文件系统数据的一部分。每台服务器都有一定的概率出现硬件故障,这意味着一个HDFS实例中的一部分服务器在某个时刻可能是不可用的。因此,发现故障并能够从故障中快速恢复是HDFS的核心目标。HDFS

Introduction

HDFS(Hadoop Distributed File System)是一个分布式文件系统,它具有很高的容错性,可以支持运行在廉价的硬件设备上。HDFS具有很高的吞吐量,非常适合拥有海量数据的application。HDFS放宽了一些POSIX要求,以支持 流 的方式访问文件系统中的数据。HDFS是Apache Hadoop核心项目的一部分。

HDFS设计目标

  • 硬件故障是经常会发生的

一个HDFS实例可以包含成百上千台的服务器,每个服务器存储整个文件系统数据的一部分。每台服务器都有一定的概率出现硬件故障,这意味着一个HDFS实例中的一部分服务器在某个时刻可能是不可用的。因此,发现故障并能够从故障中快速恢复是HDFS的核心目标。

  • 批处理

HDFS适合应用在批处理领域,而不适合与用户交互的领域。它的设计目标是数据访问的高吞吐量,而不是低延迟。

  • 大数据集

运行在HDFS上的application通常都拥有大数据集,例如一个文件可以达到gigabytes或terabytes大小。因此一个HDFS集群可以扩展到数百个节点,可以支持数千万个文件的存储。

  • 简单的一致性模型

HDFS上的文件模型是 write-once-read-many 。一个文件在完成 创建-写入数据-关闭 后只能再对文件执行appends和truncates两种类型修改操作,无法再执行其它形式的修改。即只能在文件尾部添加或删除数据,不支持在文件的任意位置修改数据。

  • 使计算节点靠近它需要的数据

在分布式系统中,如果一个计算节点要处理的数据离自己很近,那么会有助于提高数据计算的效率。如果要处理的数据量非常大,那么效率提升将更加明显。因为这会降低整个系统的网络拥塞,并提高分布式系统整体的吞吐量。HDFS提供了相应的API,可以将application本身移向数据存储的节点。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。

C程序设计语言

C程序设计语言

(美)Brian W. Kernighan、(美)Dennis M. Ritchie / 徐宝文、李志译、尤晋元审校 / 机械工业出版社 / 2004-1 / 30.00元

在计算机发展的历史上,没有哪一种程序设计语言像C语言这样应用广泛。本书原著即为C语言的设计者之一Dennis M.Ritchie和著名计算机科学家Brian W.Kernighan合著的一本介绍C语言的权威经典著作。我们现在见到的大量论述C语言程序设计的教材和专著均以此书为蓝本。原著第1版中介绍的C语言成为后来广泛使用的C语言版本——标准C的基础。人们熟知的“hello,World"程序就是由本书......一起来看看 《C程序设计语言》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

MD5 加密
MD5 加密

MD5 加密工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换