专业的信息化与通信融合产品选型平台及垂直门户
注册 登陆 设为首页 加入收藏
首页 企业新闻 招标信息 行业应用 厂商专区 活动 商城 中标信息

资讯
中心

新闻中心 人物观点
厂商专区 市场分析
行业
应用
政府机构 能源产业 金融机构
教育科研 医疗卫生 交通运输
应用
分类
统一协作 呼叫客服 IP语音 视频会议 智能管理 数据库
数字监控 信息安全 IP储存 移动应用 云计算 物联网

TOP

缓存vs. 分层:存储优化技术之比较
2017-07-21 16:52:52 来源:TechTarget中国 作者:【
关键词:存储优化 缓存策略
 
最快和最慢的服务器存储,其差异是巨大的。基于以太网的iSCSI SAN系统,其延迟可以是RAM或3D-XPoint的6-7倍。RAM只需几纳秒就可响应,3D-XPoint和PCIe型NVMe需要一微秒,一般的SAN存储需要几毫秒,而磁盘SAN/NAS系统则需数百毫秒。从最快到最慢的设备,响应速度的差异高达数百万倍。
  最快和最慢的服务器存储,其差异是巨大的。基于以太网的iSCSI SAN系统,其延迟可以是RAM或3D-XPoint的6-7倍。RAM只需几纳秒就可响应,3D-XPoint和PCIe型NVMe需要一微秒,一般的SAN存储需要几毫秒,而磁盘SAN/NAS系统则需数百毫秒。从最快到最慢的设备,响应速度的差异高达数百万倍。
  基于此,合理利用分层或缓存技术来优化,企业的存储性能会有天壤之别。当然,理解并决定选用哪种方案,要比随意选择困难得多。
  例如,通过分层得到的存储系统和数据管理方法,会比简单将数据划分为冷、暖、热要复杂得多。选择哪种缓存技术——write-around,write-through或write-back——取决于对系统性能和可靠性的综合评估。了解分层和缓存之间的差异,知道使用场景和用法,对维护企业级存储性能至关重要。
  缓存种类
  存在两种主要类型的缓存:主机端缓存,和主机/存储之间的缓存。
  主机端缓存:主机的不同层级都可以实现缓存。有些可用机器RAM作缓存,这时数据只在内存总线移动而不经PCI总线,所以速度最快。RAM比最快的PCIe的NVMe存储还快上千倍。
  接下来是基于DIMM的存储,例如Intel和Micron共同开发的3D-XPoint,还有Diablo的Memory1。这些介质不是RAM,但利用内存总线,所以性能虽然低于RAM,但仍比任何基于PCIe的存储好很多,且比同价格RAM的容量大至少10倍。这之后是PCIe型NVMe闪存,和具有内置缓存的HBA和网卡。
  主机端缓存的弊端是软件依赖。以上诸多种类缓存的实现,有些要比其他透明。HBA和网卡在各自的板载内存上缓存数据,主机通过标准通用的驱动程序控制硬件工作,其配置缓存的过程很透明。内存型计算、NVDIMM和PCIe NVMe,需要在OS或应用层安装专有缓存软件,因此故障隐患或性能下降的可能性更高。
  专有缓存设备:这些设备位于主机与存储之间,对OS和应用完全透明。其硬件升级也完全无关于主机运行状态。和RAM和NVDIMM比性能和延时要弱很多,但若应用的延时需求在微秒范围,便可利用这种专有缓存设备来显著提升性能。
  分层种类
  分层存储优化技术,初现于世纪之交,首先在硬盘上实现。15,000转硬盘作为第一级,10,000转第二级,7,200转第三级,每一层都比上面层更慢,但更便宜。SSD出现后,变成了第零级(这样做是为了不必重构现有定义)。但从那时起,更快的SSD、NVDIMM、甚至DRAM型缓存技术的出现,以及更慢的云存储、冷存储、磁带的介入,让分层的级别不断增加,事情也变得越来越乱。
  存储管理和存储虚拟化软件可将数据发至不同层次,过程中完全透明于主机,因此单个目录中的文件可能存储在很多层次,但呈献给OS的只是一个连续的文件夹。
  各种存储管理软件有着不同的分层机制。其一,首先写入最快层,然后未读取的数据渐次移动到更慢层。其二,根据应用类型、目标目录或其他一些预设定的标准,分配不同写入层次。许多SAN系统提供某种形式的自动分层,这比基于卷或LUN的手动分层优势显著。
  最初的自动分层体系使用简单的老化算法,其中主机读来的任何数据自动移至最快层,随即按未访问时间长短渐次移动到更慢、更便宜的层次。同时,预测算法将文件按读取频度分组,并将频度更高的文件移动到更快层。后来的自动分层体系加入了更多细分算法,旨在为最长访问的文件提供更好性能。
  分层系统一般运行在SAN系统上,这意味着不同的存储系统通常有着自己的分层机制。不同的SAN供应商,分层机制亦不同,这意味着采购了多供应商方案的大型企业,要么各自为政地管理不同存储方案,要么需要采购额外的存储管理系统来统领全局。
  自动分层通常提供最佳性能,且近乎无人值守。但是,手动分层更适合一些特定场景。例如,尽管有部分不经常访问的文件,DBA也希望在同一层上保留所有数据库文件,以确保最高性能。对于其他一些只在紧急状况下加载特定文件,或定期为特定任务执行备份维护的应用,将其手动分层到最低性能层,也是可以的。
  数据丢失的不同可能性
  缓存和分层技术带来的不同影响,在灾备/业务连续性管理上体现得最清楚。理论上,当数据最初被写入存储时,写程序会一直等待直到系统确认数据已被成功写入,如果系统故障导致确认无法发出,则写程序会恢复到写入前的状态。但如果数据初始写入地是内存缓存且写程序收到了数据写入的系统确认,但数据在后台写入最终目的地过程中掉电,则数据丢失的可能性大小和采用何种缓存策略相关:
  Write-through缓存:数据读写均经过缓存,但系统一直等待数据从缓存写入到最终(永久)存储后,才发出写入确认。这样确保了数据的完整,但写入延迟较高。当然,读数据时可以直接从缓存拿,所以读取速度将加快。
  Write-around缓存:数据的读写均绕过缓存,直接与最终目的地往来。这种方法与Write-through相比,写性能更高,因为写入不经过缓存层,但读性能受损,因为缓存层没有数据。
  Write-back缓存:数据的读写均经过缓存,一旦数据写入缓存系统就发出写入确认。这种缓存策略提供最好的读写性能,但掉电丢数据的可能性最大。当然,可通过配备电池和额外的闪存缓存层来保证数据安全。
  对于分层存储架构,因为系统直到数据直到写入永久存储层才确认,因此损失的可能性降到最低,但性能比缓存架构也低得多,因为任何永久存储的写入延迟都比内存大很多。
  附加用例
  使用分层或主机端缓存,可以加速几乎任何应用,诀窍是按需选择和优化。例如,加速数据库、媒体服务器或实时分析系统的缓存优化策略是不同的,因为数据随机/顺序性、数据完整性、读取延迟、IOPS、带宽等的要求均不相同。另外需考虑的是实现成本。从$100/GB到$0.1/GB,各种方案都存在,需要选择性价比最高的。
  许多情况下缓存/分层都可以通过较小投资实现极大的性能提升。主机端缓存/零级的SSD,在容量仅为下一级10%-20%时,可将性能提升至少10倍。没有放之四海皆准的标准,必须按照自己的实际需要来配备最佳性价比的加速方案。
      

责任编辑:admin
免责声明:以上内容转载互联网平台或企业单位自行提供,对内容的真实性、准确性和合法性不负责,Voipchina网对此不承担任何法律责任。

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部

上一篇后发能否先至?“中国芯”闪存现..
下一篇短期无法产生收益 紫光国芯终止收..

热门文章

图片主题

最新文章

相关文章

广告位

Copyright@2003-2009 网络通信中国(原VoIP中国) 版权所有
联系方式:503927495@qq.com
  京ICP备05067673号-1 京公网安1101111101259

《合作通告》

本站因快速发展需要,有共赢合作、战略创投意向的个人或机构,请联系咨询:
(电话)010-69397252、13911442656(v)
(邮箱)503927495@qq.com
我知道了