一种计算机存储加速系统及其优化方法技术方案

技术编号:13084290 阅读:118 留言:0更新日期:2016-03-30 15:53
本发明专利技术公开了一种计算机存储加速系统及其优化方法,所述系统包括国产计算机主板,国产计算机主板通过SATA、SAS或PCI-E接口连接有SSD等高速存储设备,作为文件系统和底层存储设备之间的缓存设备。所述优化方法采用基于Linux内核开发的国产操作系统,通过内核加载高速缓存模块Flashcache,利用该模块实现将低速存储介质上的数据缓存到高速存储介质上;为读缓存未命中时增加预读机制,以提升后续读写操作的命中率,本发明专利技术通过高速存储介质优秀的读写能力来提升存储系统的性能,并通过改良高速缓存模块的缓存方法,来进一步增加读写性能。

【技术实现步骤摘要】

本专利技术涉及一种存储加速系统,特别涉及国产计算机针对海量数据且热门数据较多的应用环境下,提高读性能的存储加速系统及其优化方法。
技术介绍
随着国家科技信息安全意识的不断提高,计算机的自主可控逐渐被提上日程,但其国产计算机仍处起步阶段,与主流水平存在一定差距。然而,近几年来随着计算机和信息技术的迅猛发展和普及应用,行业应用系统的规模迅速扩大,行业应用所产生的数据呈爆炸性增长。面对如此海量的数据,如果将其全部放在大容量的SATA、SAS盘上时,会发现性能(响应时间)不够;如果全放在固态硬盘(SSD)上时,又会发现成本很高。而现在的大数据具有一个普遍特点,即大部分数据都会束之高阁封尘千年,只有少部分数据才会频繁访问使用。如何提高国产计算机的存储读写能力成为研究的重点之一。多年来硬件技术不断向前发展,但各类硬件的发展速度却不尽相同。尤以CPU和磁盘最为明显,两者之间速度落差的不断增大导致磁盘单位容量的I/O性能越来越低。但随着闪存技术的进步,SSD的性价比逐渐提高,而且其高性能,低功耗,无噪音的特性对于大型存储系统有着极大的吸引力。即使如此,SSD的高价格与低容量仍然是制约其大规模应用的主要原因,例如一个32GBSSD大约花费12美元每GB,这比典型的传统商用硬盘贵了接近100倍。建立一个只有1TB的服务器,需要32个SSD,仅硬盘就要花费12000美元。所以目前SSD并不能完全代替传统硬盘,但是我们可以用它来增强传统硬盘的性能,将SSD作为存储系统中的二级缓存,储存常用数据来加速访问,降低用户的I/O请求直接与机械式磁盘的交互,并通过与基于SSD的缓存交互提高I/O效率,以此达到性能与价格的兼顾。在计算机系统中,缓存(cache)的魔爪无处不在。CPU中有一级缓存(L1cache)、二级缓存(L2cache)甚至三级缓存(L3cache),Linux有页高速缓冲存储器(pagecache),MySQL有高速缓冲存储器(buffercache/querycache),IO系统中Raid卡/磁盘也有缓存(cache),在大型互联网系统中,数据库前面一般也都有一层高速缓存系统memcache。缓存(cache)是容量与性能之前取平衡的结果,以更低的成本,获得更高的收益,是系统设计时应该遵循的原则。所以,毫无疑问基于SSD的缓存技术成为一种更好的加速方案。Flashcache是Facebook技术团队的又一力作,最初是为加速MySQL设计的。由于Flashcache是在Linux层面的,所以任何受磁盘IO困绕的软件或应用都可以方便的使用之。Flashcache一个非常不错的软件(准确的说是一个Linux的模块),可以动态加载。Flashcache通过在文件系统(VFS)和设备驱动之间新增了一次缓存层,来实现对热门数据的缓存。由此可见Flashcache满足上述加速方案要求,即用SSD作为介质的缓存,通过将传统硬盘上的热门数据缓存到SSD上,然后利用SSD优秀的读性能,来加速系统。这个方法较之内存缓存,没有内存快,但是空间可以比内存大很多。
技术实现思路
本专利技术所解决的技术问题是,针对现有技术的不足,提供一种计算机存储加速系统及其优化方法,能有效提高国产计算机存储系统的性能,尤其应对海量数据且热门数据较多的应用环境。本专利技术所提供的技术方案为:一种计算机存储加速系统,包括国产计算机主板,国产计算机主板通过SATA、SAS或PCI-E接口连接有如SSD、PBlaze3闪存加速卡等高速存储设备,作为文件系统(VFS)和底层存储设备之间的高速缓存设备;所述高速存储设备是指数据读写速度高于传统机械硬盘的存储设备,如SSD、PBlaze3闪存加速卡等。与以往的存储方式相比,本专利技术利用高速存储介质提高了I/O效率,并降低用户I/O请求与机械磁盘直接交互的频次,从而在降低了机械磁盘的故障发生率。所述国产计算机是基于国产自主可控CPU搭建的计算机。通过SATA、SAS或PCI-E等总线增加读写性能明显高于原存储介质(如机械硬盘)的高速存储介质(如SSD、高速缓冲卡),作为存储系统中的高速缓存层。通过扩展国产计算机的存储介质,增加高速缓存层,并通过改良高速缓存模块Flashcache的缓存方法,为读缓存未命中时增加预读机制,以提升后续读写操作的命中率,来进一步增加读写性能。优选地,国产计算机主板通过PCI-E插槽连接有PBlaze3闪存加速卡,作为文件系统(VFS)和底层存储设备之间的缓存设备。一种计算机存储加速系统的优化方法,所述计算机存储加速系统为上述的计算机存储加速系统,其优化方法为:采用基于Linux内核开发的国产操作系统,通过内核加载高速缓存模块Flashcache,实现将底层存储设备(低速存储介质)上的数据缓存到高速存储设备(高速存储介质)上,从而通过高速存储介质优秀的读写能力来提升存储系统的性能。所述高速缓存模块Flashcache通过通用设备映射机制Devicemapper将高速缓存设备和底层存储设备映射为同一逻辑存储设备(层)(MappedDevice),从而通过高速存储介质优秀的读写能力来提升存储系统的性能。所述MappedDevice是作为虚拟的块设备驱动在内核中被注册的,它不是一个真实的设备驱动,不能完成块I/O请求(bio)处理,因此,它主要是基于映射表对bio进行分解、克隆和重映射,然后通过调用某一目标设备驱动target_driver的映射方法,来映射从上层分发下来的bio,找到正确的目标设备(Target_Device),并将bio转发到目标设备的请求队列,启动数据传输,完成操作。当文件系统下发I/O请求时,不再直接访问底层真实存储设备,而是下发到高速缓存设备上,查找数据,如果存在则直接返回给上层,进而提高读写性能,如果不存在则需要将I/O请求再次下发到真实存储设备上查找,如果找到则将数据返回给上一层并把数据写入到高速缓存中。进一步地,当文件系统下发I/O请求(读命令)时,下发到高速缓存设备上,查找目标数据,如果在高速缓存设备上找到目标数据,则直接将目标数据返回给上层文件系统;如果未在高速缓存设备上找到目标数据(即在高速缓存层未命中),则再次下发到底层存储设备上查找,如果找到目标数据(命中),则在将目标数据返回给上层文件系统时,增加预读机制,即根据局部性原理,将目标数据及与目标数据相邻的多个数据块一起缓存到高速缓存设备上,来提升后本文档来自技高网
...

