大数据学习之路(三)HDFS2.0
HDFS2.0
HDFS新特性:
• NameNode HA
• NameNode Federation
• HDFS 快照
• HDFS 缓存
• HDFS ACL
1、HDFS HA
1)HA:高可用,解决单点故障问题,虽然1.0里面有SNN,但是不可靠,因此使用两个NN,一个activeNN,另一个standbyNN。只要DN对两个NN同时发送心跳还可以保证两个NN的数据一致性
2、引进JN:原因,因为DN向两个NN发送心跳是 block-》DN
而引进JN是文件-》block
两者保证的数据类型不同
3、HDFS2.0引入了zookeeper,目的:协调分布式集群中各个节点工作有序运行,完成故障转移
4、在2.0中,ZKFC是一个进程,和NN部署在同一个机器上,ZKFC目的:负责对自己管辖之内的NN进行健康检查,
ZKFC会在zookeeper上注册一个临时节点,
目的用于监控NN,一旦NN挂掉,相对应的临时节点消失,接下来开始选主(申请锁)流程
5、JN通常配置成奇数个(2n+1),如果n+1个数据是一致的,那么数据就能确定下来
6、JN目的:让activeNN和StandbyNN保持数据同步(文件 -> block)
7、JN一种选择是NFS,另一种选择是QJM
NFS:需要额外的磁盘空间
QJM:不需要额外的磁盘空间
8、QJM:最低法定人数管理机制
原理:用2n+1台机器存储edit log,每次写数据操作属于大多数(n+1)时候,返回成功,保证高可用
QJM本质也是一个小集群,好处:
1)不需要空间
2)无单点问题
3)不会因为个别机器延迟,影响整体性能
4)通过简单的系统配置就可以实现
9、NN和JN通常不在一台机器上
FC和NN在同一台机器上
RM(Yarn中的资源管理器,相当于1.0中的jobtracker的部分功能)和NN在同一台机器
zookeeper通常是单独维护的一套独立集群
二、HDFS联邦
目的:减轻单一NN压力,将一部分文件转移到其他NN上管理
如果集群中某一个目录比较大,建议用单独的NN维护起来
横向扩展,突破了单独NN的限制
命名空间精简
每一个NN共享所有的DN数据
联邦的本质:元数据管理(NN)和存储(DN)进行解耦,但是实际情况是:数据的存储仍然是共享的
三、快照:数据备份、灾备、快速恢复
快照本质:也占空间(仅仅记录了block列表和大小而已,并不涉及数据本身的复制)
某个目录的某一时刻的镜像
快照创建的过程非常快,瞬间完成,高效
四、缓存:集中式缓存(不局限具体的机器cpu和操作系统层面上的优化)
缓存管理对于重复访问的文件很有用
优点:访问速度快
五、权限控制ACL
类似于linux系统acl功能
张三(技术部):zhangsan_dir
李四(产品部):lisi_dir
rwxr------
自己-组-其他
setacl单独给李四开权限