ISSN 1000-1239 CN 11-1777/TP

计算机研究与发展

• 软件技术 • 上一篇    下一篇

面向大数据分析的分布式文件系统关键技术

周 江1,2,3 王伟平3 孟 丹3 马 灿3 古晓艳1,2,3 蒋 杰4   

  1. 1(中国科学院计算技术研究所计算机应用研究中心 北京 100190) 2(中国科学院大学 北京 100049) 3(中国科学院信息工程研究所 北京 100093) 4(腾讯公司数据平台部 广东深圳 518057) (zhoujiang@ncic.ac.cn)
  • 出版日期: 2014-02-15

Key Technology in Distributed File System Towards Big Data Analysis

Zhou Jiang1,2,3, Wang Weiping3, Meng Dan3, Ma Can3, Gu Xiaoyan1,2,3, and Jiang Jie4   

  1. 1(Computer Application Research Center, Institute of Computing Technology, Chinese Academy of Sciences, Beijing 100190) 2(University of Chinese Academy of Sciences, Beijing 100049) 3(Institute of Information Engineering, Chinese Academy of Sciences, Beijing 100093) 4(Data Platform Department, Tencent Inc., Shenzhen, Guangdong 518057)
  • Online: 2014-02-15

摘要: 大数据时代的来临使数据分析和处理能力成为数据中心和互联网公司日益倚重的技术手段.信息规模的扩大和数据结构的多样化,使海量数据存储成为大数据分析研究的热点.传统的分布式文件系统在扩展性、可靠性和数据访问性能等方面难以满足新形势下的需求.设计并实现了一个面向大数据分析、专为大规模集群应用的分布式文件系统Clover.该系统采用基于目录划分和一致性Hash映射的名字空间管理方法,解决了元数据扩展性问题;通过改进的两阶段提交协议,保证了多元数据服务器下分布式元数据操作的一致性;提出了基于共享存储池的高可用机制,通过热备和全局状态恢复机制提高了元数据的可靠性.评测结果表明,Clover的元数据处理能力随服务器的数量线性增长,增加单个服务器的元数据操作性能平均提升了5.13%~159.32%.由于名字空间管理和分布式事务的开销,多元数据服务器会导致复杂操作的性能下降,但是这种下降的幅度很小(小于10%).与HDFS相比,Clover的文件读写带宽与之接近,并能够保证在元数据服务器失效后文件系统快速恢复,适合于构建高可扩展和高可用的存储系统.

关键词: 大数据, 海量数据存储, 分布式文件系统, 元数据可扩展性, 高可用性

Abstract: With the arrival of big data period, data analysis and processing are becoming a more important technology which the data center and Internet companies depend on. Mass data storage is a hotspot topic in big data analysis with the expansion of information and variety of data structure. Traditional distributed file systems are lack of the new demands in scalability, reliability and performance. In this paper, a cluster file system towards big data analysis is designed, which is named Clover. Clover uses the namespace management based on directory sharding and consistent hashing to solve the problem of metadata extension. It provides metadata consistency for distributed transactions through a modified two-phase commit protocol. Moreover, Clover presents a highly available mechanism based on the shared storage pool. It achieves metadata reliability with hot standby and global state recovery mechanism. The evaluation results reveal that Clover could improve metadata performance linearly with the average value from 5.13% to 159.32% by adding one metadata server. Namespace management and distributed transactions would cause the degradation of performance on multiple metadata servers, but the influence is negligible (less than 10%). Comparing with HDFS, Clover could keep the similar throughput and quickly recover from metadata server failures. Practical application tests show that Clover is suitable for building high scalable and high available storage system.

Key words: big data, mass data storage, distributed file system, metadata scalability, high availability