HDFS:是一个综合的文件系统抽象,提供了文件系统的各种借口。
HDFS整合了各种众多的文件系统,提供了一个抽象的文件系统
————org.apache.hadoop.fs.FileSystem
org.apache.hadoop.fs.FileSystem的实现
-org.apache.hadoop.fs.LocalFileSystem
Implimen for local filesystem 本地文件系统的实现
(核心)-org.apache.hadoop.hdfs.DistributedFileSystem
Implementation for the DFS system 分布式实现

Hadoop也支持对第三方文件系统的支持。

HDFS的借口
-----标准的JAVA借口
-----Thrift
1. Apache Thrift 是一个软件框架,用来进行可扩展且跨语言的服务的开发。
2. 支持其他语言通过代理的方式访问HDFS。

--------libhdfs-HDFS的C语言库
--------FUSE
	1. 用户空间文件系统(Filesystem in Userspace)
	2. 支持HDFS作为标准文件系统挂载
	
------HDFS的接口
	---WebDAV(Web-based Distributed Authoring and Versioning)
		通过HTTP管理文件系统
	-----http://mastername:50070

HDFS的体系结构:

ubuntu使用hdfs已放弃核心已转储 hdfs uri_hdfs

----Block* ————查看文件块命令
-----bin/hadoop fsck / -files -blocks
-----bin/hdfs fsck(*)

实践fsck命令:

安全模式:
nNameNode 在启动时会自动进入安全模式;安全模式的目的是在系统启动时检查各个DataNode 上数据块的有效性,同时根据策略对数据块进行必要的复制或删除。

关闭安全模式
-----bin/hdfs dfsad-safemode leave
把HDFS置于安全模式
-----bin/hdfs dfsadmin -safemode enter
查看HDFS状态报告
-----bin/hdfs dfsadmin -report

运行效果:

ubuntu使用hdfs已放弃核心已转储 hdfs uri_HDFS_02


ubuntu使用hdfs已放弃核心已转储 hdfs uri_HDFS_03


get:获取HDFS当前所处于安全模式的状态

HDFS Shell操作基本格式
-----bin/hadoop fs -cmd < args>
-----bin/hdfs dfs -cmd

ubuntu使用hdfs已放弃核心已转储 hdfs uri_hdfs_04


-----Hadoop文档

-----帮助命令

实践:
会列出所有的命令

bin/hdfs dfs

ubuntu使用hdfs已放弃核心已转储 hdfs uri_文件系统_05


-help:可以查看某些命令的功能

ubuntu使用hdfs已放弃核心已转储 hdfs uri_hdfs_06


以前命令的前缀:

bin/hadoop fs

现在命令的前缀

bin/hdfs fs

URI(Uniform Resource Identifier, 统一资源标识符)
定位到HDFS中的特定文件或目录
格式:

  1. schme://authority/path
    —schemi-访问协议
    —autority-namenode:port
    #列子#
    —scheme://authority 设置
    —HDFS默认工作目录 /user/$USER

小小的概念:HDFS默认的工作目录:指的是当前用户登录HDFS的登录用户的用户名.

敲黑板:

ubuntu使用hdfs已放弃核心已转储 hdfs uri_hdfs_07


实践:

-ls / :查看HDFS的更目录

ubuntu使用hdfs已放弃核心已转储 hdfs uri_文件系统_08

听了课之后,我有几个问题:

  1. 怎样设置Hadoop的默认工作路径?
  2. 为什么老师的Hadoop的各种文件夹让我看起来像是自动创建的,这么多文件夹,难道需要我们自己手动去创建吗?,这里可能涉及到一些知识点。
  3. 在上次课中的那3个配置文件除了在配置基本环境之外,还能配置其他的什么东西吗?
    后面,要带着这几个问题,继续学。
    此外,还有看了这么多视频,我现在想再回去看一下Hadoop的内部原理,在刚开始看的时候,我感觉看这些基础原理很无聊,学到现在我想去更多地去了解。