网络信息安全理论.ppt

上传人:王** 文档编号:166682 上传时间:2023-03-07 格式:PPT 页数:25 大小:1.44MB
下载 相关 举报
网络信息安全理论.ppt_第1页
第1页 / 共25页
网络信息安全理论.ppt_第2页
第2页 / 共25页
网络信息安全理论.ppt_第3页
第3页 / 共25页
网络信息安全理论.ppt_第4页
第4页 / 共25页
网络信息安全理论.ppt_第5页
第5页 / 共25页
网络信息安全理论.ppt_第6页
第6页 / 共25页
网络信息安全理论.ppt_第7页
第7页 / 共25页
网络信息安全理论.ppt_第8页
第8页 / 共25页
网络信息安全理论.ppt_第9页
第9页 / 共25页
网络信息安全理论.ppt_第10页
第10页 / 共25页
亲,该文档总共25页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《网络信息安全理论.ppt》由会员分享,可在线阅读,更多相关《网络信息安全理论.ppt(25页珍藏版)》请在优知文库上搜索。

1、Log-Structured Memory for DRAM-Based StorageSlide 1Slide 2全闪存全闪存储存速度储存速度存储系统的极限存储系统的极限RAMCloud -内存云存储的内存分配机制内存云存储的内存分配机制 Slide 2Slide 3文章逻辑思路:文章逻辑思路:RAMCloud 概述概述Log MetadataLog-Structured Storage:日志结构的储存:日志结构的储存Two-level Cleaning-两种不同清除策略两种不同清除策略Parallel Cleaning:并行清除:并行清除额外工作:额外工作:Avoiding Cleaner

2、 DeadlockRAMCloud内存云存储的内存分配机制内存云存储的内存分配机制-意义意义RAMCloud的未来的未来Slide 3Slide 4RAMCloud 概述:概述: RAMCloud是一个完全使用是一个完全使用DRAM的存储系统,它的的存储系统,它的所有数据都保存到内存中。所有数据都保存到内存中。 当然为了恢复故障,当然为了恢复故障,RAMCloud会将日志和数据持久会将日志和数据持久化备份到普通硬盘中化备份到普通硬盘中。RAMCloud 适用场景适用场景 : 应用服务器(主要实现生成网页和执行业务规则等应应用服务器(主要实现生成网页和执行业务规则等应用逻辑)用逻辑) 存储服务器

3、(为应用服务器提供长期共享存储)存储服务器(为应用服务器提供长期共享存储) 两种数据中心一般支持许多应用;有的很小,只使用两种数据中心一般支持许多应用;有的很小,只使用一台服务器的一部分能力;有的很大,要用到数千台一台服务器的一部分能力;有的很大,要用到数千台专用应用和存储服务器。专用应用和存储服务器。Slide 4Slide 5RAMCloud 概述:概述: RAMCloud内存云中保存的信息必须和硬盘一样持久,单内存云中保存的信息必须和硬盘一样持久,单个存储服务器的故障不能造成数据丢失和哪怕几秒钟的服个存储服务器的故障不能造成数据丢失和哪怕几秒钟的服务不可用。务不可用。RAMCloud将所

4、有数据存放在将所有数据存放在DRAM中,性能可以达到比中,性能可以达到比目前最高性能的硬盘存储系统还要高目前最高性能的硬盘存储系统还要高1001000倍。倍。在访问延迟方面,在访问延迟方面,RAMCloud方案中运行在应用服务器中方案中运行在应用服务器中的一个进程从同一数据中心的存储服务器中通过网络读取的一个进程从同一数据中心的存储服务器中通过网络读取数百字节数据只需数百字节数据只需510s,而目前实际系统一般要花费,而目前实际系统一般要花费0.510ms(具体取决于数据是在服务器内存缓存中,还具体取决于数据是在服务器内存缓存中,还是硬盘中是硬盘中)一台多核存储服务器每秒可以服务至少一台多核存

