APP下载

闪存部署方案在高校图书馆存储场景中的研究

2018-09-21肖诗伯郭秀英

微型电脑应用 2018年9期
关键词:闪存盘存储系统磁盘

肖诗伯, 郭秀英

(1. 川北医学院 图书馆, 南充 637000; 2. 西南石油大学 经济管理学院, 成都 610500)

0 引言

随着高校图书馆数字资源的存储海量化、数据类型非结构化、读者访问持续性、高并发性以及云计算与云存储、大数据等新技术在高校图书馆中逐步应用。这对数据存储介质的容量、容错能力、响应速度、可靠性、扩展性、管理和运维手段等提出了越来越高的要求。传统旋转磁盘因读写效率低、功耗高、空间需求大、故障随机等缺点,逐渐无法满足新时期下图书馆高性能的数据存储需求,进而影响到读者的资源获取速度,馆员对读者主动服务,馆内核心数据的管理。随着闪存技术的成熟,采用高性能闪存介质来存储数据,可大大提高图书馆服务质量和数据安全性。

1 当前高校图书馆数据存储现状及问题

1.1 现状

当前,高校图书馆的存储系统,从业务应用方面看主要部署于:(1)图书馆传统业务管理:如图书、文献、古籍、资料等传统资源的购借存阅数据的存储和资产管理。这些数据属于图书馆核心数据,对存储系统的容错能力、扩展性有着特殊要求。(2)数字资源存储与服务:如自建数据库、外购数据库、web资源、音视频、电子图书图片、随书光盘等数字资源的存储管理。这些业务属于图书馆数字化服务范畴。它对存储系统的响应速度、可持续性、并发性、存储容量等有较高的要求[1]。(3)各类服务设施的数据存储:如电子阅览室、视频监控、自助存包机、借还机等设备的数据存储和管理。这些业务属于图书馆增值服务范围。上述系统对存储系统有不同的需求。随着图书馆大数据分析的来临,存储系统需要储存海量非结构化数据;支撑分布式计算;承载机器学习等智能算法的高时间复杂度、空间复杂度的计算压力[2]。这对存储系统在响应速度、容错能力、扩展性和传输能力方面提出了更高的要求。而目前几乎均用磁盘作为存储介质,难以适应要求。

1.2 磁盘低性能、低扩展性

传统磁盘,主要为普通SATA磁盘和高性能SAS磁盘两种。但磁盘有局限性:低性能、低扩展性。普通SATA磁盘转速为7500,IOPS(每秒读写操作次数)最高为75至140;而高性能SAS磁盘转速为15000,IOPS最高也仅为175至210。要提高IOPS,缩短寻道时间,只能不断增加磁盘数量,将数据分散存放,利用多个磁头同时读写数据以提高吞吐量。另外,磁盘只能部分填充,导致空间利用率低;同时磁盘故障是随机的、不可预测的,只能用Raid架构来重复备份数据以保证安全。面对图书馆不断增长的数字资源存储规模及高读写速率需求,简单增加磁盘数量的方式因低性能、高空间占用、高功耗、高冷却成本和资金成本而逐渐变得不切实际,选择新存储介质以满足苛刻的海量数据读写需求成为唯一出路。

1.3 磁盘对图书馆服务质量的影响

在数字资源应用场景中:数字资源具有种类多、容量大、流量高等特点。在教学研等环境下,面对高校师生数以万计的高并发、长持续、高流量访问文献、多媒体等服务器,磁盘存储系统的低吞吐量将使读者处于长等待状态中,增加教学研时间成本,降低读者体验。在图书馆关键系统存储场景中,管理员对数据库的增删改检及备份等操作也会因磁盘的低吞吐量增加等待时间、降低工作效率、影响工作质量。

2 闪存及其性能优势

