研究生计算机系统设计报告.doc

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
研究生计算机系统设计报告 题 目:RAMCloud的日志结构内存分配机制 以及快速灾难恢复 学 号 T201489941 姓 名 易 嘉 彬 专 业 计算机科学与技术 院(系、所) 研 究 生 院 华中科技大学研究生院制 目录 TOC \o "1-3" \h \z \u 1.RAMCloud概述 1 2.日志元数据 3 3.两段清理 4 3.1 seglet 5 3.2 clean的触发机制 5 4. 并行清理 7 4.1 日志的并发更新 7 4.2 哈希表的争夺 8 4.3 释放内存空间的时机 8 4.4 释放磁盘空间的时机 9 5. 避免清理器死锁 9 6. RAMCloud的快速灾难恢复 10 7. RAMCloud的未来 11 7.1 RAMCloud性价比的提高 11 7.2 RAMCloud的应用动机 11 7.3 RAMCloud的挑战 12 8. 参考文献 13 RAMCloud的日志结构内存分配机制以及快速灾难恢复 摘要:传统的内存分配机制已经无法适应新的基于DRAM的存储系统。相比较而言,基于日志结构的内存分配机制在保持存储系统高性能的同时,能将内存利用率提高到80%-90%。RAMCloud存储系统对存在内存中的数据和备份磁盘上的数据采用一致的日志结构管理方式。RAMCloud使用两段清理机制,节省磁盘带宽的同时,使内存在高利用率情况下提升了6倍的性能表现。在一个有60个结点的集群上,RAMCloud能在1.6秒内在一个失效服务器上恢复35GB的数据。我们的方法能在更短的时间,在更大的集群上,恢复更大的内存数据(64GB或者更多)。 引言:随着硬件的发展,磁盘的机械弱点越来越明显,取而代之的各类纯电子存储硬件,而且这类硬件的性价比也在逐渐提高。现在全闪存阵列已经见怪不怪了,EMC的XtremIO,还有VNX-F(Rockies),IBM FlashSystem。全闪存真正为效率而生,重新定义存储速度。凭借极致性能,高可用性,极大提高了企业级应用的效率。提到闪存的优势,那么毋庸置疑的就是速度!而在速度优势背后,SSD则面临着价格、容量以及寿命等方面的限制。 相比闪存,DRAM存在更明显的优势:较快的读取速度,比闪存高得多的重复写次数限制。RAMCloud,是一个完全使用DRAM的存储系统,它的所有数据都保存到内存中。当然了,为了故障恢复RAMCloud会将日志和数据的备份持久化到普通硬盘中。在2014年的FAST会议中,RAMCloud发表了关于内存分配及管理机制的论文,并且被评为最佳论文。 1.RAMCloud概述 RAMCloud最适合的场景是已经将服务器分为应用服务器(主要实现生成网页和执行业务规则等应用逻辑)和存储服务器(为应用服务器提供长期共享存储)的数据中心。这些数据中心一般支持许多应用,有的很小,只使用一台服务器的一部分能力,有的很大,要用到数千台专用应用和存储服务器。 而且,内存云中保存的信息必须和硬盘一样持久,单个存储服务器的故障不能造成数据丢失和哪怕几秒钟的服务不可用。RAMCloud将所有数据存放在DRAM中,性能可以达到比目前最高性能的硬盘存储系统还要高100~1000倍。在访问延迟方面,RAMCloud方案中运行在应用服务器中的一个进程从同一数据中心的存储服务器中通过网络读取数百字节数据只需5~10微秒,而目前实际系统一般要花费0.5~10ms,具体取决于数据是在服务器内存缓存中,还是硬盘中。而且,一台多核存储服务器每秒可以服务至少100万次小读取请求。而硬盘系统中同样的机器每秒只能服务1000~10000次请求。 ??系统架构图如下【1】。 ?????? ??每个存储服务器都包含两个部分: Master和Backup。Master管理了存储在内存中的数据。Backup使用本地的机械硬盘或者固态硬盘保存了其他服务器的数据备份。Coordinator管理了Master和Backup配置信息,比如集群各个服务器之间的关系和各个备份的分配。但是Coordinator并不涉入数据的读写操作,因此也不会成为集群的瓶颈或者降低系统的可扩展性。 RAMCloud提供了一个简单的key-value的数据模型,数据都是连续存储的。每个数据都被长度不一的唯一的key标记。多个object被保存到table中,这个table有可能跨越多个服务器。object只能以整体的方式进行读写。它为小object做了专门的优化,这也非常适合超大规模的网络并发的请求。 ??每个Master都有自己的日志,这些日志被分成8M的块,

您可能关注的文档

文档评论(0)

rovend + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档