hdfs的特性、命令、安全模式、基准测试
1.第一点:如何理解hdfs分布式文件系统,每台机器出一块磁盘,凑成一个大的硬盘,大的硬盘的容量来自各个服务器的硬盘容量之和。
你出5毛,我出5毛,大家凑成1块。
2. HDFS 是 Hadoop Distribute File System 的简称,意为:Hadoop 分布式文件系统。是 Hadoop 核心组件之一,作为最底层的分布式存储服务而存在。
3.hdfs的特性:
(1)master/slave架构:namenode是我们的主节点,datanode是我们的从节点
namenode主要管理元数据信息 datanode主要存储各种数据
(2)分块存储
(3)名字空间(NameSpace)
(4)HDFS 会给客户端提供一个统一的抽象目录树,客户端通过路径来访问文件,形如:hdfs://namenode:port/dir-a/dir-b/dir-c/file.data。
(5)Namenode 元数据管理;
(6)Datanode 数据存储;
(7)副本机制;
(8)一次写入,多次读出:频繁的写入会造成元数据的频繁的更新改变,比较麻烦。
3. hdfs常用的操作命令:
hdfs dfs -ls / 查看根路径下面的文件或者文件夹
hdfs dfs -mkdir -p /xx/xxx 在hdfs上面递归的创建文件夹
hdfs dfs -moveFromLocal sourceDir(本地磁盘的文件或者文件夹的路径) destDir(hdfs的路径) (剪切)
hdfs dfs -mv hdfsSourceDir hdfsDestDir(剪切,从hdfs上的一个位置移动到另一个位置)
hdfs dfs -put localDir hdfsDir 将本地文件系统的文件或者文件夹放到hdfs上面去 (复制)
Usage: hdfs dfs -rm [-f] [-r|-R递归] [-skipTrash跳过垃圾桶永久删除] URI [URI ...] 删除hdfs上的一个或多个文件或文件夹。
hdfs dfs -tail [-f] URI (Displays last kilobyte of the file to stdout)
hdfs dfs -appendToFile <localsrc> ... <dst> 将本地系统的一个或多个文件追加到hdfs的一个文件中。
hdfs dfs -cat hdfsFiles 查看一个或多个hdfs的文件内容
hdfs dfs -cp hdfsSourceDIr hdfsDestDir 拷贝文件或者文件夹,从hdfs上的一个位置拷贝到另一个位置
hdfs的权限管理两个命令:
hdfs dfs -chmod -R 777 /xxx
hdfs dfs -chown -R hadoop:hadoop /xxx
hdfs dfs -expunge 清空回收站
2.hdfs高级命令使用:主要就是用于限制某个路径下面的文件的个数,或者限制某个路径下面文件的大小。
hdfs dfs -mkdir -p /user/root/lisi #创建hdfs文件夹
hdfs dfsadmin -setQuota 2 lisi # 给该文件夹下面设置最多上传两个文件,上传文件,发现只能上传一个文件
hdfs dfsadmin -clrQuota /user/root/lisi # 清除文件数量限制
hdfs dfsadmin -setSpaceQuota 4k /user/root/lisi # 限制空间大小4KB
hdfs dfs -put /export/softwares/zookeeper-3.4.5-cdh5.14.0.tar.gz /user/root/lisi
hdfs dfsadmin -clrSpaceQuota /user/root/lisi #清除空间限额
hdfs dfs -count -q -h /user/root/lisi 查看hdfs文件限额数量
注意:hdfs dfs -count -q -h /user/root/lisi 可以简写为hdfs dfs -count -q -h lisi 这里使用了相对路径,
当前登录用户是root,所以当前路径是/user/root/
3. hdfs的安全模式:文件系统只接受读数据请求,而不接受删除、修改等变更请求。hdfs集群刚启动的时候,默认30S钟的时间是出于安全期的,去检测datanode了,只有过了30S之后,集群脱离了安全期,然后才可以对集群进行操作
hdfs dfsadmin -safemode [ enter | leave | get ]
4. hdfs基准测试(压力测试)
测试写入速度:
hadoop jar /export/servers/hadoop-2.6.0-cdh5.14.0/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-2.6.0-cdh5.14.0.jar TestDFSIO -write -nrFiles 10 -fileSize 10MB
完成之后查看写入速度结果,写入速度一般在30M/S左右超不多:
hdfs dfs -text /benchmarks/TestDFSIO/io_write/part-00000
测试读取速度:
hadoop jar /export/servers/hadoop-2.6.0-cdh5.14.0/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-2.6.0-cdh5.14.0.jar TestDFSIO -read -nrFiles 10 -fileSize 10MB
查看读取结果,实际工作当中通过MR读取速度大概在100M/s左右:
hdfs dfs -text /benchmarks/TestDFSIO/io_read/part-00000
清除测试数据:
hadoop jar /export/servers/hadoop-2.6.0-cdh5.14.0/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-2.6.0-cdh5.14.0.jar TestDFSIO -clean
注:在执行命令时的当前路径下,会生成一个测试报告文件:-rw-r--r-- 1 root root 303 May 23 22:06 TestDFSIO_results.log
hdfs的特性、命令、安全模式、基准测试的更多相关文章
- 009 HDFS的shell命令(里面有一个安全模式)
一:dfs的命令 1.所有的领命 2.解释 -appendToFile <localsrc> ... <dst> :追加文件 -checksum <src> . ...
- Hadoop 2.x HDFS新特性
Hadoop 2.x HDFS新特性 1.HDFS联邦 2. HDFS HA(要用到zookeeper等,留在后面再讲) 3.HDFS快照 回顾: HDFS两层模型 Namespa ...
- hadoop系列二:HDFS文件系统的命令及JAVA客户端API
转载请在页首明显处注明作者与出处 一:说明 此为大数据系列的一些博文,有空的话会陆续更新,包含大数据的一些内容,如hadoop,spark,storm,机器学习等. 当前使用的hadoop版本为2.6 ...
- 因磁盘空间不足导致HDFS的NameNode进入安全模式问题记录
因磁盘空间不足导致HDFS的NameNode进入安全模式问题记录,调用API上传及下载文件时报如下错误信息: org.apache.hadoop.ipc.RemoteException(org.apa ...
- hdfs经常使用命令
hadoop hdfs经常使用命令 hadoop fs -ls /user/deploy/recsys/workspace/ouyangyewei 查看ouyangyewei文件夹文件 hadoop ...
- Hadoop HDFS的shell(命令行客户端)操作实例
HDFS的shell(命令行客户端)操作实例 3.2 常用命令参数介绍 -help 功能:输出这个命令参数手册 -ls 功能:显示目录信息 示例: hadoop fs ...
- HDFS中的命令行
HDFS中的命令行 本文介绍了HDFS以命令行执行的时候.几个经常使用的命令行的作用和怎样使用~ 1. fs fs是启动命令行动作,该命令用于提供一系列子命令. 使用形式为hadoop fs –cmd ...
- Hadoop_04_Hadoop 的HDFS客户端shell命令
1.Hdfs shell客户端命令操作: 1.1.查看命令列表:hadoop fs 帮助如下: Usage: hadoop fs [generic options] [-appendToFile &l ...
- 解决因block的损坏而导致hdfs启动后进入安全模式
问题描述: 以单机伪分布式方式安装了hadoop2.7.1,并在该机器上安装了hive1.2.1.首先执行 sbin/start-dfs.sh 启动hdfs服务,然后执行hive,这时hive脚本启动 ...
随机推荐
- 2015年沈阳网赛 Jesus Is Here(DP中的计数问题)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5459 题目描述:给定一个递推得来的字符串,问字符串中不同cff之间的距离之和, 递推规则: s1=c; ...
- Pascal学生管理
program Project2; {$APPTYPE CONSOLE} uses SysUtils; ;M=; type date=record day:..; month:..; year:..; ...
- Ubuntu 12.04 root默认密码? 如何使用root登录? (转载)
转自:http://www.lupaworld.com/article-219280-1.html 在安装Ubuntu 12.04时并没有设置root的密码,登录的时候也没有使用root账户.当我们使 ...
- E20170521-ts
redirect vt. 使改寄,更改(信件等)姓名地址; 改变方向,改变线路; 重新寄送; teletype n. 电传打字机,电报交换机,打字电报通讯; descriptor n. 描述符; ...
- bzoj 3143 [Hnoi2013]游走【高斯消元+dp】
参考:http://blog.csdn.net/vmurder/article/details/44542575 和2337有点像 设点u的经过期望(还是概率啊我也分不清,以下都分不清)为\( x[u ...
- 全选Js
<th><input type="checkbox" value="" id="checkedAll" onclick=& ...
- [TJOI2013]松鼠聚会
Description 有N个小松鼠,它们的家用一个点x,y表示,两个点的距离定义为:点(x,y)和它周围的8个点即上下左右四个点和对角的四个点,距离为1.现在N个松鼠要走到一个松鼠家去,求走过的最短 ...
- _bzoj1012 [JSOI2008]最大数maxnumber【Fenwick Tree】
传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=1012 裸的树状数组. #include <cstdio> #include &l ...
- WebSphere中配置的数据源在Web应用中引用的写法
WebSphere中配置的数据源在Web应用中引用时名称一定要和数据源的JNDI名称保持一致,否则会出现无法找到数据源的错误. 引用WAS的数据源时只需要与JNDI名称保持一致即可. 引用Tomcat ...
- Spring中bean的五个作用域简介(转载)
Spring上个版本的IoC容器支持两个不同的bean作用域(单例与原型).Spring 2.0改进了这一点,不仅提供了一些依赖于Spring部署环境(比如说,在web环境中的request和sess ...