学做蛋糕的网站,wordpress child theme,wordpress分享服务器目录,网络管理系统中 管理对象是指HDFS 操作HDFSWeb Console 网页工具操作NameNode操作SecondaryNameNode 命令行Java API HDFS的原理解析数据上传的过程数据下载的过程 HDFS的高级特性回收站配额Quota名称配额空间配额 快照Snapshot安全模式 SafeMode权限管理#xff1a;类似LinuxHDFS的集群 HDFS的底层原理类似LinuxHDFS的集群 HDFS的底层原理Java程序记得重新修改 操作HDFS
操作HDFS有三种方式分别是 使用Web Console网页工具、命令行、Java API 。
Web Console 网页工具
操作NameNode
NameNode端口50070 访问地址IP/dfshealth.html 在summary中值得关注的是 safemode is off 说明HDFS的安全模式是关闭的如果是打开的那么HDFS是处于只读的状态不能进行操作HDFS。 下面是HDFS启动过程比较重要
操作SecondaryNameNode
端口50090 访问地址Ip:50090/status.html 命令行
1、普通的操作命令hdfs dfs **** -mkdir 在HDFS中创建目录
hdfs dfs -mkdir /aaa
hdfs dfs -mkdir -p /bbb/ccc 如果父目录不存在使用-p参数先创建父目录-ls 查询HDFS的某个目录 -ls -R 查询HDFS的某个目录包含子目录简写-lsr -put 上传数据 -copyFromLocal 上传数据 -moveFromLocal 上传数据本质ctrlx 剪切 -copyToLocal 下载数据 -get 下载数据 -rm 删除目录 -rmr 删除目录包含子目录 -getmerge先把某个目录下的文件合并再下载 demo
[rootbigdata111 ~]# vi student01.txt[rootbigdata111 ~]# vi student02.txt[rootbigdata111 ~]# hdfs dfs -mkdir /students
[rootbigdata111 ~]# hdfs dfs -put student0* /students
[rootbigdata111 ~]# hdfs dfs -ls /students
Found 2 items
-rw-r--r-- 1 root supergroup 19 2020-02-24 10:19 /students/student01.txt
-rw-r--r-- 1 root supergroup 10 2020-02-24 10:19 /students/student02.txt
[rootbigdata111 ~]# hdfs dfs -getmerge /students ./allstudents.txt-cp拷贝 hdfs dfs -cp /input/data.txt /input/data2.txt -mv剪切 -count举例 hdfs dfs -count /students 查看文件的个数 -du类似-count更详细
hdfs dfs -du /students
结果
19 /students/student01.txt
10 /students/student02.txt-text、-cat 查看文本文件的内容
hdfs dfs -cat /students/student01.txtbalancer平衡操作
2、管理的命令hdfs dfsadmin **** -reporthdfs dfsadmin -report
-safemode 安全模式
[rootbigdata111 ~]# hdfs dfsadmin -safemode
Usage: hdfs dfsadmin [-safemode enter | leave | get | wait]
[rootbigdata111 ~]# hdfs dfsadmin -safemode get
Safe mode is OFF
[rootbigdata111 ~]# hdfs dfsadmin -safemode enter
Safe mode is ON
[rootbigdata111 ~]# hdfs dfs -mkdir /xyz
mkdir: Cannot create directory /xyz. Name node is in safe mode.
[rootbigdata111 ~]# hdfs dfsadmin -safemode leave
Safe mode is OFFJava API
操作需要包含的jar包
$HADOOP_HOME/share/hadoop/common/*.jar
$HADOOP_HOME/share/hadoop/common/lib/*.jar
$HADOOP_HOME/share/hadoop/hdfs/*.jar
$HADOOP_HOME/share/hadoop/hdfs/lib/*.jar方式 Java API连接HDFS并创建文件夹 使用Java API 上传下载数据 使用Java API获取HDFS的元信息
HDFS的原理解析
数据上传的过程 数据下载的过程 HDFS的高级特性
回收站
默认回收站是关闭的可以通过在 core-site.xml 中添加 fs.trash.interval 来打开幵配置时间阀值。
propertynamefs.trash.interval/namevalue1440/value
/property可以设置一个时间阈值当回收站里文件的存放时间超过返个阈值就被彻底删除并且释放占用的数据块比如上面就设置了一个1440分钟的阀值。 从回收站里恢复文件
配额Quota
名称配额
名称配额规定的是某个HDFS目录下文件的个数 比如设置名称配额是N表示只能在该目录下存放N-1个文件或者目录
hdfs dfsadmin [-setQuota quota dirname...dirname]
hdfs dfsadmin [-clrQuota dirname...dirname]举例
hdfs dfs -mkdir /t1 设置该目录的名称配额是3所以该目录下只能放两个文件或文件夹。
hdfs dfsadmin -setQuota 3 /t1 空间配额
空间配额规定的是某个HDFS目录下文件的大小 比如设置某个HDFS目录的空间配额是200M只能存放200M以下的文件
hdfs dfsadmin [-setSpaceQuota quota [-storageType storagetype] dirname...dirname]
hdfs dfsadmin [-clrSpaceQuota [-storageType storagetype] dirname...dirname]举例
hdfs dfs -mkdir /t2设置该目录的空间配额是1M 逻辑单位
hdfs dfsadmin -setSpaceQuota 1M /t2上传一个超过1M大小为50M的文件会发生下面的错误
The DiskSpace quota of /t2 is exceeded: quota 1048576 B 1 MB but diskspace consumed 134217728 B 128 MB由于是50M文件占用一个数据块所以会提示128M。
快照Snapshot
一个snapshot(快照)是一个全部文件系统、或者某个目录在某一时刻的镜像。本质就是cp命令 安全模式 SafeMode
安全模式是hadoop的一种保护机制用于保证集群中的数据块的安全性。如果HDFS处于 安全模式则表示HDFS是只读状态。
安全模式的作用当集群启动的时候会首先进入安全模式。当系统处于安全模式时会检查数据块的完整性。数据块是否满足冗余度的要求 假设我们设置的副本数/冗余度即参数dfs.replication是5那么在datanode上就应该有5个副本存在假设只存在3个副本那么比例就是3/50.6。在配置文件hdfs-default.xml中定义了一个最小的副本的副本率0.999。我们的副本率0.6明显小于0.99因此系统会自动的复制副本到其他的dataNode,使得副本率不小于0.999.如果系统中有8个副本超过我们设定的5个副本那么系统也会删除多余的3个副本。
hdfs dfsadmin -safemode get 查看安全模式状态
hdfs dfsadmin -safemode enter 进入安全模式状态
hdfs dfsadmin -safemode leave 离开安全模式权限管理类似Linux
HDFS的集群
集群的两大功能和解决方式 1负载均衡联盟Federation 2失败迁移单点故障HA
注意联盟是HDFS特有的但HA是主从架构共有的 HDFS的底层原理Java程序记得重新修改
1、Java的代理对象Proxy 案例利用Java的代理对象实现数据库的连接池。 1通过连接池返回一个Connection对象 2使用完后connection.close把该连接直接还给数据库 3重写close方法把该连接还给数据库的连接池
准备实验环境MySQL的数据库 如何安装MySQL在Hive的时候再介绍
2、RPC协议remote procedure call远程过程调用