LazyHybrid(LH)算法是美国加利福尼亚圣克鲁兹大学存储系统研究中心提出的。
原文Efficient Metadata Management in Large Distributed File Systems
下载:http://download.csdn.net/detail/zhangliangaws/6852159
一、算法主要思想:
1.元数据的存放
LH维护一个全局性的元数据查询表(Metadata Look-up Table)。这张表放在每个MDS上,并且Client可以下载到本地。
表1 :把哈希值划分到不同元数据服务器。
表2: 一个目录实例,目录下的odsd目录下面又有若干子目录,他们被存放到不同的元数据服务器上。
LH算法首先使用文件的路径名作为哈希函数的键值来计算哈希结果,并以该结果为索引来查找元数据查询表,找到对应的元数据服务器的序号。然后再到对应的元数据服务器进行存取访问。
2.元数据文件的访问权限。
LH使用唯一的双入口访问控制列表(ACL)结构来确定文件的访问权限:每个文件或目录分别都有代表文件权限和路径权限的两个ACL表。
文件权限是指文件本身的访问权限;路径权限是文件权限和父目录路径权限结合在一起的权限。由于父目录路径权限也有类似的定义,所以获得路径权限的过程 代表了整个路径(一直到文件名)的权限的过程。这样与路径名散列相结合就可以访问元数据,从而避免了纯散列算法中需要遍历文件路径的各层目录来确定该文件最终访问权限的繁琐操作。
3.数据一致性问题
主MDS采用广播方式更新系统所有节点,并使用版本号来控制各节点MLT的数据一致性问题。
4.其他特点
LH算法采用一种懒惰的元数据更新策略提高了系统的整体相应速度。包括目录改名操作时延迟更新目录名,
5.算法的不足
LH算法的不足是目录改名,链接和访问权限的修改等扩展性操作会给存储系统引入额外的开销,影响系统的性能。