hadoop压力测试与命令

HDFS的命令行使用

1.ls

格式:hdfs dfs -ls URL
作用:类似linux的ls命令,显示文件列表

hdfs dfs -ls /

2.lsr

格式:hdfs dfs -ls-R URL
作用:在整个目录下递归执行ls,与linux中的ls-R类似

hdfs dfs -ls -R /

3.mkdir

格式:hdfs dfs [-p] -mkdir
作用:以中的URL作为参数,创建目录、使用-p参数可以递归创建目录

hdfs dfs -mkdir /dir1
#dir9999不存在
hdfs dfs -mkdir -p /dir9999/dir1

4.put

格式:hdfs dfs -put …
作用:将单个的源文件src或者多个源文件srcs从本地文件系统拷贝到目标文件系统中(对应的路径)。也可以从标准输入中读取输入,写入目标文件系统

hdfs dfs -put -rooot/a.txt /dir1

5.moveFromLocal

格式:hdfs dfs -moveFromLocal
作用:与put命令类似,但是源文件localsrc拷贝之后自身被删除

hdfs dfs -moveFromLocal a.txt /dir2

6.moveToLocal

7.get

格式:hdfs dfs -get [-ignorecrc] [-crc]
作用:将文件拷贝到本地文件系统。CRC校验失败的文件通过-ignorecrc选项拷贝。文件和CRC校验和可以用个-CRC选项拷贝

hdfs dfs -get /dir2/a.txt ./

8.mv

格式:hdfs dfs -mv URI
作用:将hdfs上的文件从原来路径移动到目标路径(移动之后文件删除),该命令不能跨文件系统。

hdfs dfs -my /dir2/a.txt  /dir1

9.rm

格式:hdfs dfs -rm [-r] [-skipTrash] URL [URL…]
作用:此命令只删除文件和空目录。
如果指定-skipTrash ,跳过回收站
-r 删除目录

hdfs dfs -rm -r /dir2

10.cp

格式:hdfs dfs -cp URL [URL…]
作用:将文件拷贝到目标路径中,如果为目录,可以将多个文件拷贝到该目录中
-f
选项覆盖目标,如果它已经存在
-p
选项将保留文件属性(时间戳,所有权,许可,ACL,XAttr)

hdfs dfs -cp /dir1/a.txt /dir2

11.cat

格式:hdfs dfs -cat URL [URL…]
作用:

hdfs dfs -cat /dir1/a.txt

12.chmod

格式:hdfs dfs -chmod [-R] URL [URL … ]
作用:作用改变文件权限,如果使用
-R 对整个目录递归执行

777把所有权限打开

hdfs dfs -chmod -R 777 /dir1/a.txt

13.chown

格式:hdfs dfs -chown [-R] URL [URL … ]
作用:更改所属用户和用户组。
-R 对整个目录递归执行

linux 添加用户


useradd hadoop
passwd hadoop
hdfs dfs -chown hadoop:hadoop /dir1/a.txt

14.appendToFile

格式:hdfs dfs -appendToFile …
作用:追加一个或者多个文件到hdfs指定文件中,也可以从命令行读取输入。

hdfs dfs -appendToFile  ./core-site.xml ./hdfs-site.xml  /dir1/big.xml

hdfs的高级使用命令

hdfs文件限额配置,限制用户的文件个数,文件大小。类似百度网盘

hdfs dfs -count -q -h dir  #查询配额信息 绝对路径
hdfs dfs -count -q -h /user/root/dir

hdfs数量限额

hdfs dfs -mkdir -p /user/root/dir    #创建hdfs文件夹
hdfs dfsadmin -setQuota 2 dir #给该文件夹下面设置最多上传两个文件,发现只能上传一个文件。

hdfs dfsadmin -clrQuota /user/root/dir #清除文件数量限制

空间大小限额

block x3

hdfs dfsadmin -setSpaceQuota 4k /user/root/dir 限制空间大小4kb
hdfs dfs -put /root/a.txt /dir

生成任意大小文件的命令

dd if =/dev/zeroof=1.txt bs=1M count=2 #生成2M文件
dd if=/dev/zero of=1.txt bs=129M count=1

清除空间配额限制

hdfs dfsadmin -clrSpaceQuota /user/root/dir

hdfs安全模式

当有节点挂掉,会自动从其他结点复制
安全模式检查文件完整性,只接受数据请求,不接受删除和修改请求。

hdfs dfsadmin -safemode get
hdfs dfsadmin -safemode enter
hdfs dfsadmin -safemode leave

hdfs 基准测试

测试写入速度

/export/servers/hadoop-2.7.5/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-2.7.5.jar

hadoop jar /export/servers/hadoop-2.7.5/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-2.7.5.jar TestDFSIO -write -nrFiles 3 -fileSize 10MB

浏览器界面、benchmark会有测试报告

测试读取速度

hadoop jar /export/servers/hadoop-2.7.5/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-2.7.5.jar TestDFSIO -read -nrFiles 3 -fileSize 10MB

清除测试数据

hadoop jar /export/servers/hadoop-2.7.5/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-2.7.5.jar TestDFSIO -clean

fsimage:元数据镜像
edits:纪录最近一段时间的操作日记 内存中
元数据信息配置在hdfs-site.xml

pwd:/export/servers/hadoop-2.7.5/etc/hadoop/hdfs-site.xml

元数据镜像查看

cd /export/servers/hadoop-2.7.5/hadoopDatas/namenodeDatas/current
hdfs oiv -i fsimage -p XML-o myfsimage.xml
-i 读入数据
-p 指定解析文件类型
-o 存储文件

edits中的文件信息查看

cd  /export/servers/hadoop-2.7.5/hadoopDatas/nn/edits
hdfs oev hdfs oiv -i edits -p XML-o myedits.xml

SecondarNameNode 会自动将edits写入fsimage

配置 SecondaryNameNode

配置SecondarNameNode 在conf-masters中指定

在masters指定的机器上,修改hdfs-site.xml

<property>
  <name>dfs.http.address</name>
  <value>host:50070</value>
</property>

多久将fsimage和edits 合并

修改 core-site.xml, 这一步不做配置保持默认也可以

<!-- 多久记录一次 HDFS 镜像, 默认 1小时 -->
<property>
  <name>fs.checkpoint.period</name>
  <value>3600</value>
</property>
<!-- 一次记录多大, 默认 64M -->
<property>
  <name>fs.checkpoint.size</name>
  <value>67108864</value>
</property>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值