闪存又称固态硬盘,不含有机械活动部件,通过对其内部的微小浮闸晶体管进行充放电实现1bit的“0”和“1”数据存储,高级的晶体管单元可注入高低不同的电压进行区别以实现2至3bit的数据存储,其中浮闸(Floating Gate)是基于电气绝缘层独立的,能保证存储的电子长年不会逸散。不过晶体管经过大量充放电后,其物理特性会出现老化而无法存储电子,但是导致老化失效的充放电次数是在生产晶体管时就能测试出的。因此,后期科学合理的安排各晶体管充放电,避免集中对某区域晶体管反复充放电,实现对晶体管的渐进式消耗,实现寿命最大化并保护数据安全。相比基于物理位移的旋转磁盘,闪存体积更小,容量从100G至TB级均有,单张企业级闪存盘IOPS达7万以上,读写速度达500MB/S以上,功耗10瓦以下,能适应高温及剧烈震动。随着闪存芯片技术不断创新,容量不断增加,价格持续降低,闪存介质逐步进入到服务器端、大规模计算的存储领域中。传统磁盘与闪存盘性能参数对比,如表1所示。

表1 磁盘与闪存盘性能参数对比

闪存在服务器端存储中相比传统磁盘具有4大性能优势:(1) 随机读方面:与内存类似,都以芯片存储数据。同时读取多个数据的指令时,无论数据在芯片中存放的物理位置有多远,都能够以相同的速度提供[3]。同时,闪存是读取指定数据所在整块的内容,当第二次读取数据的存放位置与第一次数据的存放位置都在同一个块中时,第二次可直接从缓存或内存中使用数据。(2) 吞吐量方面:目前闪存系统IOPS高达数万,比磁盘高两个数量级以上。随着闪存芯片密度增加,吞吐量还有很大增长空间。(3) 延时方面:闪存设备的读取延时在50至100微秒之间,比磁盘快100倍。(4) 并行方面:闪存驱动器可以提供多个控制器或者单个高性能控制器。能够满足采用多线程及内核的数据库方案[4]。

3 高校图书馆闪存部署方案

首先分析高校图书馆各类数字化服务对存储设备的不同读写压力。可用五年间每日随机填充指标(RFPD, Random Fill Per Day)来评价存储需求,以选择不同的闪存配置方案。在图书馆中的读密集和读写混合的模式中,闪存能实现更快资源索引和传递,在访问高并发中实现高速响应,解决读者等待。在写密集模式中,闪存的高IOPS可为核心业务数据库提供高速修改、备份和灾难恢复速度。

对于闪存和服务器硬件的组合配置来看,主要有3种方案:一是将闪存安装在服务器PCIe总线上[5];二是将闪存与磁盘组成混合存储后连接服务器硬件;三是组建全闪存阵列连接服务器硬件。这3种方案各有特点、各有适合的图书馆应用场景。

3.1 图书馆PCIe闪存选择方案

该方案是将带有PCIe接口的闪存直接连接在服务器主板的PCIe槽上[6],单台服务器可安装1张或多张PCIe卡。这是离CPU和应用程序最近的距离。在这个路径中,没有适配卡、网络缆线、存储控制器和交换机等。短距离可加速读写,减少延时,扩大访问带宽等所有I/O操作。该模式会消耗少量服务器硬件资源。

中小数据存储对PCIe闪存的选择:在图书馆数据库应用场景中,针对中小数据规模的事务处理单台服务器,如图书馆核心业务服务器、中小型数据库资源服务器,应用PCIe闪存存储数据,其性能会明显优于连接DAS等方案[7]。因为:一方面PCIe闪存省去了光纤通道,通过板卡内置高效传输通道直接实现与CPU之间的高性能数据传输;另一方面,在执行应用负载并存储数据业务上,PCIe闪存性能更高、延迟和协议成本更低。

