hadoop基础知识点学习-2

1. YARN部署

参考官方文档:

https://hadoop.apache.org/docs/r2.10.0/hadoop-project-dist/hadoop-common/SingleCluster.html

  • 1.1 配置 etc/hadoop/mapred-site.xml

      <configuration>
      	<property>
      		<name>mapreduce.framework.name</name>
     	 		<value>yarn</value>
      	</property>
      </configuration>
    
  • 1.2 配置 etc/hadoop/yarn-site.xml:

      <configuration>
      	<property>
      		<name>yarn.nodemanager.aux-services</name>
     	 		<value>mapreduce_shuffle</value>
      	</property>
      	<property>
      		<name>yarn.resourcemanager.webapp.address</name>
      		<value>hadoop001:7776</value>
      	</property>
      </configuration>
    

8088 端口暴露外网,会有病毒感染风险,例如挖矿程序、计算比特币。

  • 1.3 启动 yarn

cd /home/hadoop/app/hadoop/sbin

./sbin/start-yarn.sh

访问 http://localhost:7776/ 查看ui界面

2. 词频统计

  • 2.1 在HDFS上创建文件夹

hdfs dfs -mkdir /wordcount2

存储需要计算的日志文件

hdfs dfs -mkdir /wordcount2/input/

将本地文件全部上传到 hdfs -> /wordcount2/input/ 下

hdfs dfs -put * /wordcount2/input/

查看 hdfs 上的/wordcount2/input/

hdfs dfs -ls /wordcount2/input/

  • 2.2 执行 mapreduce计算任务

hadoop jar
./share/hadoop/mapreduce2/hadoop-mapreduce-examples-2.6.0-cdh5.16.2.jar
wordcount /wordcount2/input/ /wordcount2/output1/

  • 2.3 查看计算结果

hdfs dfs -ls /wordcount2/output1/

/wordcount2/output1/_SUCCESS

/wordcount2/output1/part-r-00000

mapreduce跑完结束,文件的个数=reduce由什么决定,当前是1

hdfs dfs -cat /wordcount2/output1/part-r-00000

a       4
ab      1
b       1
c       3
data    1
jepson  3
ruoze   3

3. jps命令

  • 3.1 查看jps位置

which jps

/usr/java/jdk1.8.0_181/bin/jps
  • 3.2 使用 (在任意目录下,前提需要配置好java环境)

jps

21712 DataNode
21585 NameNode
23989 ResourceManager
29877 Jps
24094 NodeManager
21871 SecondaryNameNode
  • 3.3 对应的进程标识文件存储在哪

/tmp/hsperfdata_hadoop

cd ${HADOOP_HOMW}/tmp/hsperfdata_hadoop

ll

mv 21712 21712.bak

查看DataNode进程详细信息

ps -ef|grep DataNode

jps

发现没有DataNode

21585 NameNode
23989 ResourceManager
30358 Jps
24094 NodeManager
21871 SecondaryNameNode
  • 3.4 -- process information unavailable

jps

21712 -- process information unavailable
31713 Jps
23989 -- process information unavailable
  • 3.5 查看相应进程信息

ps -ef|grep 23989

root     31791 31644  0 22:11 pts/2    00:00:00 grep --color=auto 23989

ps -ef|grep 21712

文件被删除,不影响进程的重启

4. pid文件

  • 4.1 存储位置 /tmp

      -rw-rw-r-- 1 hadoop hadoop   4 May  9 22:16 hadoop-hadoop-datanode.pid
      -rw-rw-r-- 1 hadoop hadoop   4 May  9 22:16 hadoop-hadoop-namenode.pid
      -rw-rw-r-- 1 hadoop hadoop   5 May  9 22:16 hadoop-hadoop-secondarynamenode.pid
    
  • 4.2 维护进程的pid 写死的

cat hadoop-hadoop-namenode.pid

792

  • 4.3 文件被删除,会影响进程的重启

      进程启动,pid文件写入进程的pid数字
      进程关闭时,从pid文件读出pid数字,然后kill -9 pid
    
  • 4.4 生产上 pid文件真的可以放心的丢在/tmp维护吗?

      Linux的/tmp 会有30天的默认删除机制 
    
  • 4.5 如何修改

hadoop-env.sh脚本

	总结:pid文件生产不要丢在/tmp目录
  	要知道是影响进程的启动停止 

5. 块 block

  • 5.1 解释

      一缸水 260ml
      瓶子 规格 128ml
    
      260/128=2...4ml
      128ml
      128ml
      4ml
    
  • 5.2 HDFS

      HDFS 存储大文件是利好,存储小文件是损害自己的 
      适合存储大文件 不适合小文件,不代表不能存储小文件
    
      mv  260m文件
      上传到hdfs,会把文件切割成块 dfs.blocksize 134217728 =128M
      128m
      128m
      4m
    
      3个块
    
      伪分布式节点 1节点 副本数 dfs.replication 1
      生产上HDFS集群的 DN肯定大于>=3台   dfs.replication=3
      DN1          DN2   DN5  DN10
      128m b1            b1   b1
      128m b2      b2         b2
      4m           b3    b3   b3
    
      通过设置副本数 来让文件存储在大数据HDFS平台上有容错保障
      
    
      为什么由64M--》128M
      mv  260m文件
      260/64=4...4M
      b1 64m
      b2 64m
      b3 64m
      b4 64m
      b5 4m
      5个块
    
      260/128=2...4M
      128m
      128m
      4m
      3个块 
    
    
      副本数3:存储实际大小=文件大小*3=260*3=780m 存储空间
    
      5个块的元数据信息维护 是不是 比3个块的元数据的信息维护要多,
      维护重  累--》namenode
    
  • 5.3 规避小文件

      如何规避 小文件
      数据传输到hdfs之前 就合并
      数据已经在hdfs上,就是定时  业务低谷的 去合并冷文件
    
        /2020/10/10
       /2020/10/11
       /2020/10/12  当前时间 
    
      20号 14号的文件
      21号 15号的文件
    
      一天卡一天
    
    
      10m以下的文件 小文件 
      10m 10m 10m ....10m 12个=120m
      10m 10m 10m ....10m 13个=130m 
      合并 120m文件
    
      128m  真正合并就超了 变为129m--》2个块  128m  1m 
    
posted @ 2020-05-10 12:17  Master_s  阅读(77)  评论(0编辑  收藏  举报