当前位置: Oracle DBA培训网-优技培训 >> Hadoop大数据 > Hadoop培训教程 >

Hadoop基础教程:Hadoop配置文件

Hadoop基础教程:Hadoop配置文件

Hadoop基础教程:Hadoop配置文件介绍,在Hadoop中,Common、HDFS和MapReduce各有对应的配置文件,用于保存对应模块中可配置的参数。这些配置文件均为XML格式且由两部分构成:系统默认配置文件和管理员自定义配置文件。

其中,系统默认配置文件分别是core-default.xml、hdfs-default.xml和mapred-default.xml,它们包含了所有可配置属性的默认值。而管理员自定义配置文件分别是core-site.xml、hdfs-site.xml和mapred-site.xml。它们由管理员设置,主要用于定义一些新的配置属性或者覆盖系统默认配置文件中的默认值。通常这些配置一旦确定,便不能被修改(如果想修改,需重新启动Hadoop)。需要注意的是,core-default.xml和core-site.xml属于公共基础库的配置文件,默认情况下,Hadoop总会优先加载它们。

在Hadoop中,每个配置属性主要包括三个配置参数:name、value和description,分别表示属性名、属性值和属性描述。其中,属性描述仅仅用来帮助用户理解属性的含义,Hadoop内部并不会使用它的值。此外,Hadoop为配置文件添加了两个新的特性:final参数和变量扩展。

final参数:如果管理员不想让用户程序修改某些属性的属性值,可将该属性的final参数置为true,比如:

mapred.map.tasks.speculative.execution true true

管理员一般在XXX-site.xml配置文件中为某些属性添加final参数,以防止用户在应用程序中修改这些属性的属性值。

变量扩展:当读取配置文件时,如果某个属性存在对其他属性的引用,则Hadoop首先会查找引用的属性是否为下列两种属性之一。如果是,则进行扩展。

其他已经定义的属性。

Java中System.getProperties()函数可获取属性。

比如,如果一个配置文件中包含以下配置参数:

  1. <property> 
  2.   <name>hadoop.tmp.dir</name> 
  3.   <value>/tmp/hadoop-${user.name}</value> 
  4.   </property> 
  5. <property> 
  6.   <name>mapred.temp.dir</name> 
  7.   <value>${hadoop.tmp.dir}/mapred/temp</value> 
  8. </property> 

hadoop.tmp.dir /tmp/hadoop-${user.name} mapred.temp.dir ${hadoop.tmp.dir}/mapred/temp

则当用户想要获取属性mapred.temp.dir的值时,Hadoop会将hadoop.tmp.dir解析成该配置文件中另外一个属性的值,而user.name则被替换成系统属性user.name的值。

技术沙龙MORE+

Oracle技术沙龙:【数据保护顶尖技术-MAA】首次全国首播12c MAA技术 云数据库加上MAA技术组成最豪华的技...
Oracle技术沙龙第49期:【Oracle 数据库云技术分享】Oracle技术沙龙第49期:【Oracle 数据库云技术分享】本次技术沙...
Oracle技术沙龙第48期:【Oracle 12c RAC安装】小编:今天讲什么内容呢?以后有什么用呢? 大师:今天讲的是12c...
我要参加技术沙龙

关闭