大规模存储对PCIe闪存的选择:在图书馆存储中心应用场景中,虽然数据是通过阵列用SAN或NAS模式连接服务器,PCIe闪存无法提供海量存储空间;但PCIe闪存在服务器端可作系统高速缓存。可把基于PCIe闪存的高速缓存看作内存的延伸,缩短应用到共享存储的延时,使数据传输与处理更加直接、高效。其性能可获得几倍提升,还能节省额外的光纤及以太网资源。若将目录和热文件“固定”到高速缓存,则可有效加速数据库。

电子阅览室存储对PCIe闪存的选择图书馆电子阅览室虚拟桌面VDI应用场景中,对于单台服务器可用1或2张PCIe闪存作为服务器高速缓存,配合SSD闪存盘作硬盘,IOPS能达30万以上,可大大提高吞吐量,更快的承载客户端应用。

PCIe闪存部署成本:目前PCIe闪存多采用MLC架构,单张卡的容量在400G至3.2T之间,成本约1至7美元/GB。

3.2 图书馆混合存储选择方案

该方案是闪存+SATA磁盘的组合存储模式,两者通过闪存虚拟加速设备连接服务器及相互通信。在自动层级技术下先由缓存或NAND分层软件层处理读写请求,再分配到闪存或磁盘中作业。在这种方案中根据闪存与磁盘的不同特性进行分工,闪存不单作为附加的存储空间,而是I/O链路中高性能组成部分。

图书馆对混合存储的选择方案:图书馆各类中大型存储场景均可部署混合存储系统。关键是分析图书馆客观条件、读者访问特性、数据读写频率等特点,分开存放相关数据到闪存或磁盘,应用方案有:(1) 以高读者访问速度为侧重的方案:可将闪存作为磁盘缓存,以补偿磁盘缓慢的读取速度。通过算法动态分析和自动处理[8-9],先将所有写操作都写进磁盘中,再分析数据的读取频率,将磁盘中的热门数据转移到闪存上,并实时监控数据热度,及时置换闪存中热度下降的数据。(2) 以硬盘寿命为侧重的方案:可在闪存中存储读操作频繁、写操作少的数据[10]。在磁盘中存放写操作频繁、读操作较少的数据。若存放文献、多媒体等读密集型数据,在保证闪存寿命的同时,也能提供高访问速度。(3) 以低成本为侧重的方案:可在闪存中存放小文件数据,在磁盘中存放大文件数据。这种方案利用当前单位GB下,磁盘价格相对低廉的特性,能最大降低存储系统整体成本。不管采取哪种配置,对运行在混合存储系统上的操作系统和应用程序,一定要考虑到传统磁盘与闪存的性能差异:在存储延迟过程中,在存储设备、软件、CPU之间达到整体一致性。

混合存储部署成本:目前闪存和SAS磁盘价格较接近,SATA磁盘价格较低,采取混合存储方案的成本仅会略高于磁盘阵列,而性能有几倍的提升。以2016年第1、2季度的价格参考[11]:混合存储前期成本在1.6至24美元/GB。运用重复数据删除和数据压缩等技术优化后,能降至0.6至8美元/GB。而传统全磁盘阵列系统,成本在0.5至15美元/GB。

3.3 图书馆全闪存阵列选择方案

全闪存阵列(AFA)是采用闪存介质而无磁盘构成的独立存储阵列,多个闪存盘通过控制器连接服务器。作为对磁盘阵列的替代,AFA同样能运行在DAS、NAS和SAN模式中。图书馆各类规模的数据存储均可运用全闪存阵列。

