一种可灵活配置的数据库分层存储优化方法

文档序号:9887820阅读:398来源:国知局
一种可灵活配置的数据库分层存储优化方法
【技术领域】
[0001] 本发明涉及数据库存储技术领域,涉及一种数据库存储优化方法,尤其涉及一种 可灵活配置的数据库分层存储优化方法。
[0002]
【背景技术】
[0003] 通常,存储介质的用途主要包括两类:缓存数据:为CHJ高速计算缓存数据,例如 DRAM;存储数据:永久保存应用数据,例如HDD;当前的主流存储介质主要有DRAM、NVM、SSD和 HDD,它们的特征对比如下表1所示: 表1当前主流存储介质特征对比表
上表1中DRAM和NVM都属于内存设备,价格昂贵,存取单位是字节,在数据库运行中常用 于缓存数据,二者的主要区别包括:DRAM和NVM存取速度都很快,NVM具有非易失性,而DRAM 没有,因此在数据库中DRAM和NVM都可用于缓存数据,而NVM还可用于永久存储数据;NVM的 存储容量比DRAM大;DRAM的存取速度比NVM稍快,因此更适合缓存最活跃的数据。
[0004] 上表1中SSD和HDD都属于硬盘设备,存储容量比内存设备要大很多,具有非易失 性,常用于永久存储数据,二者的主要区别包括:SSD的10随机存取速度比HDD快很多;SSD的 存储容量比HDD小;SSD的价格比HDD贵。
[0005] 传统数据库一般只支持DRAM和HDD,而还不支持NVM和SSD等新型存储介质。其中, 前者用于CPU计算时缓存数据,后者用于永久存储数据。并且,数据库对应用数据的存储管 理一般都是自动实现,用户不能灵活配置各自的数据存储管理方式。
[0006] 传统数据库的性能瓶颈主要体现在内存容量不足,内存和硬盘的10存取速度不匹 配等方面,具体如下: 在内存上,传统数据库主要采用DRAM内存,它的主要问题包括:容量小,不能缓存大量 的计算数据,从而限制CPU的处理能力;易失性,一旦断电则可能导致DRAM上缓存的数据丢 失,因此为保障数据可靠性,更新后的数据应及时地存储到硬盘等永久介质上,这易导致 CHJ计算受阻;换句话说,当前内存的主要问题是容量小和易失性问题。
[0007] 在硬盘上,传统数据库主要采用HDD硬盘,它的主要问题是:虽然存储容量非常大, 但它的10存取速度,尤其是随机存取速度非常慢。在很多数据库应用中,通常需要大量的索 引扫描,即随机10存取访问。因此,当前硬盘的主要问题是随机存取速度慢问题。
[0008] 综上所述,在传统基于DRAM和HDD方式下,用户是不能设计自己的数据存储方案, 数据存储由系统内部自动实现,即永久数据存储在HDD硬盘上,缓存数据存储在DRAM内存 上。这种方式的主要缺陷包括:因 DRAM和HDD的能力不足,制约CPU处理能力的充分发挥。尤 其是在数据规模和吞吐量要求很高的数据库应用中,10问题会变得更加突出。
[0009]

【发明内容】

