HDFS概述(6)————用户手册
目的
本文档是使用Hadoop分布式文件系统(HDFS)作为Hadoop集群或独立通用分布式文件系统的一部分的用户的起点。虽然HDFS旨在在许多环境中“正常工作”,但HDFS的工作知识有助于在特定集群上进行配置改进和诊断。
概述
HDFS是Hadoop应用程序使用的主要分布式存储。HDFS集群主要由一个NameNode来管理文件系统元数据和存储实际数据的DataNodes。HDFS架构指南详细介绍了HDFS。本用户指南主要处理用户和管理员与HDFS集群的交互。HDFS架构图描述了NameNode,DataNode和客户端之间的基本交互。客户联系NameNode进行文件元数据或文件修改,并直接使用DataNodes执行实际的文件I / O。
以下是许多用户可能感兴趣的一些突出特征:
Hadoop,包括HDFS,非常适合于使用商品硬件的分布式存储和分布式处理。它是容错的,可扩展的,非常简单的扩展。由于其简明易用且适用于大型分布式应用程序,MapReduce是Hadoop的一个组成部分。
HDFS是高度可配置的,默认配置非常适合许多安装。大多数情况下,配置需要仅针对非常大的集群进行调整。
Hadoop是用Java编写的,在所有主要平台上都支持。
Hadoop支持类shell命令直接与HDFS进行交互。
NameNode和Datanodes内置了Web服务器,可以方便地检查集群的当前状态。
在HDFS中经常实施新功能和改进。以下是HDFS中有用功能的一个子集:
文件权限和身份验证。
机架感知:在调度任务和分配存储时考虑节点的物理位置。
Safemode:维护的管理模式。
fsck:用于诊断文件系统运行状况的实用程序,以查找丢失的文件或块。
fetchdt:一个用于获取DelegateToken并将其存储在本地系统上的文件中的实用程序。
平衡器:数据在DataNodes之间不均匀分布时平衡集群的工具。
升级和回滚:软件升级后,如果出现意外问题,可以在升级之前回滚到HDFS状态。
Secondary NameNode:执行命名空间的定期检查点,并帮助将包含HDFS修改日志的文件的大小保留在NameNode的某个限制内。
检查点节点:执行命名空间的定期检查点,并帮助最小化包含HDFS更改的NameNode中存储的日志大小。替换先前由Secondary NameNode填充的角色,尽管尚未使用。NameNode允许多个Checkpoint节点同时进行,只要没有备份节点注册到系统。
备份节点:Checkpoint节点的扩展。除了检查点之外,它还从NameNode接收编辑流,并维护其自己的命名空间的内存中副本,该副本始终与活动的NameNode命名空间状态同步。只能一个备份节点可以一次注册到NameNode。
准备工作
以下文档介绍如何安装和设置Hadoop集群:
- Single Node Setup for first-time users.
 - Cluster Setup for large, distributed clusters.
 
