1.常用linux命令
top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况
ps-ef |grep redis查看进程状态 ps aux|grep redis
df -h查看磁盘的使用情况
find / -name a.txt查找a.txt文件位置
netstat 显示网络状态
tar -zxvf a.gzip 解压文件
2.脚本模板
启停脚本
#!/bin/bash
case $1 in
echo "启动集群"
"start")
ssh hadoop102 "启动绝对路径"
;;
echo "停止集群"
"stop")
ssh hadoop102 "停止绝对路径"
;;
esac
数仓层级内部数据导入导出脚本
ods>dwd>
dws>ads
ods>dim>
#!/bin/bash
#定义变量 app
#获取时间
#sql="具体的sql(先写一天的,然后在表的名字前面加$app,将时间变成$do_date)"
#执行sql
以后只需要更改sql部分。
1 Hadoop入门
1)hadoop 常用端口号
hdfs 9870 3.x 50070 2.x
MapReduce 8088
historyserver 19888
2)配置文件
2.x core-site.xml yarn-site.xml mapred-site.xml slaves
3.x core-site.xml hdfs-site.xml yarn-site.xml mapred-site.xml workers
2 HDFS
1)hdfs读写流程 笔试题
2) 小文件问题
(1)危害
占namenode元数据内存 无论文件多大,都占用150字节
128g*1024m*1024k*1024b/150b=9亿个小文件
增加切片,进而影响增加maptask个数,增加计算内存
(2)优化手段
har归档 (将大量小文件进行压缩后存为一个文件)
CombineTextInputfomat (改变切片)
jvm重用 hadoop的mapreduce.xml中设置jvm重用次数
(3)hdfs文件大小
2.x 3.x ,块大小128m,本地模式32m ,1.x 64m
hive的块大小256m
块大小取决于网络传输速度
3 MapReduce
shuffle(map的输出以及reduce的输入中间的过程)及其优化
MapReduce的shuffle过程详解(分片、分区、合并、归并。。。)_ASN_forever的博客-CSDN博客_mapreduce的shufflehttps://www.iteye.com/blog/langyu-992916