Hadoop分布式文件系统HDFS介绍

HDFS全称是Hadoop Distributed File System。hdfs中的block的大小默认128MB(hadoop2.x,1.x是64MB),文件占用的大小不到128也占用128M。默认每个block有3个备份(dfs.replication可设),备份在一个rack(机架)上的不同节点,备份和原文件一般不在一个机架。如果一个节点宕掉,其中的block会生成新的到其他节点(宕机的启动后,会多一个备份,不会删除)。分的多个块的备份不一定在相同的节点上(尽量均衡)。

HDFS就像是一个分鱼(有的写成余)展的大硬盘,分是数据分块存储,鱼是数据冗余(备份),展是动态扩展(增加机器配置好即可)。

读取文件时就近原则(路由最近)。hadoop fs和hdfs dfs命令一样。

HDFS海量小文件不适合(小文件少点可以),一个Map任务处理一个小文件,导致Map任务过多。小文件过多导致metadata过多,占用内存。HDFS适合高吞吐量,不适合低时间延迟的访问。 流式读取的方式,不适合多用户写入,以及任意位置写入。Reduce的输出可以多路输出(一个reduce输出多个文件,多个reduce输出到一个文件),一般一个reduce输出一个文件。

HDFS组成:

  1. NameNode:hadoop服务,一般放在master节点,存储文件系统元数据,包括文件目录结构,分块情况,块位置权限等。也就是存储了hdfs文件中block所在的节点和路径,这里只存文件名。
  2. DataNode:hadoop服务,一般放在slave节点,存储具体的block文件数据。
    一个节点中,datanode和namenode服务都安装了,启动时需要选择。
  3. SecondaryNode:备用namenode。更合适的名字叫CheckpointNode(检查节点)。帮助检查用的,而不是备用。
  4. JournalNode:多个namenode之间数据通信可以通过Linux系统的Network FileSystem(操作系统层级)通信和共享数据,也可以通过Hadoop自己的JournalNode方式。

物理结构与逻辑结构:master管理多个slave。master上跑NameNode,slave跑DataNode。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值