配置概述

hadoop-env.sh

一个可由hadoop脚本调用的bourne shell文件,它制定hadoop要用的JDK环境变量、守护进程JDK选项、pid文件和log文件夹

core-site.xml

指定与hadoop守护进程和客户端相关参数的xml文件

hdfs-site.xml

指定HDFS守护进程和客户端要用的参数的xml文件

mapred-site.xml

制定MapReduce守护进程和客户端要用的参数xml文件

log4j.properties

包含所有日志配置信息的java属性文件

master(可选的)

在新行中列出运行NameNode的机器,只会被start-*.sh类的辅助脚本使用

slaves(可选的)

在新行中列出运行DataNode/tasktracker进程对的服务器名,只会被start-*.sh类的辅助脚本使用

dfs.include

在新行中列出允许连接NameNode的服务器名

dfs.exclude

在新行中列出不允许连接NameNode的服务器名

识别和定位

fs.defaule.name(core-site.xml)

定义客户端所使用的默认文件系统的URL。默认值为file:/// 这意味着客户访问的是本地Linux文件系统。

但是生产集群HDFS时,希望这个参数来替代   hdfs://hostname:port 这里hostname和port分别代表NameNode守护程序所在的机器和监听的端口。

同时还有这两个作用:通知NameNode需要绑定的IP地址、端口号。

          指定DataNode心跳需要发送的目标机器端口。

用到该参数的结点 namenode datanode secondnamenode jt tt 客户端。

dfs.name.dir

定义了一个用逗号分隔的不同的本地文件路径,NameNode要在这些路径上保存一个HDFS文件元数据的备份。

元数据很重要,建议定义两个内部硬盘和一个低延迟的高可靠性的NFS挂载。

元数据的完整备份在不同的文件路径都会保存,因此硬盘不需要选择RAID。也有的管理员使用了RAID并放弃定义多个路径。

使用者 NameNode

dfs.data.dir

定义了DataNode在哪儿存放HDFS数据块,用逗号作为分隔符,但是不会在每个指定的路径都做镜像数据,在分配数据块空间时,DataNode会议轮询的方式,在所有的磁盘驱动器间均衡处理。

物理磁盘的丢失影响并不大,因为所有数据都会在集群的其他机器上备份。

使用者 DataNode

fs.checkpoint.dir

次NameNode在checkpoint操作时,使用这些路径文件来保存元数据,如果提供多个路径会有多个镜像。

优化与调整

io.file.buffer.size(core-site.xml)

设置缓存的大小。

较大的缓存可以提供更高效的数据传输,意味着更大的内存消耗和延迟。

参数设置为系统页面大小的倍数,以byte为单位。默认值4KB。

可以设置为64KB(65536byte)

参考值:65536 使用者:客户端、守护进程

dfs.balance.bandwidthPerSec

HDFS平衡器检测集群中使用过度或者使用不足的DataNode,并在这些DataNode之间移动数据块保证负载均衡。

参数定义了每个DataNode平衡操作所允许的最大使用带宽,单位byte

参数在守护进程启动时就读入,不能在平衡器运行时修改。

使用者:DataNode

dfs.block.size

定义了所有新建文件的默认数据块大小。参数的设置不会影响系统中已经存在的文件。

单位byte 默认值:67 108 864 即64MB。//现在不确定是多少

对很多用例而言,134 217 728(128MB)更合适。

数据块大小会显著影响MapReduce作业的效率

使用者:客户端

dfs.DataNode.du.reserved

定义了每个dfs.data.dir定义的磁盘空间需要保留的大小

单位byte,默认0,参考值:10 737 418 240(10GB)

使用者:DataNode

dfs.NameNode.handler.count

NameNode有一个工作线程池用来处理客户端的远程过程调用以及集群守护进程的调用。

处理程序(工作线程)数量越多意味着要更大的池子来处理来自不同DataNode的并发心跳以及客户端并发的元数据操作。

对大集群或者有大量客户端的集群,增大该参数。

默认值10;

设置值的原则是将其设为集群大小的自然对数乘以20,即20*logN, N为集群大小。

使用者:NameNode

dfs.DataNode.failed.volumes.tolerated

当DataNode的任何一个本地磁盘出现故障,默认整个DataNode失效。

该承诺书定义了整个DataNode声明失效前允许多少个磁盘出现故障。

使用者:DataNode

dfs.hosts

含有DataNode主机名表,确认允许连接并加入集群的DataNode,其他的DataNode不允许加入。

格式:换行符分隔主机名或者IP地址

使用者:NameNode

dfs.host.exclude

类似于dfs.hosts,把指定节点排除在外。

使用者:NameNode

fs.trash.interval

回收站功能。当功能被启用,文件被移动到用户HDFS主目录的名为.Trash目录下,来保留被删除文件而不是立即删除。

参考值:1440(24小时),使用者:NameNode、客户端

