基于Ceph的分布式存储节能技术研究
时间:2015-10-21 10:16 文章来源:http://www.lunwenbuluo.com 作者:沈良好,吴庆波,杨沙 点击次数:
【摘要】:分布式存储作为目前流行的数据中心存储系统,在具有高性能、高扩展性的同时,面临着系统能耗增加的问题。为此,基于Ceph分布式存储,分析其数据布局在节能方面的不足,提出划分功耗组的节能优化算法,以提升系统节能比例。建立Ceph的多级功耗模型并给出管理策略,设计并实现Ceph系统的多级功耗管理框架,以进行Ceph系统功耗的动态管理。实验结果证明,该框架能够有效降低Ceph分布式存储的能耗,并保证系统的服务质量和数据可用性。
【关键词】:分布式存储;节能计算;Ceph存储;功耗管理;数据布局
1概述
能耗管理是数据中心面临的重要挑战。_方面,随着基础架构规模的扩大,数据中心需要为曰益剧增的能源消耗买单,在数据中心总体总拥有成本(TotalCostofOwnership,TCO)中,用于能源的费用已经成为重要的组成部分。另一方面,随着数量的增加与规模的扩大,数据中心所消耗的能源,在整个社会能源消耗中所占的比重也越来越大,据统计,全球数据中心在2010年对电能的消耗超过了2X1011千瓦时,约占全球总用电量的1.3%,且呈逐年上升的趋势在数据中心的组件中,存储系统是能源消耗主要来源之一,仅次于计算资源,约占30%。因此,
降低存储系统的能耗是达到数据中心节能目的的重要手段。近年来,存储系统节能技术受到了广泛关注,从单个磁盘到磁盘阵列,再到分布式存储,均出现了大量的研究工作M。
分布式存储是目前大部分数据中心所采用的存储形式。作为近年热门的分布式存储,Ceph0因具备了高扩展性、高性能、高可靠性的特点,而备受关注。因此,本文基于开源项目Ceph,进行分布式存储系统节能技术的研究。本文的工作主要有:以节能为目的的Ceph数据布局优化;多级功耗管理策略;功耗管理框架的设计与实现。该框架结合了上述数据布局优化方法、多级功耗管理策略以及硬件的节能功能,实现了Ceph分布式存储的动态功耗管理。
2相关工作
分布式存储系统的节能技术近年来受到了广泛的关注,是存储领域热门的研究方向之一。
微软剑桥研究院的ThereskaE等人设计并开发了Sierra7分布式存储系统,该系统使用了能耗感知的数据布局和基于负载预测的节点状态管理,在系统低负载时,关闭部分节点,从而增加系统的能源利用率。为保证系统的容错能力以及数据的一致性,Sierra使用了分布式虚拟日志(DVL)技术。经过测试,该系统在作为Hotmail和WindowsMessenger服务的后端存储时能够节省23%以上的能耗,且性能的损失相当微小。
UIUC的KaushikR等人基于标准的HDFS提出了其节能的衍生版GreenHDFS18。在GreenHDFS中,数据节点最初被划分为热区和冷区,处于热区的数据(约70%)有着更高的访问频率,所以为保证性能,热区的节点是一直处于活跃状态的;而冷区的数据(约30%)使用率非常低,所以冷区的节点将会进入省电模式。一个自适应的划分策略用来动态地指定节点所属的区,并使得冷区节点能够达到_定的数量,进而增加整个集群节能的程度:在Yahoo的_个真实负载环境中,GreenHDFS在3个月的测试时间内,节省了26%的能耗。
此外,针对Ceph分布式存储的节能技术也受到了关注,文献9提出了一种CephOSD(对象存储设备)的自适应的磁盘降速算法。该算法针对单个OSD,在其低负载时降低所对应的磁盘速度,进入节能状态。他们的工作针对的只是部分OSD上磁盘的节能,所以对整个系统能耗的影响十分有限。
3数据布局优化
分布式存储中的数据放置算法及其产生的数据布局是影响系统可靠性、扩展性的重要因素之_。Ceph存储系统基于CRUSH算法的数据布局是其具备可靠性、高性能、高扩展性的基础,但同时也限制了系统节能的能力。
3.1Ceph数据布局
作为Ceph存储的关键技术之一,CRUSH算法由WeilSA于2006年提出10。CRUSH基于伪随机的哈希算法产生确定的均匀的数据分布。CRUSH有多个输入,包含了对象id,Crushmap和放置规则。其中,对象id_般用于区别需要存放的数据对象,实际运行时对象会被映射到不同的放置组(PG),所以作为输入id的实际是PG的id。Crushmap描述了数据节点的层级关系,用树形结构表示,包含bucket和类型的节点,其中bucket节点可以包含其他类型的bucket和device节点,通常用于描述故障域(failuredomain),如主机、机架、机柜等,把副本分布于不同故障域,是Ceph保证数据可靠性的重要措施;而device节点只能作为叶子节点,表示对象存储设备(OSD)。放置规则用于指定副本放置的策略,包含了take,select,emti等语句,其中select可以指定副本个数和副本放置的故障域。在一个包含4台主机的集群中,副本分布策略为:select(2,host),即数据的2个副本放置于不同的主机上,则通过CRUSH算法产生的数据布局如图1所示。
3.2存储系统存在的不足
很多应用场景中都存在低负载时期,此时,为了节省系统的能耗,可以关闭部分数据节点。出于以下考虑,关闭节点时应保证数据全集是可用的(即任意的数据对象至少有_个以上副本是未被关闭的):_方面,如果发生不可用数据的访问,则会产生非常大的访问延迟;另一方面,频繁开启相应的节点会产生不可忽视的额外能耗。在Ceph存储系统中,数据节点数为N被划分为n个故障域fd,副本分布策略为select(r,/d),则在系统低负载系统时期最多可以关闭的故障域的个数为n'<r,因为任何大于或者等于r个故障域的组合中,必然包含了某些数据的所有副本。如图1中,可以关闭的主机个数为1台,当关闭2台以上主机时/个~F个数据块必然有一个无法访问。随着集群规模的增加,最多只能关闭r-1个故障域的节点,可以达到最大节能比例为(r-1)/n,当集群规模较大时,节能的效果微乎其微。
- 论文部落提供核心期刊、国家级期刊、省级期刊、SCI期刊和EI期刊等咨询服务。
- 论文部落拥有一支经验丰富、高端专业的编辑团队,可帮助您指导各领域学术文章,您只需提出详细的论文写作要求和相关资料。
-
- 论文投稿客服QQ:
2863358778、
2316118108
-
- 论文投稿电话:15380085870
-
- 论文投稿邮箱:lunwenbuluo@126.com