核心业务数据库对全闪存阵列的选择:在图书馆核心业务数据库运用场景中,AFA不仅能提供大容量存储空间,又能提供高IOPS来满足数据库管理需求,如批量检索、修改和维护;还能对数据进行卷管理、快照和复制等功能。在SAN下运用全闪存阵列时,可单独将索引存储在RAM中,数据存储在闪存中[12]。先通过RAM快速查找索引,然后通过多个闪存盘并行检索数据;同时在RAM中更新索引[13],可减少对闪存擦写次数。配置全闪存阵列的数据库备份时间为磁盘阵列的1/6。让图书馆工作人员更高效的完成核心数据的管理和运维工作资源发布类数据库对全闪存阵列的选择:对图书馆资源发布类数据库而言,面对师生高并发和持续访问及后台管理作业,AFA的高IOPS能充分满足服务器的I/O需求,以减少读者的时间成本。非结构化数据是资源发布类数据库的特色,可用闪存控制器来处理,以取代传统磁盘在数据库引擎层面的工作,闪存控制器不仅效率更高,还减少了服务器硬件压力。通过对各文件标记、压缩等处理后,再存入闪存盘,这样不仅能节省空间容量,提高传输速度,还能降低闪存擦写频率。

电子阅览室存储对全闪存阵列的选择:在图书馆电子阅览室虚拟桌面VDI应用场景中,因不需TB级的大容量存储,可运用数个小容量闪存盘组建阵列,以高IOPS满足客户端需求。基于全闪存阵列的服务器能轻松应对数台桌面同时创建时引起的“启动风暴”,以高开机速度和运行速度服务于读者,而这对磁盘介质来说很难实现。

全闪存阵列部署成本:从最近趋势看,全闪存阵列前期成本在3至15美元/GB。运用重复数据删除、自动精简配置、数据压缩等已成熟的存储效率相关技术压缩优化后,能降至1至8美元/GB。再结合单位美元/IOPS、单位GB/IOPS、功耗和制冷能耗综合衡量成本。最终年均每GB平均成本将有很大性价比。

3.4 分布式系统存储方案

随着大数据分析、云计算在高校图书馆逐步应用,这些系统多采用Hadoop等分布式系统,运行在Linux上;数据库多采用Hbas、Cassandra等。图书馆在构建分布式集群时,单机可将PCIe闪存与低频CPU匹配。运用软件层面的闪存转化层管理各PCIe闪存中的数据,采用远程过程调用方式实现分布式数据通信。这取得均衡性能的同时,有效降低整体系统能耗。在分布式系统硬件层和软件层中设计并实施适合闪存读写调度、协议转换等的处理模式(不同于现行广泛使用的基于传统磁盘模式的I/O等待式处理流),以降低访问延迟,提高带宽,满足图书馆大规模数据分析。

4 闪存可靠性策略

根据图书馆数据存储特色,为提高多个同时运行的闪存盘整体寿命,可从以下两方面设计:

寿命方面:相比磁盘故障的随机、无法预知性,闪存寿命是可监控和干预的。闪存内部由无数微小芯片单元(硅氧化物与浮置栅极)组成,对其充放电来实现数据写入或擦除。多次充放电后,通过的电荷将致其氧化而使芯片单元失灵。目前1个芯片单元的擦写寿命为1万次(MLC方案)或10万次(SLC方案)[14]。图书馆可兼用全局磨损均衡与反磨损均衡[15-16]两种技术。在多个闪存盘同时运行的前期运用全局磨损均衡方案,使各闪存盘磨损进度均衡。进入中期后采用反磨损均衡方案,使各闪存盘出现渐进式差异磨损,让闪存在寿命后期有计划的逐个磨损逐个更换,避免同时坏掉多个闪存盘而导致数据丢失,以保证闪存系统整体稳定性、可靠性和数据的安全性。

备份方面:全闪存阵列无需采取Raid模式,而利用适合闪存高性能的专用数据保护算法,将存储空间分为业务数据区和备份区。采用指纹、镜像压缩等手段快速压缩业务数据来形成备份,其空间需求仅为业务数据的5%。这种备份方案一方面能最大增加闪存盘空间利用率;另一方面因其体积小可快速恢复,能充分应对意外闪存故障。

5 高校图书馆闪存性能测试

5.1 单服务器中PCIe闪存与磁盘的对比测试