[0010] 本发明正是基于以上问题,提供一种可灵活配置的数据库分层存储优化方法,旨 在保护用户已有数据库系统投资前提下,通过数据库内部少量改造和开发新SQL功能提供 数据库存储优化。
[0011] 为实现上述的发明目的,本发明采用的技术方案如下: 本发明所提供一种可灵活配置的数据库分层存储优化方法,包括以下步骤: 提供一 SQL功能,用于支持用户按需灵活配置表、索引和WAL日志的存储管理方式;和用 户利用提供的所述SQL功能,依据应用数据的活跃程度,定制自己的表、索引和WAL日志的存 储管理方式。
[0012]进一步的,所述SQL功能包括:配置表数据、索引数据、WAL日志的内存或硬盘的存 储介质类型,所述存储介质包括DRAM、NVM、SSD和HDD。
[0013]进一步的,所述SQL功能包括:不记录WAL日志的开关。
[0014] 较佳的,通过所述SQL功能,用户设置表存储的硬盘类型,把经常访问表的硬盘类 型设置为SSD,把不经常访问表的硬盘类型设置为HDD。
[0015] 较佳的,通过所述SQL功能,用户设置表缓存的内存类型,把经常访问表的内存类 型设置为DRAM,把不经常访问表的内存类型设置为NVM。
[0016] 较佳的,通过所述SQL功能,用户设置索引存储的硬盘类型,把经常访问索引的硬 盘类型设置为SSD,把不经常访问索引的硬盘类型设置为HDD。
[0017]较佳的,通过所述SQL功能,用户设置索引缓存的内存类型,把经常访问索引的内 存类型设置为DRAM,把不经常访问索引的内存类型设置为NVM。
[0018] 较佳的,通过所述SQL功能,用户依据应用特征决定是否记录WAL日志,把0LAP的表 定义为不记WAL日志,把0LTP的表定义为记WAL日志。
[0019] 较佳的,通过所述SQL功能,用户依据应用特征设置WAL日志存储到NVM或HDD。
[0020] 本发明有益效果:本发明所述的可灵活配置的数据库分层存储优化方法,旨在保 护用户已有数据库系统投资前提下,通过数据库内部少量改造和开发新SQL功能提供一种 数据库存储优化方法,该方法利用当前NVM和SSD等新型存储技术扩展传统数据库的存储管 理能力,有效解决当前数据库的10瓶颈问题,并显著地提升系统的性能。
【附图说明】
[0021] 图1是改造前基于DRAM和HDD的数据库存储管理示意图。
[0022]图2是改造后基于DRAM+NVM+SSD+HDD的数据库分层存储管理示意图; 图3是改造前基于DRAM+HDD架构的SQL语句执行流程图;和 图4是改造后基于DRAM+NVM+SSD+HDD架构的SQL语句执行流程图。
【具体实施方式】
[0023]下面结合附图和实施例对本发明进行详细说明。需要说明的是,如果不冲突,本发 明实施例以及实施例中的各个特征可以相互结合,均在本发明的保护范围之内。
[0024] NVM技术是当前内存领域的新技术,与DRAM相比,它不仅容量大,而且具有非易失 性,因此利用这种内存不仅能提升DRAM的存储容量,还能克服DRAM的易失缺陷。换句话说, NVM既可作为类似DRAM的缓存设备,也可作为类似HDD的永久存储设备。但和硬盘相比,NVM 还很贵且容量小很多,只能作为关键数据的永久存储设备。因此,在实际应用中,可考虑通 过增加 NVM内存扩充DRAM的存储容量,即实现更大的内存,也可考虑把少量影响性能的关键 数据(如数据库的WAL日志)存放到NVM上,这不仅能减少原来把它存到硬盘上的操作,还能 加快WAL日志的处理速度。
[0025] 综上所述,虽然NVM的速度略逊于DRAM,但它具有相对较大的存储容量,适合把活 跃度稍差的数据从DRAM分流到NVM上。不仅如此,NVM的非易失性,使得NVM可以作为永久存 储介质使用,例如可考虑用它存储数据量较小又很重要的WAL日志数据。
[0026]类似NVM,SSD技术是当前硬盘领域的新技术。SSD的主要特点是它的10随机存取速 度和顺序存取速度相当。虽然价格比HDD贵,但它的10随机存储速度比HDD要快很多。在数据 库应用中,依据拇指规则,大多数的SQL语句通常只经常访问少量的活跃数据。因此,可考虑 把活跃数据存储由原来的HDD替换成价格较贵且10处理性能较高的SSD,这种方式不仅可显 著解决数据库的10问题,而且与把HDD全替换成SSD方案相比,还能保护用户的已有投资,成 本相对较小。
[0027] 综上所述,虽然SSD和HDD都可用来永久存储数据,但SSD的10随机存取速度远快于 HDD,因此在随机存取访问速度要求较高的数据库应用中,可用SSD全部或部分替换HDD,例 如只把活跃数据存储从HDD转移到SSD上。
[0028]本发明基于传统数据库的存储管理方式,开发新的SQL功能,这些功能不仅能扩展 数据库的存储介质类型,即支持新型介质NVM和SSD,而且还允许用户灵活配置自己的数据 存储管理方式。本发明开发新的SQL功能如表2所示: 表2新SQL功能列表
通过上表2的SQL功能,用户可根据应用数据特征灵活设计自身的数据存储方案,具体 如下: 通过功能1用户可设置表存储的硬盘类型,例如把经常访问表的硬盘类型设置为SSD, 把不经常访问表(如历史数据)的硬盘类型设置为HDD; 通过功能2用户可设置表缓存的内存类型,例如把经常访问表的内存类型设置为DRAM, 把不经常访问表的内存类型设置为NVM; 通过功能3用户可设置索引存储的硬盘类型,例如把经常访问索引的硬盘类型设置为 SSD,把不经常访问索
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1