本文档的其余部分假设用户能够使用至少一个DataNode来设置和运行HDFS。为了本文档的目的,NameNode和DataNode都可以在同一物理机上运行。
Web服务
NameNode和DataNode都会运行一个内部Web服务器,以显示有关集群当前状态的基本信息。使用默认配置,NameNode首页位于http://namenode-name:50070/。它列出了集群中的DataNodes和集群的基本统计信息。Web界面也可用于浏览文件系统(使用NameNode首页上的“浏览文件系统”链接)。
Shell命令
Hadoop包括与Hadoop支持的HDFS和其他文件系统直接交互的各种shell命令。命令bin / hdfs dfs -help列出了Hadoop shell支持的命令。此外,命令bin / hdfs dfs -help命令名显示命令的更详细的帮助。这些命令支持大多数正常的文件系统操作,如复制文件,更改文件权限等。它还支持几个HDFS特定操作,如更改文件复制。有关详细信息,请参阅File System Shell Guide.
DFSAdmin Command
bin / hadoop dfsadmin命令支持几个与HDFS管理相关的操作。bin / hadoop dfsadmin -help命令列出了当前支持的所有命令。例如:
-report:报告HDFS的基本统计资料。这些信息中的一些也可以在NameNode首页上找到。
-safemode:虽然通常不需要,管理员可以手动输入或离开Safemode。
-finalizeUpgrade:删除上一次升级过程中创建的群集的先前备份。
-refreshNodes:使用允许连接到namenode的数据库集更新namenode。Namenodes重新读取由dfs.hosts dfs.hosts.exclude定义的文件中的datanode主机名。dfs.hosts中定义的主机是作为集群一部分的数据库。如果dfs.hosts中有条目,则只允许其中的主机向namenode注册。dfs.hosts.exclude中的条目是需要停用的数据。当所有副本从其复制到其他数据库时,Datanodes完全退役。退出的节点不会自动关闭,也不会被选择用于写入新的副本。
-printTopology:打印集群的拓扑。显示由NameNode查看的附加到轨道的机架和数据库的树。
For command usage, see dfsadmin.
Secondary NameNode
NameNode将对文件系统的修改作为附加到本机文件系统文件的日志进行编辑。当NameNode启动时,它从快照文件fsimage中读取HDFS状态,然后应用编辑日志文件中的编辑。然后将新的HDFS状态写入fsimage,并使用空的编辑文件启动正常操作。由于NameNode仅在启动期间合并fsimage和edits文件,编辑日志文件可能会在繁忙的群集中随着时间的推移而变得非常大。较大编辑文件的另一个副作用是下次重新启动NameNode需要更长时间。
辅助NameNode定期合并fsimage和编辑日志文件,并将编辑日志大小保留在限制内。它通常在与主NameNode不同的机器上运行,因为其内存要求与主NameNode的顺序相同。
辅助NameNode上的检查点进程的开始由两个配置参数控制:
dfs.namenode.checkpoint.period,默认设置为1小时,指定两个连续检查点之间的最大延迟,
dfs.namenode.checkpoint.txns,默认设置为100万,定义NameNode上的未检查点事务数,这将强制执行紧急检查点,即使尚未达到检查点周期。
辅助NameNode将最新的检查点存储在与主NameNode的目录相同方式构造的目录中。因此,如果必要,检查指向的图像总是准备好被主NameNode读取。
For command usage, see secondarynamenode.
Checkpoint Node
NameNode使用两个文件保留其命名空间:fsimage,它是命名空间的最新检查点;edits,自检查点以来的命名空间更改的日志(日志)。当NameNode启动时,它会合并fsimage和edits journal,以提供文件系统元数据的最新视图。NameNode然后用新的HDFS状态覆盖fsimage并开始一个新的编辑日志。
Checkpoint节点定期创建命名空间的检查点。它从活动的NameNode下载fsimage和编辑,将其本地合并,并将新图像上传回活动的NameNode。Checkpoint节点通常在与NameNode不同的机器上运行,因为它的内存要求与NameNode的顺序相同。Checkpoint节点由配置文件中指定的节点上的bin / hdfs namenode -checkpoint启动。
Checkpoint(或Backup)节点及其附带的Web界面的位置通过dfs.namenode.backup.address和dfs.namenode.backup.http-address配置变量进行配置。
Checkpoint节点上的检查点进程的开始由两个配置参数控制。
dfs.namenode.checkpoint.period,默认设置为1小时,指定两个连续检查点之间的最大延迟
dfs.namenode.checkpoint.txns,默认设置为100万,定义NameNode上的未检查点事务数,这将强制执行紧急检查点,即使尚未达到检查点周期。
Checkpoint节点将最新的检查点存储在与NameNode的目录结构相同的目录中。这样,如果需要,这个检查点图像总是可以被NameNode读取。请参阅导入检查点。
可以在集群配置文件中指定多个检查点节点。
For command usage, see namenode.
Backup Node
备份节点提供与检查点节点相同的检查点功能,以及维护始终与活动NameNode状态同步的文件系统命名空间的内存中最新副本。随着从NameNode接受文件系统编辑的日志流并将其持续到磁盘,Backup节点也将这些编辑应用于内存中自己的命名空间副本,从而创建命名空间的备份。
备份节点不需要从活动的NameNode下载fsimage和edits文件,以便创建检查点,如Checkpoint节点或Secondary NameNode所要求的,因为它已经具有命名空间状态的最新状态在记忆中。备份节点检查点进程更有效,因为它只需要将命名空间保存到本地fsimage文件中并重置修改。
由于备份节点在内存中维护命名空间的副本,因此其RAM要求与NameNode相同。NameNode一次支持一个备份节点。如果备份节点正在使用中,则不会注册检查点节点。将来会支持同时使用多个备份节点。备份节点的配置方式与Checkpoint节点相同。它以bin / hdfs namenode -backup开头。
备份(或检查点)节点及其附带的Web界面的位置通过dfs.namenode.backup.address和dfs.namenode.backup.http-address配置变量进行配置。使用备份节点提供运行NameNode的选项,不带持久存储,将所有命名空间的状态委托给Backup节点。为此,请使用-importCheckpoint选项启动NameNode,并且不会为NameNode配置指定类型为dfs.namenode.edits.dir的持久性存储目录。
有关创建Backup节点和Checkpoint节点的动机的完整讨论see HADOOP-4539. For command usage, see namenode.
HDFS概述(6)————用户手册的更多相关文章
- HDFS概述
		
HDFS概述 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.HDFS产出背景及定义 1>.HDFS产生背景 随着数据量越来越大,在一个操作系统存不下所有的数据,那么就分配 ...
 - HDFS概述(一)
		
