HDFS分布式文件系统系列---HDFS 2.0新特性

1、新特性

  • NameNode HA
  • NameNode Federation
  • HDFS 快照
  • HDFS 缓存
  • HDFS ACL
  • 异构层级存储结构

2、NameNode HA

多个namenode,一个为active,一个standby,通过zookeeper管理;

3、NameNode Federation

多个namenode,多个active,多个standby(每个active有一个standby);每个namenode管理一部分目录,互相不交叉;
HDFS分布式文件系统系列---HDFS 2.0新特性_第1张图片
比如NN1管理/user目录;NN3管理/data目录等;

4、异构层级存储结构

1)背景

  • HDFS将所有的存储介质抽象成相同的Disk
<property>
    <name>dfs.datanode.data.dirname>
    <value>/dir0,/dir1/,/dir2/value>
property>
  • 存储介质种类繁多,一个集群中存在多种异构介质

    磁盘,RAM、SSD等

  • 多种类型的任务运行在同一个Hadoop集群中

    批处理、交互式、实时等,不同类型的任务要求不同(比如访问速度等)
    不同性能要求的数据,最好存储在不同类别的存储介质上

2)原理

  • 每个节点由多种异构存储介质构成,如何进行配置?
    为每个磁盘指定类型,如:
<property>
    <name>dfs.datanode.data.dirname>
    <value>[disk]/dir0,[ssd]/dir1/,[disk]/dir2/value>
property>
  • HDFS 仅提供了一种异构存储结构,但不知道存储介质的性能,所以具体如何存放文件,由用户决定;
  • HDFS为用户提供API,控制目录/文件写到什么介质上;
  • HDFS为管理员提供了管理工具,可控制每个用户对每种介质上的可使用份额;
  • 目前完成度不高
    阶段1:datanode支持异构存储介质;完成
    阶段2:为用户提供API;未完成
    可查看相应的patch;

5、HDFS ACL

现有权限管理的局限性
基于Linux的权限管理机制
HDFS分布式文件系统系列---HDFS 2.0新特性_第2张图片

ACL机制–基于POXIC ACL实现
HDFS分布式文件系统系列---HDFS 2.0新特性_第3张图片

6、HDFS快照

1)背景

HDFS上文件和目录是不断变化的,快照可以帮助用户保存某个时刻的数据;
快照的作用:
数据备份;防止用户误删除数据;

2)使用方法

  • 一个目录可以产生快照,当且仅当它是Snapshottable;

设置目录为snapshottable:

bin/hdfs dfsadmin allowSnapshot <path>
  • 创建、删除快照
bin/hdfs dfsadmin -createSnapshot <path>  [<snapshotName>]
bin/hdfs dfsadmin -deleteSnapshot <path>  [<snapShotName>]
  • 快照存放位置、特点

快照是只读的、不可修改;
快照位置

<snapshottable_dir_path>/.snapshot
<snapshottable_dir_path>/.snapshot/snapshotName

6、HDFS缓存

1)背景

  • HDFS自身不提供数据缓存功能,而是使用OS缓存

这样,造成内存浪费;比如可能同一数据块的3个副本都缓存;

  • 多种计算机框架并存,均将HDFS作为共享存储系统;

合理的使用内存、磁盘资源;
比如:高频访问的文件尽可能长时间缓存;
2)原理
1》client发出缓存命令
2》namenode决定哪些块,并且缓存元数据保存到磁盘中–重启后可以恢复缓存数据;
3》namenode向datanode发送缓存命令;
4》datanode进行缓存;
HDFS分布式文件系统系列---HDFS 2.0新特性_第4张图片

3)缓存的实现
HDFS分布式文件系统系列---HDFS 2.0新特性_第5张图片

你可能感兴趣的:(Hadoop,HDFS,分布式文件系统)