【技术保护点】
一种计算机存储加速系统,包括国产计算机主板,其特征在于,国产计算机主板通过SATA、SAS或PCI‑E接口连接有高速存储设备作为文件系统和底层存储设备之间的缓存设备;所述高速存储设备是指数据读写速度高于传统机械硬盘的存储设备。

【技术特征摘要】
1.一种计算机存储加速系统,包括国产计算机主板,其特征在于,国产计算
机主板通过SATA、SAS或PCI-E接口连接有高速存储设备作为文件系统和底层
存储设备之间的缓存设备;
所述高速存储设备是指数据读写速度高于传统机械硬盘的存储设备。
2.根据权利要求1所述的计算机存储加速系统,其特征在于,国产计算机
主板通过PCI-E插槽连接有PBlaze3闪存加速卡,作为文件系统和底层存储设备
之间的缓存设备。
3.一种计算机存储加速系统的优化方法,其特征在于,所述计算机存储加
速系统为权利要求1或2所述的计算机存储加速系统,其优化方法为:采用基于
Linux内核开发的国产操作系统,通过内核加载缓存模块Flashcache,实现将底
层存储设备...

【专利技术属性】
技术研发人员:王春洁赵丹王建国许新达黄卫邹清扬陈志才
申请(专利权)人:长城信息产业股份有限公司长沙湘计海盾科技有限公司
类型:发明
国别省市:湖南;43

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1