logo资料库

04_尚硅谷大数据技术之Hadoop(HDFS).docx

第1页 / 共51页
第2页 / 共51页
第3页 / 共51页
第4页 / 共51页
第5页 / 共51页
第6页 / 共51页
第7页 / 共51页
第8页 / 共51页
资料共51页,剩余部分请下载后查看
第1章 HDFS概述
1.1 HDFS产出背景及定义
1.2 HDFS优缺点
1.3 HDFS组成架构
1.4 HDFS文件块大小(面试重点)
第2章 HDFS的Shell操作(开发重点)
第3章 HDFS客户端操作(开发重点)
3.1 HDFS客户端环境准备
3.2 HDFS的API操作
3.2.1 HDFS文件上传(测试参数优先级)
3.2.2 HDFS文件下载
3.2.3 HDFS文件夹删除
3.2.4 HDFS文件名更改
3.2.5 HDFS文件详情查看
3.2.6 HDFS文件和文件夹判断
3.3 HDFS的I/O流操作
3.3.1 HDFS文件上传
3.3.2 HDFS文件下载
3.3.3 定位文件读取
第4章 HDFS的数据流(面试重点)
4.1 HDFS写数据流程
4.1.1 剖析文件写入
4.1.2 网络拓扑-节点距离计算
4.1.3 机架感知(副本存储节点选择)
4.2 HDFS读数据流程
第5章 NameNode和SecondaryNameNode(面试开发重点)
5.1 NN和2NN工作机制
5.2 Fsimage和Edits解析
5.3 CheckPoint时间设置
5.4 NameNode故障处理
5.5 集群安全模式
5.6 NameNode多目录配置
第6章 DataNode(面试开发重点)
6.1 DataNode工作机制
6.2 数据完整性
6.3 掉线时限参数设置
6.4 服役新数据节点
6.5 退役旧数据节点
6.5.1 添加白名单
6.5.2 黑名单退役
6.6 Datanode多目录配置
第7章 HDFS 2.X新特性
7.1 集群间数据拷贝
7.2 小文件存档
7.3 回收站
7.4 快照管理
第8章 HDFS HA高可用
8.1 HA概述
8.2 HDFS-HA工作机制
8.2.1 HDFS-HA工作要点
8.2.2 HDFS-HA自动故障转移工作机制
8.3 HDFS-HA集群配置
8.3.1 环境准备
8.3.2 规划集群
8.3.3 配置Zookeeper集群
8.3.4 配置HDFS-HA集群
8.3.5 启动HDFS-HA集群
8.3.6 配置HDFS-HA自动故障转移
8.4 YARN-HA配置
8.4.1 YARN-HA工作机制
8.4.2 配置YARN-HA集群
8.5 HDFS Federation架构设计
尚硅谷大数据技术之 Hadoop(HFDS 文件系统) ——————————————————————————— —— 尚硅谷大数据技术之 Hadoop(HDFS) (作者:尚硅谷大数据研发部) 版本:V2.0 第 1 章 HDFS 概述 1.1 HDFS 产出背景及定义 1.2 HDFS 优缺点 更多 Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
尚硅谷大数据技术之 Hadoop(HFDS 文件系统) ——————————————————————————— —— 1.3 HDFS 组成架构 更多 Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
尚硅谷大数据技术之 Hadoop(HFDS 文件系统) ——————————————————————————— —— 1.4 HDFS 文件块大小(面试重点) 更多 Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
尚硅谷大数据技术之 Hadoop(HFDS 文件系统) ——————————————————————————— —— 第 2 章 HDFS 的 Shell 操作(开发重点) 1.基本语法 bin/hadoop fs 具体命令 OR bin/hdfs dfs 具体命令 dfs 是 fs 的实现类。 2.命令大全 [-p] ] [-ignoreCrc] [atguigu@hadoop102 hadoop-2.7.2]$ bin/hadoop fs [-appendToFile ... ] [-cat [-ignoreCrc] ...] [-checksum ...] [-chgrp [-R] GROUP PATH...] [-chmod [-R] PATH...] [-chown [-R] [OWNER][:[GROUP]] PATH...] [-copyFromLocal [-f] [-p] ... ] [-copyToLocal [-count [-q] ...] [-cp [-f] [-p] ... ] [-createSnapshot []] [-deleteSnapshot ] [-df [-h] [ ...]] [-du [-s] [-h] ...] [-expunge] [-get [-p] [-ignoreCrc] [-crc] ... ] [-getfacl [-R] ] [-getmerge [-nl] ] [-help [cmd ...]] [-ls [-d] [-h] [-R] [ ...]] [-mkdir [-p] ...] [-moveFromLocal ... ] [-moveToLocal ] [-crc] ... 更多 Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
尚硅谷大数据技术之 Hadoop(HFDS 文件系统) ——————————————————————————— —— ]] [-mv ... ] [-put [-f] [-p] ... ] [-renameSnapshot ] [-rm [-f] [-r|-R] [-skipTrash] ...] [-rmdir [--ignore-fail-on-non-empty] ...] [-setfacl [-R] [{-b|-k} {-m|-x } ]|[--set [-setrep [-R] [-w] ...] [-stat [format] ...] [-tail [-f] ] [-test -[defsz] ] [-text [-ignoreCrc] ...] [-touchz ...] [-usage [cmd ...]] 3.常用命令实操 (0)启动 Hadoop 集群(方便后续的测试) [atguigu@hadoop102 hadoop-2.7.2]$ sbin/start-dfs.sh [atguigu@hadoop103 hadoop-2.7.2]$ sbin/start-yarn.sh (1)-help:输出这个命令参数 [atguigu@hadoop102 hadoop-2.7.2]$ hadoop fs -help rm (2)-ls: 显示目录信息 [atguigu@hadoop102 hadoop-2.7.2]$ hadoop fs -ls / (3)-mkdir:在 HDFS 上创建目录 [atguigu@hadoop102 /sanguo/shuguo hadoop-2.7.2]$ hadoop fs -mkdir -p (4)-moveFromLocal:从本地剪切粘贴到 HDFS [atguigu@hadoop102 hadoop-2.7.2]$ touch kongming.txt [atguigu@hadoop102 hadoop -moveFromLocal ./kongming.txt /sanguo/shuguo hadoop-2.7.2]$ (5)-appendToFile:追加一个文件到已经存在的文件末尾 fs [atguigu@hadoop102 hadoop-2.7.2]$ touch liubei.txt [atguigu@hadoop102 hadoop-2.7.2]$ vi liubei.txt 输入 san gu mao lu [atguigu@hadoop102 liubei.txt /sanguo/shuguo/kongming.txt hadoop-2.7.2]$ hadoop fs -appendToFile (6)-cat:显示文件内容 [atguigu@hadoop102 /sanguo/shuguo/kongming.txt hadoop-2.7.2]$ hadoop fs -cat (7)-chgrp 、-chmod、-chown:Linux 文件系统中的用法一样,修改文件所属权限 [atguigu@hadoop102 hadoop-2.7.2]$ hadoop fs /sanguo/shuguo/kongming.txt hadoop [atguigu@hadoop102 /sanguo/shuguo/kongming.txt atguigu:atguigu hadoop-2.7.2]$ (8)-copyFromLocal:从本地文件系统中拷贝文件到 HDFS 路径去 -chmod fs 666 -chown [atguigu@hadoop102 hadoop-2.7.2]$ hadoop fs -copyFromLocal README.txt / 更多 Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
尚硅谷大数据技术之 Hadoop(HFDS 文件系统) ——————————————————————————— —— (9)-copyToLocal:从 HDFS 拷贝到本地 [atguigu@hadoop102 /sanguo/shuguo/kongming.txt ./ hadoop-2.7.2]$ hadoop fs -copyToLocal (10)-cp :从 HDFS 的一个路径拷贝到 HDFS 的另一个路径 [atguigu@hadoop102 /sanguo/shuguo/kongming.txt /zhuge.txt hadoop-2.7.2]$ (11)-mv:在 HDFS 目录中移动文件 hadoop fs -cp [atguigu@hadoop102 hadoop-2.7.2]$ hadoop fs -mv /zhuge.txt /sanguo/shuguo/ (12)-get:等同于 copyToLocal,就是从 HDFS 下载文件到本地 [atguigu@hadoop102 /sanguo/shuguo/kongming.txt ./ hadoop-2.7.2]$ hadoop fs -get (13)-getmerge:合并下载多个文件,比如 HDFS 的目录 /user/atguigu/test 下有多个文 件:log.1, log.2,log.3,... [atguigu@hadoop102 hadoop-2.7.2]$ /user/atguigu/test/* ./zaiyiqi.txt (14)-put:等同于 copyFromLocal hadoop fs -getmerge [atguigu@hadoop102 hadoop-2.7.2]$ hadoop fs -put ./zaiyiqi.txt /user/atguigu/test/ (15)-tail:显示一个文件的末尾 [atguigu@hadoop102 /sanguo/shuguo/kongming.txt hadoop-2.7.2]$ (16)-rm:删除文件或文件夹 [atguigu@hadoop102 /user/atguigu/test/jinlian2.txt hadoop-2.7.2]$ (17)-rmdir:删除空目录 hadoop fs -tail hadoop fs -rm [atguigu@hadoop102 hadoop-2.7.2]$ hadoop fs -mkdir /test [atguigu@hadoop102 hadoop-2.7.2]$ hadoop fs -rmdir /test (18)-du 统计文件夹的大小信息 hadoop fs -du -s -h hadoop-2.7.2]$ [atguigu@hadoop102 /user/atguigu/test 2.7 K /user/atguigu/test [atguigu@hadoop102 hadoop-2.7.2]$ /user/atguigu/test 1.3 K /user/atguigu/test/README.txt 15 /user/atguigu/test/jinlian.txt 1.4 K /user/atguigu/test/zaiyiqi.txt hadoop fs -du -h (19)-setrep:设置 HDFS 中文件的副本数量 [atguigu@hadoop102 /sanguo/shuguo/kongming.txt hadoop-2.7.2]$ hadoop fs -setrep 10 图 3-3 HDFS 副本数量 更多 Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
尚硅谷大数据技术之 Hadoop(HFDS 文件系统) ——————————————————————————— —— 这里设置的副本数只是记录在 NameNode 的元数据中,是否真的会有这么多副本,还得 看 DataNode 的数量。因为目前只有 3 台设备,最多也就 3 个副本,只有节点数的增加到 10 台时,副本数才能达到 10。 第 3 章 HDFS 客户端操作(开发重点) 3.1 HDFS 客户端环境准备 1.根据自己电脑的操作系统拷贝对应的编译后的 hadoop jar 包到非中文路径(例 如:D:\Develop\hadoop-2.7.2),如图 3-4 所示。 图 3-4 编译后的 hadoop jar 包 2.配置 HADOOP_HOME 环境变量,如图 3-5 所示。 图 3-5 配置 HADOOP_HOME 环境变量 更多 Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
尚硅谷大数据技术之 Hadoop(HFDS 文件系统) ——————————————————————————— —— 3. 配置 Path 环境变量,如图 3-6 所示。 图 3-6 配置 Path 环境变量 4.创建一个 Maven 工程 HdfsClientDemo 5.导入相应的依赖坐标+日志添加 junit junit RELEASE org.apache.logging.log4j log4j-core 2.8.2 org.apache.hadoop hadoop-common 2.7.2 org.apache.hadoop hadoop-client 2.7.2 org.apache.hadoop hadoop-hdfs 2.7.2 jdk.tools 更多 Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
分享到:
收藏