5、储服务器每秒可以服务至少100万次小读取请万次小读取请求。而硬盘系统中同样的机器每秒只能服务求。而硬盘系统中同样的机器每秒只能服务100010000次请求。次请求。Slide 5Slide 6Slide 6RAMCloud 概述概述:Appl.LibraryDatacenterNetworkCoordinator1000 10,000 存储服务器存储服务器1000 100,000 应用服务器应用服务器MasterBackupMasterBackupMasterBackupMasterBackupAppl.LibraryAppl.LibraryAppl.LibraryKey-value stor

6、e32-256 GB DRAM5s RTT forsmall RPCs系统易崩系统易崩溃就采用溃就采用多个备份多个备份任何时段所有数据皆放于任何时段所有数据皆放于DRAM里里storage serverSlide 7Log Metadata 在基于日志的文件系统中,为了快速的访问日志数据,在基于日志的文件系统中,为了快速的访问日志数据,日志中使用了各种索引。日志中使用了各种索引。 RAMCloud是使用了是使用了hash table来访问在来访问在memory中的中的数据。数据。 硬盘中的日志在正常工作的环境下是永远用不到的。它硬盘中的日志在正常工作的环境下是永远用不到的。它唯一被用到的机会就

7、是故障恢复。唯一被用到的机会就是故障恢复。Slide 7Slide 8Log Metadata日志分三种:日志分三种:1). 元数据元数据包含了存储基本单元包含了存储基本单元object的的table id,key,version,value。在数。在数据恢复时,将根据最新据恢复时,将根据最新version的条目来重建的条目来重建hash table。2). 日志摘要日志摘要(log digest)每一个新的日志段都会有一个日志摘要,这个摘要包含了所有属于这每一个新的日志段都会有一个日志摘要,这个摘要包含了所有属于这个段的日志。在数据恢复时,将根据段的最新的日志摘要来加载所有个段的日志。在数据

8、恢复时,将根据段的最新的日志摘要来加载所有的元数据。的元数据。3). tombstone这个日志是比较特殊的。它代表了被删除的这个日志是比较特殊的。它代表了被删除的object。日志一旦写入就。日志一旦写入就不可修改,不可修改,但若但若一个一个object被删除被删除就就在日志中添加一条在日志中添加一条tombstone的的记录。记录包含记录。记录包含table id,key和和version。在平时的操作中,。在平时的操作中,tombstone是不会用到。但是在数据恢复时,它能保证被删除的是不会用到。但是在数据恢复时,它能保证被删除的object不会被重建。不会被重建。Slide 8Slid

9、e 9Slide 9Log-Structured Storage:日志结构的储存:日志结构的储存哈希表哈希表table id,object key不变的日志不变的日志8 MBSegmentsB17B86B22B3B72B66B49B3B16Log head:在这增加下个目标每一段复制每一段复制到到磁盘磁盘上上的的3个个备份服务器上备份服务器上主服务器主服务器Slide 10Two-level Cleaning: 对于基于日志的内存分配,主要的瓶颈就在于对于基于日志的内存分配,主要的瓶颈就在于log cleaner。碎片。碎片管理,或者说内存回收是非常昂贵的,这就需要巧妙的设计。特别是管理,或者

10、说内存回收是非常昂贵的,这就需要巧妙的设计。特别是随着内存利用率的上升,回收的成本也越来越大。例如,对于一个内随着内存利用率的上升,回收的成本也越来越大。例如,对于一个内存利用率存利用率80%的情况,为了获取的情况,为了获取2B的可用空间,平均情况下需要移的可用空间,平均情况下需要移动动8B的数据。如果是的数据。如果是90%,那么移动,那么移动9B的数据只能带来的数据只能带来1B的空间。的空间。见下图的上半部分。见下图的上半部分。0.50.51.00.990.0199.00.90.19.0U: fraction of live bytesin cleaned segments0.50.990.