HDFS配置文件内容解释的更多相关文章

  1. linux 里 /etc/passwd 、/etc/shadow和/etc/group 文件内容解释

    •/etc/passwd文件用于存放用户账户信息,每行代表一个账户,每个账户的各项信息用冒号分割,例如: root:x:::root:/root:/bin/bash username:password ...

  2. my.cnf 配置文件参数解释

    my.cnf 配置文件参数解释: #*** client options 相关选项 ***# #以下选项会被MySQL客户端应用读取.注意只有MySQL附带的客户端应用程序保证可以读取这段内容.如果你 ...

  3. 分布式文件存储FastDFS(七)FastDFS配置文件具体解释

    配置FastDFS时.改动配置文件是非常重要的一个步骤,理解配置文件里每一项的意义更加重要,所以我參考了大神的帖子,整理了配置文件的解释.原帖例如以下:http://bbs.chinaunix.net ...

  4. [置顶] HDFS文件内容追加(Append)

    HDFS设计之处并不支持给文件追加内容,这样的设计是有其背景的(如果想了解更多关于HDFS的append的曲折实现,可以参考<File Appends in HDFS>:http://bl ...

  5. 【HDFS API编程】查看HDFS文件内容、创建文件并写入内容、更改文件名

    首先,重点重复重复再重复: /** * 使用Java API操作HDFS文件系统 * 关键点: * 1)创建 Configuration * 2)获取 FileSystem * 3)...剩下的就是 ...

  6. java读取配置文件内容

    利用com.typesafe.config包实现 <dependency> <groupId>com.typesafe</groupId> <artifact ...

  7. CSharp读取json配置文件内容

    步骤 读取配置文件转换成字符串,代码如下 string contents = System.IO.File.ReadAllText("config.json"); 注意:该语句会抛 ...

  8. Python+selenium之读取配置文件内容

    Python+selenium之读取配置文件内容 Python支持很多配置文件的读写,此例子中介绍一种配置文件的读取数据,叫ini文件,python中有一个类ConfigParser支持读ini文件. ...

  9. Linux下查看进程的命令输出的内容解释

    Linux下查看进程的命令输出的内容解释 ps (process status) ps -e 或者ps -A (-e和-A完全一样) PID           TTY         TIME   ...

随机推荐

  1. Hibernate学习笔记--使用ThreadLocal

    参考资料: http://blog.sina.com.cn/s/blog_7ffb8dd5010146i3.html http://lavasoft.blog.51cto.com/62575/5192 ...

  2. 怎么通过网站优化来增强SEO效果?

    真正好的网站优化不应该针对哪一个搜索引擎,而应该关注用户的需求.搜索引擎把这这用户指标权重提升,实际上也是希望把更多的精力集中在用户体验的提升上面.那么,这些用户指标应该怎样提升呢?方法多种多样,下面 ...

  3. Codeforces 449D Jzzhu and Numbers

    http://codeforces.com/problemset/problem/449/D 题意:给n个数,求and起来最后为0的集合方案数有多少 思路:考虑容斥,ans=(-1)^k*num(k) ...

  4. Linq to object 技巧、用法集锦

    一.一个字符串,一个字符串数组.判断字符串数组里的元素出现在字符串中的有几个. class Program { static void Main(string[] args) { string str ...

  5. Powershell 条件操作符

    Powershell 中的比较运算符-eq :等于-ne :不等于-gt :大于-ge :大于等于-lt :小于-le :小于等于-contains :包含-notcontains :不包含 进行比较 ...

  6. bzoj2325 [ZJOI2011]道馆之战

    Description 口袋妖怪(又名神奇宝贝或宠物小精灵)红/蓝/绿宝石中的水系道馆需要经过三个冰地才能到达馆主的面前,冰地中的每一个冰块都只能经过一次.当一个冰地上的所有冰块都被经过之后,到下一个 ...

  7. Go语言的构建方法总结

    趁着近期要换工作的空闲时间,看了一下Go语言,与C++相比,Go语言的确在不少地方轻便了不少,例如:增加了内置的字符串类型.多个返回值.支持协程.简单的构建方法等等.使得在生产效率方面有了不少的提高. ...

  8. ZOJ2317-Nice Patterns Strike Back:矩阵快速幂,高精度

    Nice Patterns Strike Back Time Limit: 20000/10000MS (Java/Others)Memory Limit: 128000/64000KB (Java/ ...

  9. 【剑指offer】面试题40:数组中只出现一次的数字

    题目: 一个整型数组里除了两个数字之外,其他的数字都出现了两次.请写程序找出这两个只出现一次的数字. 思路: 因为只有两个只出现一次的数字,所以所有数字进行异或之后得到值res一定不是0.这样,res ...

  10. poj 1486 Sorting Slides(二分图匹配的查找应用)

    Description Professor Clumsey is going to give an important talk this afternoon. Unfortunately, he i ...