论文部分内容阅读
云存储是随着云计算的发展而产生的一个概念,它是指通过集群应用、网格技术或分布式文件系统等功能,将网络中大量各种不同类型的存储设备通过应用软件集合起来协同工作,共同对外提供数据存储和业务访问功能的一个系统。云存储专注于向用户提供以互联网为基础的,高可靠性的在线存储服务,能够满足web2.0应用对数据存储的巨大要求。然而,要设计一个高性能的云存储系统面临着许多挑战,比如异构性、分布性、扩展型、透明性、并发性、可靠性和效率等问题。现在的一些主流的云存储系统,比如Google的GFS、亚马逊的弹性云,包括开源的HDFS,都采用了相似的集中式的架构,系统中均存在一个中心服务器来负责管理系统中的数据存储节点,用户的所有数据存储和检索请求都需要经过中心服务器的处理。在这样的架构中,存在着单点失败(SPOF)的巨大风险,中心服务器很容易成为系统的瓶颈,一旦崩溃,就可能导致整个云存储服务的不可用。尽管这些系统都对中心服务器采取了备份策略,但并未从根本上解决这一问题。而且,随着系统负载的增加,系统的扩展性不好,对系统的压力会越来越大。P2P的许多特点比如非中心化、可扩展性、健壮性、高性能和负载均衡等都契合了云存储的设计要求。本文结合P2P的相关思想和技术,提出了一种基于P2P技术的云存储模型,应用Chord算法来组织服务管理节点并分发用户的请求,使用存储簇来完成数据的存储和管理。将P2P技术应用在云存储系统的设计中,可以在云存储系统中发挥P2P技术的优点,能够有效地解决集中式云存储系统的中心节点瓶颈问题,将系统负载均分到多个服务节点上,实现了系统的负载均衡,从而有效地利用了系统资源,极大地提高了云存储系统的性能和云存储服务的质量,增强了服务的可靠性。为了提高文件查询的效率,本文还对Chord算法的查询过程应用了一种优化策略,并提出了一种基于DHT的云存储索引模型。