11、9Bytes copied by cleaner (U)Bytes copied/byte freed (U/(1-U)Bytes freed (1-U)Slide 10Slide 11Two-level Cleaning: 对于对于Memory来说,来说,更更关注的是空间的利用率,关注的是空间的利用率,因为因为DRAM比较贵比较贵的。的。 对于硬盘来说,带宽是昂贵的,可以说很多系统的瓶颈都是在硬对于硬盘来说,带宽是昂贵的,可以说很多系统的瓶颈都是在硬盘的盘的IO读写速度上读写速度上。因此因此RAMCloud对于对于memory和和disk采取了两种不同的回收策略。采取了两种不同的回收策略。D

12、iskMemoryCapacityBandwidthcheapexpensiveexpensivecheapConflicting Needs:Slide 11Slide 12Two-level Cleaning-两种不同清除策略两种不同清除策略因为因为两个阶段的两个阶段的清除清除,使得,使得memory的的cleaning可以不影响可以不影响Backup,这个结果就是一般来说,这个结果就是一般来说memory的利用率要高于的利用率要高于disk。memory的的利用率可以达到利用率可以达到90%,disk的要低得多。当然因为的要低得多。当然因为disk的的cleaning的的频率更低,这也就

13、可以理解了。频率更低,这也就可以理解了。第第一种:一种:segment compaction 仅仅是处理了仅仅是处理了in-memory的的segment,并没有消耗网络或者,并没有消耗网络或者disk的的IO。实际上占用了更少的空间。实际上占用了更少的空间。第二种:第二种:combined cleaning不仅清理不仅清理disk,也清理,也清理 memory。因为已经有。因为已经有segment compaction了,了,所以该方法效率更高所以该方法效率更高。且因为这一阶段被延后进行了,可以合并。且因为这一阶段被延后进行了,可以合并更多的删除操作了。更多的删除操作了。Slide 12Sl

14、ide 13Two-level Cleaning-两种不同清除策略两种不同清除策略“seglet” 如果没有如果没有segment compaction,那么所有的,那么所有的segment都有相同都有相同的大小,默认情况下是的大小,默认情况下是8MB。因为有了压缩,因此。因为有了压缩,因此segment可以有可以有不同的大小。不同的大小。但是但是不能采用传统的不能采用传统的heap allocator,因为会产生碎片,因为会产生碎片。 RAMCloud将将segment分为分为64KB的的seglet。每个。每个segment分为分为不同的不同的seglet,seglet的数量就决定了的数量

15、就决定了segment的大小。的大小。 虽然认为虽然认为seglet的引入的引入=也会引入碎片。实际上,对于一个也会引入碎片。实际上,对于一个segment来说,只可能产生大约来说,只可能产生大约1/2个个seglet大小的碎片,也就是大小的碎片,也就是32KB/8MB = 1/64=1.5%。也是由于。也是由于seglet的引入,的引入,log现在变得不现在变得不连续了,因为连续了,因为log有可能跨越多个有可能跨越多个seglet,RAMCloud使用了额外的使用了额外的机制来处理这种情况。机制来处理这种情况。Slide 13Slide 14Two-level Cleaning-两种不同清

16、除策略两种不同清除策略“clean的触发机制的触发机制” two-level的的cleaning的引入,引入了一个新的问题:什么时候的引入,引入了一个新的问题:什么时候触发触发segment compaction,什么时候触发,什么时候触发combined cleaning?这?这个选择将会影响到系统的性能,因为个选择将会影响到系统的性能,因为combined cleaning占用了系统占用了系统珍贵的珍贵的disk IO和和network IO。这个。这个policy 模块,称为模块,称为balancer。 一般情况下,在一般情况下,在memory和和disk的利用率不是很高的情况下,的利用率不是很高的情况下,cleaner是不会工作的。因为是不会工作的。因为cleaner的提早工作并不会有多高的效率的提早工作并不会有多高的效率。相反,如果。相反,如果cleaner的工作延后,那么可以处理更多的删除的的工作延后,那么可以处理更多的删除的object,可以回收更多的空间资源,因此,延后的,可以回收更多的空间资源,因此,延后的cleaner是非常有是非常有意义而且有好处的。意义而且有好处

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 网络信息安全

copyright@ 2008-2023 yzwku网站版权所有

经营许可证编号:宁ICP备2022001189号-2

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!