根据图书馆中小型单机数据库业务场景,以图书馆关键业务服务器为例,设计一个数据处理模型:将1个70G的关系型数据库连续16次复制、压缩和删除。采用单张PCIe闪存卡与单块1.5K高性能SAS磁盘对比测试,测试中服务器硬件配置相同。通过CPU监控软件观察作业效率,测试结果,如图1所示。

图1 基于闪存与磁盘的CPU作业效率对比图

实验中基于磁盘的CPU其60%时间在等待读写,而基于闪存的CPU读写等待时间仅为15%。PCIe闪存的IOPS为20万,数据库复制时间从磁盘的10分钟缩至2分钟。可见运用PCIe闪存能降低CPU等待时间,提高利用率,让硬件承载更多的计算任务,进而减少服务器总体数量及购买软件许可费用。

5.2 资源数据库中全闪存阵列与磁盘阵列的对比测试

根据图书馆大规模数据存储场景,以图书馆多媒体资源数据库为例,设计一个数据处理模型:空间需求30T、4万IOPS的存储负载。分别设计1套高性能SAS磁盘阵列和1套全闪存阵列(AFA)进行对比测试,结果如表2所示。

可见:(1) 性能方面:全闪存阵列IOPS成倍增长,服务器具有更大的吞吐量,可大幅提高检索下载、读者浏览、多媒体和业务管理等各类数字服务的速度,提升读者体验。(2) 运维和管理方面:全闪存阵列机柜的空间占用仅6个U,相对磁盘阵列空间节省76%,大幅度降低了数据中心的空间需求,可节省不动产成本。(3) 功耗方面:在满负荷情况下全闪存阵列仅为220瓦,相比磁盘阵列可节省94.5%的电力供应,若在待机状态下功耗更可降至20瓦内。在此功耗下全闪存阵列整体的制冷电力需求也将大幅度降低,可减少长期运行成本,在节能减排方面作出巨大贡献。

表2 全闪存阵列与磁盘阵列配置对比数据

5.3 虚拟桌面中全闪存阵列性能测试

根据图书馆中等规模电子阅览室VDI的应用场景,设计同时启动100台Win7桌面的承载模型。闪存阵列采用20张120GB固态硬盘,能提供60万IOPS。通过VmwareView软件评估:当新创建1个Win7虚拟桌面时IOPS峰值为4K,通过桌面克隆100台虚拟桌面全部启动时间为11分钟,最快桌面启动时间可为5秒。

6 总结

闪存存储系统是近几年新兴的存储模式,其成本和可靠性已获得认可。鉴于高校图书馆应用闪存的案例很少,因此本文根据高校图书馆各类数字化服务和管理中对存储设备的高并发、高持续需求。分析了主流闪存系统如何结合高校图书馆不同应用需求来部署,以助图书馆在部署闪存系统时的选型。需要注意的是单一类型的闪存系统无法满足所有需求场景,部署时要考虑存储场景特点与闪存系统软硬件的优化,以及服务器层面的文件作业模式优化,最终实现数据与CPU之间的高速交互,充分发挥闪存特性。闪存对已部署的传统存储系统并不具有破坏性,可采取切换或并行的运行方式。高校图书馆通过部署闪存系统能大大提高服务敏捷性,减少读者与管理人员的等待,提高教学研效率。随着图书馆对存储的性能需求不断提高,闪存技术的不断发展,闪存存储系统定能为高校图书馆数字化建设担负坚强的支撑和切实的保障。

猜你喜欢

闪存盘存储系统磁盘
叶腊石聚合成型及其旋转磁盘的制作方法
分布式存储系统在企业档案管理中的应用
它的好 它的坏 详解动态磁盘
解决Windows磁盘签名冲突
天河超算存储系统在美创佳绩
修改磁盘属性
用低格拯救损坏的闪存盘
检测USB闪存设备
闪存盘巧变软盘“锁”
拒绝写入 闪存盘变身只读盘