本地模式
在本機(jī)運(yùn)行MapReduce谭跨。在本機(jī)使用多線程的方式來運(yùn)行多個(gè)Task竭翠。
$HADOOP_HOME/etc/hadoop/mapred-site.xml文件中設(shè)置相關(guān)配置(默認(rèn)就是該配置)分预。
<property>
? <name>mapreduce.framework.name</name>
? <value>yarn</value>
</property>
在YARN上運(yùn)行
將MapReduce提交給YARN叮称,由YARN將Job中的多個(gè)task分配到多臺機(jī)器中驹止,啟動container運(yùn)行task。運(yùn)行需要啟動YARN凶赁,YARN由ResourceManager和NodeManager兩組進(jìn)程組成咧栗。
1逆甜、修改 $HADOOP_HOME/etc/hadoop/mapred-site.xml文件虱肄。
<property>
? <name>mapreduce.framework.name</name>
? <value>yarn</value>
</property>
2、修改$HADOOP_HOME/etc/hadoop/yarn-site.xml文件交煞。
<!-- 配置ResourceManager在哪個(gè)機(jī)器啟動 -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>主機(jī)名</value>
</property>
<!-- reducer獲取數(shù)據(jù)的方式 -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
3咏窿、啟動ResourceManager和NodeManager。
啟動ResourceManager:yarn-daemon.sh start resourcemanager素征。
啟動NodeManager:yarn-daemon.sh start nodemanager集嵌。
4萝挤、查看。
通過jps命令查看ResourceManager和NodeManager進(jìn)程是否已經(jīng)開啟根欧。也可以訪問http://ResourceManager所運(yùn)行的機(jī)器主機(jī)名/ip:8088來查看運(yùn)行情況怜珍。
使用方法
可以通過命令:hadoop jar jar包 主類名 參數(shù){多個(gè)輸入目錄,一個(gè)輸出目錄}來提交任務(wù)凤粗。例如:hadoop jar hadoop-mapreduce-examples-2.7.2.jar wordcount /wc2 /wc3(統(tǒng)計(jì)wc2文件夾中文件內(nèi)容的單詞個(gè)數(shù)酥泛,并將結(jié)果放到wc3文件夾下)。
需要注意的是嫌拣,參數(shù)中輸入目錄下的內(nèi)容必須全部是文件柔袁,輸出目錄必須不存在。