HDFS概述(一) 1. HDFS产出的背景及定义 1.1 HDFS产生的背景 随着数据量越来越大,在一个操作系统存不下所有的数据,那么就分配到更多的操作系统管理的磁盘中,但是不方便管理和维护,迫切需 ...
 - HDFS概述和Shell操作
		
大数据技术之Hadoop(HDFS) 第一章 HDFS概述 HDFS组成架构 HDFS文件块大小 第二章 HDFS的Shell操作(开发重点) 1.基本语法 bin/hadoop fs 具体命令 ...
 - HDFS概述(5)————HDFS HA
		
HA With QJM 目标 本指南概述了HDFS高可用性(HA)功能以及如何使用Quorum Journal Manager(QJM)功能配置和管理HA HDFS集群. 本文档假设读者对HDFS集群 ...
 - HDFS概述(4)————HDFS权限
		
概述 Hadoop分布式文件系统(HDFS)的权限模型与POSIX模型的文件和目录权限模型一致.每个文件和目录与所有者和组相关联.该文件或目录将权限划分为所有者的权限,作为该组成员的其他用户的权限.以 ...
 - HDFS概述(3)————HDFS Federation
		
本指南概述了HDFS Federation功能以及如何配置和管理联合集群. 当前HDFS背景 HDFS主要有两层: 1.Namespace (1)包含目录,文件和块. (2)它支持所有命名空间相关的文 ...
 - HDFS概述(1)————HDFS架构
		
概述 Hadoop分布式文件系统(HDFS)是一种分布式文件系统,用于在普通商用硬件上运行.它与现有的分布式文件系统有许多相似之处.然而,与其他分布式文件系统的区别很大.HDFS具有高度的容错能力,旨 ...
 - HDFS概述(2)————Block块大小设置
		
以下内容转自:http://blog.csdn.net/samhacker/article/details/23089157?utm_source=tuicool&utm_medium=ref ...
 - Hadoop之HDFS概述
		
一.HDFS产生背景及定义 1.HDFS产生背景 随着数据量越来越大,在一个操作系统存不下所有的数据,那么就分配到更多的操作系统管理的磁盘中,但是不方便管理和维护,迫切需要一种系统来管理多台机器上的文 ...
 
随机推荐
- c++中string.erase()函数的用法(转)
			
erase函数的原型如下:(1)string& erase ( size_t pos = 0, size_t n = npos );(2)iterator erase ( iterator p ...
 - NPOI  office 组件资料汇总 (excel, word)
			
POI 是一套用Java写成的库,能够帮助开发者在没有安装微软Office的情况下读写Office 的文件,支持的文件格式包括xls, doc, ppt等. NPOI 是POI的.net 版本. 最新 ...
 - java中的ArrayList 使得集合中的对象不重复
			
JAVA中的List接口存放的元素是可以重复的,在这个我重写对象里面的equals()方法,让集合里存放的对象不能重复 首先建一个类,在里面的main()方法中实现 list1中存放的是可以重复对象的 ...
 - NSA武器库知识整理
			
美国国家安全局(NSA)旗下的"方程式黑客组织"(shadow brokers)使用的部分网络武器被公开,其中包括可以远程攻破全球约70%Windows机器的漏洞利用工具. 其中, ...
 - 编辑sass报错:error style.scss (Line 3: Invalid GBK character "\xE5")解决办法
			
cmd.exe /D /C call C:/Ruby23-x64/bin/scss.bat --no-cache --update header.scss:header.css error heade ...
 - 图像处理:卷积模块FPGA 硬件加速
			
本文记录了利用FPGA加速图像处理中的卷积计算的设计与实现.实现环境为Altera公司的Cyclone IV型芯片,NIOS II软核+FPGA架构. 由于这是第一次设计硬件加速模块,设计中的瑕疵以及 ...
 - 自制mpls ldp实验
			
实验步骤 步骤1:完成EIGRP BGP 及宣告配置 步骤2:完成LDP 的配置 过程校验 步骤1:校验和理解LDP 邻居关系的发现和邻接关系的建立 R4#show mpls ldp discover ...
 - Js函数初学者练习(一)switch-case结构实现计算器。
			
前 言 JRedu 给大家介绍一点JS函数的练习题希望初学者多做一些练习能够更好的掌握JS的函数,以及能够提升大家的逻辑思维.(我也是个渣渣希望路过的大神多提建议或意见) 希望能够对大家有所帮助 ...
 - 个人作业3——个人总结(Alpha阶段)
			
个人总结 Alpha阶段总结: 起初关于手机app的开发真的一无所知,选了一条较远的路走(使用 Android Studio 来开发 Android 应用更加方便,而我们选用 Eclipse 开发 A ...
 - 2017春季 JMU 1414软工助教 链接汇总
			
助教自我介绍 学生博客链接和coding链接 [1414软工助教]团队博客汇总 助教总结 评分 个人作业1:四则运算控制台 结对项目1:GUI 个人作业2:案例分析 结对项目2:单元测试 团队作业1: ...