FITEE 2016 Paper 分布式元数据论文阅读笔记整理
问题
在EB规模下,数据以指数级的速度增长,在文件系统中生成了大量的元数据。Hadoop是处理大数据应用最广泛的框架。然而,由于大量元数据的增长,Hadoop的效率受到了许多研究人员的多次质疑。基于哈希映射和子树划分适用于分布式元数据管理方案:但子树划分不能在元数据服务器之间统一分配工作负载,需要迁移元数据以保持负载平衡;基于哈希的映射虽然在Hadoop的元数据服务器NameNodes之间均匀分布负载,但元数据的局部性受到限制。
挑战
NameNode是Hadoop的中心,保留所有文件的目录树,Hadoop的元数据没有副本,因此NameNode故障会导致单点故障(SPOF)。
应该设计和实现更好的NameNode集群管理。元数据的工作负载可以通过将元数据统一分发到集群中的所有NameNodes来解决。此外,随着元数据大小的不断增长,应该实现无限的可扩展性。每个NameNode服务器的元数据可以复制到其他NameNode,以提供更好的可靠性和出色的容错能力。
本文方法
本文提出了一种循环元数据管理机制,称为动态循环元数据拆分(DCMS)。
-
使用位置保持哈希在多个NameNode间分发元数据,保持元数据的局部性
-
NameNode集群大小变化时,使用一致性哈希实现元数据的统一分布,在NameNodes之间动态分发元数据以保持负载平衡。
-
使用元数据复制以实现可靠性,避免了Hadoop的SPOF,在单点故障时依旧提供性能下降的服务。
总结
对Hadoop中元数据管理的优化,优化负载均衡和故障容忍。提出动态循环元数据拆分(DCMS):(1)使用位置保持哈希在多个NameNode间分发元数据,保持元数据的局部性。(2)NameNode集群大小变化时,使用一致性哈希实现元数据的统一分布,保持负载平衡。(3)使用元数据复制以实现可靠性,在单点故障时依旧提供性能下降的服务。