一种提升海量存储后端性能的方法

文档序号:8361148阅读:162来源:国知局
一种提升海量存储后端性能的方法
【技术领域】
[0001]本发明涉及服务器数据存储技术领域,特别涉及一种提升海量存储后端性能的方法。
【背景技术】
[0002]在各种应用系统的存储设备上,信息正以数据存储的方式高速增长着,不断推进着全球信息化的进程。随之而来的是海量信息存储的需求不断增加。虽然文件服务器和数据库服务器的存储容量在不断扩充,可还是会碰到空间虽在成倍增长,用户仍会抱怨容量不足的情况,也正是用户对存储空间需求的不断增加,推动海量信息存储技术的不断变化。
[0003]在存储设备发展越来越快的今天,存储系统单盘对外提供的性能要求越来越高,磁盘可长时间持续提供高性能的写入和读出能力也越来越高;而现阶段所使用的方案,是在底层直接使用文件系统存储数据,当前方案主要有存储性能利用率低,长时间运行产生文件碎片的问题。这几个问题影响整体系统的对外吞吐及长时间稳定性。
[0004]为了现有技术解决存储性能利用率低,长时间运行产生文件碎片等问题,本发明提出了一种提升海量存储后端性能的方法。

【发明内容】

[0005]本发明为了弥补现有技术的缺陷,提供了一种简单有效的提升海量存储后端性能的方法。
[0006]本发明是通过如下技术方案实现的:
一种提升海量存储后端性能的方法,其特征在于:包括命令接收模块、缓存管理模块、写入及读取模块、实际物理存储模块,所述命令接收模块接收其他服务的数据操作请求,并根据命令类型分别发送给所述缓存管理模块和写入及读取模块;实际的数据写入及读取请求直接发送给缓存管理模块进行数据读取及写入,数据删除操作直接发送给写入及读取模块。
[0007]所述命令接收模块接收的数据操作请求,包括数据写入、数据读取和数据删除。
[0008]所述缓存管理模块用于管理所有的数据缓存,当有新的数据写入时,根据缓存情况看直接分配新的缓存块或者使用已有的缓存块;同时,定时检查所有数据缓存,当缓存块使用分配时间达到预设上限时,把该数据传入写入及读取模块;当接收到数据读取请求时,通过写入及读取模块进行数据读取,并缓存到内存缓存中。
[0009]所述缓存管理模块,在内部统一管理所有的缓存,而且管理所有缓存的创建时间及修改时间,当第一次修改时间超过一定阙值后,通过提交给写入及读出模块的方式提交任务,让写入及读出模块刷新到磁盘。这个机制可以保证提交任务的顺序性及连续性,充分利用写入及读取模块性能,并且提高数据的连续性。
[0010]所述写入及读取模块用于对数据块进行实际物理管理,管理物理块整体状态;接收上层下发的数据块管理命令,删除数据块、创建数据块等;同时把实际数据读取及写入命令透传给实际物理存储;管理所有的写入及读取命令,保证磁盘发挥出最大能力;另外,还管理所有数据写入顺序,保证磁盘碎片最小化。
[0011]写入及读取模块每次写入数据时按照整块进行写入,当数据不满一块时其他数据按照O填充,充分保证硬盘数据的连续性,减少碎片的产生。写入和读取数据任务按照队列方式提交,保证数据的顺序性。
[0012]实际物理存储模块封装所有文件系统的对外接口,使得整体发明对所有文件系统透明,增加发明适用性。
[0013]本发明的有益效果是:该提升海量存储后端性能的方法,不仅可以保证提交任务的顺序性及连续性,还能充分利用写入及读取模块性能,提高数据的连续性,保证磁盘发挥出最大能力,保证磁盘碎片最小化,进而实现了海量存储整体系统对外吞吐及长时间的稳定性。
【附图说明】
[0014]附图1为本发明中海量存储整体系统模块结构示意图。
【具体实施方式】
[0015]下面结合附图对本发明进行详细说明。
[0016]该提升海量存储后端性能的方法,包括命令接收模块、缓存管理模块、写入及读取模块、实际物理存储模块,所述命令接收模块接收其他服务的数据操作请求,并根据命令类型分别发送给所述缓存管理模块和写入及读取模块;实际的数据写入及读取请求直接发送给缓存管理模块进行数据读取及写入,数据删除操作直接发送给写入及读取模块。
[0017]所述命令接收模块接收的数据操作请求,包括数据写入、数据读取和数据删除。
[0018]所述缓存管理模块用于管理所有的数据缓存,当有新的数据写入时,根据缓存情况看直接分配新的缓存块或者使用已有的缓存块;同时,定时检查所有数据缓存,当缓存块使用分配时间达到预设上限时,把该数据传入写入及读取模块;当接收到数据读取请求时,通过写入及读取模块进行数据读取,并缓存到内存缓存中。
[0019]所述缓存管理模块,在内部统一管理所有的缓存,而且管理所有缓存的创建时间及修改时间,当第一次修改时间超过一定阙值后,通过提交给写入及读出模块的方式提交任务,让写入及读出模块刷新到磁盘。这个机制可以保证提交任务的顺序性及连续性,充分利用写入及读取模块性能,并且提高数据的连续性。
[0020]所述写入及读取模块用于对数据块进行实际物理管理,管理物理块整体状态;接收上层下发的数据块管理命令,删除数据块、创建数据块等;同时把实际数据读取及写入命令透传给实际物理存储;管理所有的写入及读取命令,保证磁盘发挥出最大能力;另外,还管理所有数据写入顺序,保证磁盘碎片最小化。
[0021]写入及读取模块每次写入数据时按照整块进行写入,当数据不满一块时其他数据按照O填充,充分保证硬盘数据的连续性,减少碎片的产生。写入和读取数据任务按照队列方式提交,保证数据的顺序性。
[0022]实际物理存储模块封装所有文件系统的对外接口,使得整体发明对所有文件系统透明,增加发明适用性。
【主权项】
1.一种提升海量存储后端性能的方法,其特征在于:包括命令接收模块、缓存管理模块、写入及读取模块、实际物理存储模块,所述命令接收模块接收其他服务的数据操作请求,并根据命令类型分别发送给所述缓存管理模块和写入及读取模块;实际的数据写入及读取请求直接发送给缓存管理模块进行数据读取及写入,数据删除操作直接发送给写入及读取模块。
2.根据权利要求1所述的提升海量存储后端性能的方法,其特征在于:所述命令接收模块接收的数据操作请求,包括数据写入、数据读取和数据删除。
3.根据权利要求1所述的提升海量存储后端性能的方法,其特征在于:所述缓存管理模块用于管理所有的数据缓存,当有新的数据写入时,根据缓存情况看直接分配新的缓存块或者使用已有的缓存块;同时,定时检查所有数据缓存,当缓存块使用分配时间达到预设上限时,把该数据传入写入及读取模块;当接收到数据读取请求时,通过写入及读取模块进行数据读取,并缓存到内存缓存中。
4.根据权利要求3所述的提升海量存储后端性能的方法,其特征在于:所述缓存管理模块,在内部统一管理所有的缓存,而且管理所有缓存的创建时间及修改时间,当第一次修改时间超过一定阙值后,通过提交给写入及读出模块的方式提交任务,让写入及读出模块刷新到磁盘。
5.根据权利要求1所述的提升海量存储后端性能的方法,其特征在于:所述写入及读取模块用于对数据块进行实际物理管理,管理物理块整体状态;接收上层下发的数据块管理命令,删除数据块、创建数据块等;同时把实际数据读取及写入命令透传给实际物理存储;管理所有的写入及读取命令,保证磁盘发挥出最大能力;另外,还管理所有数据写入顺序,保证磁盘碎片最小化。
6.根据权利要求5所述的提升海量存储后端性能的方法,其特征在于:写入及读取模块每次写入数据时按照整块进行写入,当数据不满一块时其他数据按照O填充,充分保证硬盘数据的连续性,减少碎片的产生。
7.根据权利要求1所述的提升海量存储后端性能的方法,其特征在于:实际物理存储模块封装所有文件系统的对外接口,使得整体发明对所有文件系统透明,增加发明适用性。
【专利摘要】本发明特别涉及一种提升海量存储后端性能的方法。该提升海量存储后端性能的方法,包括命令接收模块、缓存管理模块、写入及读取模块、实际物理存储模块,所述命令接收模块接收其他服务的数据操作请求,并根据命令类型分别发送给所述缓存管理模块和写入及读取模块;实际的数据写入及读取请求直接发送给缓存管理模块进行数据读取及写入,数据删除操作直接发送给写入及读取模块。该提升海量存储后端性能的方法,不仅可以保证提交任务的顺序性及连续性,还能充分利用写入及读取模块性能,提高数据的连续性,保证磁盘发挥出最大能力,保证磁盘碎片最小化,进而实现了海量存储整体系统对外吞吐及长时间的稳定性。
【IPC分类】G06F3-06
【公开号】CN104679449
【申请号】CN201510108084
【发明人】何营
【申请人】浪潮集团有限公司
【公开日】2015年6月3日
【申请日】2015年3月12日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1