美文网首页
Hadoop04-HDFS

Hadoop04-HDFS

作者: 大空翼123 | 来源:发表于2020-11-09 09:44 被阅读0次

HDFS定义

HDFS(Hadoop Distributed File System)是一个分布式文件管理系统。

使用场景

适合一次写入,对此读出场景,不支持修改,仅支持追加

HDFS就是一个大硬盘

优点

缺点

HDFS组织架构

HDFS文件块大小

HDFS文件块大小主要取决于硬盘传输速率

目前硬盘传输速率100MB/S,寻址时间约为10ms,寻址时间为传输时间1%最好。因此一个块约为128M。

块太小增加寻址时间;块太大处理数据非常慢。

Hadoop Shell操作

基本语法

bin/hadoop fs 具体命令   OR  bin/hdfs dfs具体命令

上传 -put

hadoop fs–put License.txt /             把License.txt复制到根目录

浏览器打开节点,Utilities 下,浏览系统文件 输入/ 可以看到License.txt

下载 -get

hadoop fs -get /sanguo/shuguo/kongming.txt ./

Hadoop直接操作

hadoop fs -Linux操作命令

-ls: 显示目录信息         hadoop fs -ls /

-mkdir 创建目录            hadoop fs -mkdir -p /sanguo/shuguo

-setrep:设置HDFS中文件的副本数量(是否真的会有这么多副本,还得看DataNode的数量)

NameNode和SecondaryNameNode工作机制

NameNode中的元数据村吃在内存中

为了防止丢失,产生在硬盘中备份元数据的FsImage。

为了提高效率,避免丢失,引入Edits文件,只可进行追加操作。元数据更新时把元数据追加到Edits.

定期合并Edits与FsImage。引入新的2NN来作为合并的辅助。

DataNode工作机制

(1)一个数据块在DataNode上以文件形式存储在磁盘上,包括两个文件,一个是数据本身,一个是元数据包括数据块的长度,块数据的校验和,以及时间戳。

(2)DataNode启动后向NameNode注册,通过后,周期性(1小时)的向NameNode上报所有的块信息。

(3)心跳是每3秒一次,心跳返回结果带有NameNode给该DataNode的命令如复制块数据到另一台机器,或删除某个数据块。如果超过10分钟没有收到某个DataNode的心跳,则认为该节点不可用。

(4)集群运行中可以安全加入和退出一些机器。

添加新的虚拟机到集群

详见教程

删除集群中旧的虚拟机

添加白名单,退役黑名单,集群的再平衡

详见教程

相关文章

  • Hadoop04-HDFS

    HDFS定义 HDFS(Hadoop Distributed File System)是一个分布式文件管理系统。 ...

网友评论

      本文标题:Hadoop04-HDFS

      本文链接:https://www.haomeiwen.com/subject/lqqlbktx.html