一种分布式高性能数据库一体机系统的制作方法

文档序号:10697638阅读:417来源:国知局
一种分布式高性能数据库一体机系统的制作方法
【专利摘要】本发明涉及一种分布式高性能数据库一体机系统,包括数据库一体机和架设在数据库一体机上的辅助模块,数据库一体机包括:用户主机,用于进行业务处理;Oracle应用主机,用于向用户主机并返回处理结果;存储设备,用于存储用户主机所需数据;数据存储网络,用于连接Oracle应用主机和存储设备;辅助模块包括:存储设备管理模块,用于统一调度存储设备;分布式高性能智能存储模块;用于与存储设备管理模块通讯,实现存储设备的分布式高性能智能存储;Oracle主机适配模块,用于将存储设备映射为标准存储硬件资源。与现有技术相比,本发明具有处理数据量大、处理速度快、处理性能强以及可靠性高等优点。
【专利说明】
一种分布式高性能数据库一体机系统
技术领域
[0001 ]本发明涉及Oracle数据库存储管理领域,尤其涉及一种分布式高性能数据库一体机系统。
【背景技术】
[0002]Oracle数据库是Oracle公司推出的十分优秀的DMBS,当前Oracle DBMS以及相关产品几乎在全世界各个工业领域中都有应用。无论大型企业的在线事物处理及数据仓库应用,还是中小型的联机事物处理业务,都有众多Oracle数据库系统成功使用的典范应用。
[0003]为了部署Oracle数据库,最常见的结构为多节点RAC(Real Applicat1nCluster)加共享存储的方式来实现。图1是典型建设方式,包括I为用户主机1、0racle RAC节点2和共享存储设备3,这样的结构模式在数据中心中已经存在十多年,成熟可靠,相当稳定。
[0004]一般选择小型机或者高端PC服务器部署为Oracle RAC Node,也就是常说的数据库高可用节点,通过高速的FC存储网络,访问共享存储设备(Shared Storage)。用户(User)通过TCP/1P网络连接Orac I e数据库的RAC节点,Orac I e RAC节点可以处理结果返回用户,当其中一个数据库节点出现异常时,不影响用户使用。
[0005]新技术高速发展的今天,伴随着数据量的高速增长,产生了海量的数据需要处理,数据规模动辄几十TB,上百TB,甚至达到PB的数据。这种情况下传统的Oracle共享式存储架构就因为有太多的存储输入/输出的等待不仅产生巨大的浪费,同时因产生的性能瓶颈,使得这种低效率架构方式不能满足用户的业务需求。同时这种系统结构的在存储性能、容量扩展和管理方面越来越成为信息化发展的瓶颈。
[0006]当前传统架构下的共享存储设备,即使在大量磁盘支持下,1PS值维持在5?10万/秒。当前FC网路最高能够达到16Gb/s的接口速率,即使中高端的存储,采用多端口并行,其吞吐率也只能到4?5GB/s的水平,这在面对TB级别的数据处理来说,一般业务时间都要超过20小时,明显是无法满足用户业务需求。
[0007]所以,传统OracleRAC结构下的数据库部署模式,在现在大数据量处理中存在较为严重的性能瓶颈问题。

【发明内容】

[0008]本发明的目的是针对上述问题提供一种处理数据量大、处理速度快、处理性能强以及可靠性高的分布式高性能数据库一体机系统。
[0009]为实现本发明所述目的,本发明提供一种分布式高性能数据库一体机系统,包括数据库一体机和架设在数据库一体机上的辅助模块,所述数据库一体机包括:
[0010]用户主机,用于进行业务处理;
[0011]Oracle应用主机,通过TCP/IP网络连接用户主机,用于向用户主机返回处理结果;
[0012]存储设备,用于存储用户主机所需的数据;
[0013]数据存储网络,分别连接Oracle应用主机和存储设备,用于使Oracle应用主机可以访问存储设备;
[0014]所述辅助模块包括:
[0015]存储设备管理模块,架设于存储设备上,用于统一调度存储设备,完成存储设备的基础管理工作;
[0016]分布式高性能智能存储模块,架设于存储设备上,用于与存储设备管理模块通讯,实现存储设备的分布式高性能智能存储;
[0017]Oracle主机适配模块,架设于Oracle应用主机上,用于将存储设备映射为标准存储硬件资源使Oracle应用主机访问存储设备。
[0018]所述Oracle应用主机为开放的X86架构的服务器。
[0019]所述数据存储网络为Inf iniBand网络。
[0020]所述存储设备为分布式高性能并行存储系统,包含多个存储节点,每个存储节点包括PC服务器本地磁盘和相应容量的高性能Flash SSD0
[0021 ]所述存储设备管理模块包括:
[0022]存储调度单元,用于将PC服务器本地磁盘划分为不同的区块,并将各个区块标记为对象数据空间,同时将Flash SSD标记为缓存空间;
[0023]存储通讯单元,用于与分布式高性能智能存储模块通讯,实现对存储设备的高性能智能存储;
[0024]存储驱动单元,用于根据调度单元和通讯单元的命令,实现存储设备的读写操作。
[0025]所述分布式高性能智能存储模块包括:
[0026]通讯单元,用于与存储设备管理模块通讯,实现对存储设备的数据存取操作;
[0027]分布存储单元,用于将数据均匀的分布在所有对象数据空间之中,并根据访问频度调入Flash SSD中,同时在每一个存储节点保留2份或3份数据副本防止节点故障导致数据丢失;
[0028]智能调度单元,用于将故障的PC服务器本地磁盘标记为失效并将该故障磁盘中的数据策略冗余分布至剩余磁盘,并在故障磁盘被替换后重新均匀分布数据。
[0029]所述Inf iniBand网络中的交换机每端口的交换速率为56Gb/s。
[0030]所述每个存储节点包含的PC服务器本地磁盘的数量在12块至24块之间。
[0031]与现有技术相比,本发明具有以下有益效果:
[0032](I)Oracle应用主机采用开放的X86架构的服务器,满足大规模的在TB级数据量以上的0LTP/0LAP应用需要。
[0033](2)数据存储网络选择了技术新颖、网络带宽高、网络延迟小并在超级计算机中广泛应用的Inf iniBand网络交换技术,并采用每端口 56Gb/s的交换速率的交换机,相对传统FC网络交换机带宽提升3.5倍,极大的提高数据库的1吞吐能力。
[0034](3)存储设备为分布式高性能的并行存储系统,相对于传统的专用共享存储架构,存储的1PS和吞吐能力都有了大幅度的提高。
[0035](4)设有高性能智能存储模块,实现了对存储数据的高性能分布,并在存储设备中出现问题时自动按照新的冗余策略分布数据,保证了数据库一体机的高效性。
[0036](5)高性能智能存储模块中对数据设有备份,不存在单点故障,任何一个存储节点的损坏不会影响业务应用,保证了数据库一体机的可靠性。
[0037](6)存储设备管理模块中,引入高性能SSD磁盘及高效率的热点数据缓存技术,使得存储节点同时具备高性能SSD特性和传统磁盘存储特性。
【附图说明】
[0038]图1为传统Oracle RAC架构示意图;
[0039]图2为分布式高性能存储OracleRAC架构示意图;
[0040]图3为本发明的结构不意图;
[0041 ]图4为存储节点内部磁盘管理逻辑示意图;
[0042]图5为缓存管理示意图。
[0043]图中:I为用户主机,2为OracleRAC节点,3为共享存储设备,4为分布式高性能存储系统,5为Oracle主机适配模块,6为分布式高性能智能存储模块,7为存储设备管理模块,8为磁盘管理软件,9为内存DRAM,1为NVDIMM,11为Flash SDD,12为磁盘HDD。
【具体实施方式】
[0044]下面结合附图和具体实施例对本发明进行详细说明。本实施例以本发明技术方案为前提进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
[0045]如图1所示为传统OracleRAC架构,本发明是基于Oracle数据库应用,在保障其Oracle RAC高可用的同时,通过标准硬件上实现一系列新架构软件集成系统,机在开放标准化PC服务器和分布式、高性能软件,组建一套高性能的数据库技术架构。
[0046]如图2-图3所示,本实施例提供一种分布式高性能数据库一体机系统,其存储设备为分布式高性能存储系统4,其核心组件包括Oracle主机适配模块5、分布式高性能智能存储模块6和存储设备管理模块7,通过这些组件的协同工作来完成数据库一体机的协同工作,提升数据库应用性能。
[0047]在本方案中,OracleRAC节点采用开放的X86架构的服务器,满足大规模的OLTP/OLAP应用需要,部署基于Oracle RAC业务应用。数据存储网络选择技术新颖、网络带宽高、网络延迟小,而且在超级计算机中广泛应用的InfiniBand网络交换技术,本方案中采用每端口 56Gb/s的交换速率的交换机,相对传统FC网络交换机网络带宽提升3.5倍,极大的提高数据库的10吞吐能力。
[0048]存储系统应用放弃传统的专用共享存储架构,通过使用开放的标准化PC服务器本地磁盘的模式来充当存储节点,建立一个分布式高性能的并行存储系统。新型分布式高性能存储用PC服务器节点将拥有12?24块物理磁盘,并且配置相应容量的高性能Flash SSD0通过存储节点内部的热点数据缓存调度优化技术,提升存储的1PS和吞吐能力。
[0049]如图3所示为高性能数据库一体机的技术架构的主要逻辑结构。其中各个模块完成的主要功能如下:
[0050]1、存储设备管理模块
[0051 ]存储设备管理模块(磁盘管理模块)统一调度管理PC服务器的磁盘以及高速FlashSSD的重要组件,完成磁盘的基础管理工作。该模块将本地的磁盘划分成不同的区块(Unit),每一个区块将成为智能存储软件管理的对象数据空间(Data Unit,简称DU),同时将Flash SSD标记为缓存空间(Flash Unit),设备驱动模块同时承担实际的数据写入工作。存储设备管理模块软件负责和分布式高性能智能存储软件通讯。
[0052]如图4所示为本实施例使用的混合存储介质访问的数据迀移,在存储节点配置缓存是提高存储系统性能的重要方法。通过将共享数据临时存储在高速的DRAM内存中,海量共享数据的操作速度得到显著提升。尽管具有纳秒(ns)级的读写速度,DRAM较低的存储容量和高昂的成本限制了其用于大规模缓存来提升HDD读写访问的能力。Flash SSD(闪存固态硬盘)作为新型存储介质,具有功耗小、速度快、容量大的优势,其成本和性能介于DRAM和HDD之间,因此可以作为DRAM与HDD之间的二级缓存,来有效提高I/O带宽和10PS。尽管FlashSSD作为缓存非常具有吸引力,但其在读写操作上存在较大的不对称性(S卩读远快于写),闪存的擦除次数有限。现有的缓存内容替换算法主要针对于DRAM操作,较少考虑闪存作为缓存的特征,以及多级缓存的架构。因此,本实施例基于业务特性,联合设计两级缓存管理策略。
[0053]2、分布式高性能智能存储软件
[0054]分布式高性能智能存储软件是整个数据存储过程的核心所在。智能存储软件负责了多存储节点数据的性能均衡分布存储,将数据均匀的分布在所有的DU之中,并且将数据根据访问频度调入Flash SSD中,提高系统整体访问性能。
[0055]分布式高性能智能存储软件的另一大功能是负责数据的可靠性,智能存储软件根据服务策略,会在不同的存贮节点间保留2?3份数据副本,从而保证当一个节点故障时,既不会引起数据的任何丢失,又不影响上层数据库节点应用。同样,当单一磁盘发生故障的时候,智能存储软件会将故障磁盘标记为失效状态的同时数据在剩余的磁盘中进一步策略冗余分布,以保证数据的可靠性。当故障磁盘被替换后,自动的完成新加入磁盘数据的均衡分布,恢复初始状态。分布式高性能智能存储软件负责与存储设备管理模块和设备驱动模块相互通讯,协调完成数据的存取。
[0056]因此,本实施例基于业务特性,联合设计缓存管理策略。如图5所示,针对DRAM较低的容量和Flash SSD写操作上不足,引入由DRAM和非易失性内存芯片构成的超级内存NVDIMM,设计新型的读写分离技术。设计新型的读写分离方法:针对金融数据业务具有较多的、随机的小文件写操作特点,引入超级内存NVDMM。易失性的DRAM将小的脏数据先写入非易失性的NVDI丽,当NVDI丽的脏数据汇集到一定的阈值再将连续块批量写入HDD,随机块写入Flash SSD。本实施例与DRAM到HDD的直接写入相比,显著降低了 I/O操作次数;与DRAM到Flash SSD的写入相比,降低了对Flash SSD的擦除次数,提高了数据一致性。NVDIMM主要用于HDD的写缓存,而Flash SDD主要用于HDD的读缓存,从而实现了较大程度上的读写操作分离。
[0057]3、Orac Ie主机适配软件
[0058]Oracle数据库并不能直接识别后端分布式高性能存储系统,所以需要在Oracle应用主机中部署Orac I e主机适配软件。通过Orac I e主机适配软件将分布式高性能存储映射为标准存储硬件资源,即映射传统Oracle ASM可识别的标准磁盘。使得Oracle应用主机就不需要做任何改动,直接通过该软件模块访问存储硬件资源。Oracle主机适配软件模块负责和分布式高性能智能存储软件通讯。
[0059]通过上述存储设备管理模块、分布式高性能智能存储软件模块和Oracle主机适配软件模块的有机组合,以开放式标准化PC服务器为基础,以数据存储的高效率和可靠性的分布式高性能智能存储软件为核心,结合高速的Flash SSD、高速、低延迟的Inf iniBand交换机。通过软硬件整合创新,达到了远超传统主机和存储系统数据库结构的性能,简化管理负担。
【主权项】
1.一种分布式高性能数据库一体机系统,包括数据库一体机和架设在数据库一体机上的辅助模块,其特征在于,所述数据库一体机包括: 用户主机,用于进行业务处理; Oracle应用主机,通过TCP/IP网络连接用户主机,用于向用户主机返回处理结果; 存储设备,用于存储用户主机所需的数据; 数据存储网络,分别连接Oracle应用主机和存储设备,用于使Oracle应用主机可以访问存储设备; 所述辅助模块包括: 存储设备管理模块,架设于存储设备上,用于统一调度存储设备,完成存储设备的基础管理工作; 分布式高性能智能存储模块,架设于存储设备上,用于与存储设备管理模块通讯,实现存储设备的分布式高性能智能存储; Oracle主机适配模块,架设于Oracle应用主机上,用于将存储设备映射为标准存储硬件资源使Oracle应用主机访问存储设备。2.根据权利要求1所述的分布式高性能数据库一体机系统,其特征在于,所述Oracle应用主机为开放的X86架构的服务器。3.根据权利要求1所述的分布式高性能数据库一体机系统,其特征在于,所述数据存储网络为InfiniBand网络。4.根据权利要求1所述的分布式高性能数据库一体机系统,其特征在于,所述存储设备为分布式高性能并行存储系统,包含多个存储节点,每个存储节点包括PC服务器本地磁盘和相应容量的高性能Flash SSD05.根据权利要求4所述的分布式高性能数据库一体机系统,其特征在于,所述存储设备管理模块包括: 存储调度单元,用于将PC服务器本地磁盘划分为不同的区块,并将各个区块标记为对象数据空间,同时将Flash SSD标记为缓存空间; 存储通讯单元,用于与分布式高性能智能存储模块通讯,实现对存储设备的高性能智能存储; 存储驱动单元,用于根据调度单元和通讯单元的命令,实现存储设备的读写操作。6.根据权利要求5所述的分布式高性能数据库一体机系统,其特征在于,所述分布式高性能智能存储模块包括: 通讯单元,用于与存储设备管理模块通讯,实现对存储设备的数据存取操作; 分布存储单元,用于将数据均匀的分布在所有对象数据空间之中,并根据访问频度调入Flash SSD中,同时在每一个存储节点保留2份或3份数据副本防止节点故障导致数据丢失; 智能调度单元,用于将故障的PC服务器本地磁盘标记为失效并将该故障磁盘中的数据策略冗余分布至剩余磁盘,并在故障磁盘被替换后重新均匀分布数据。7.根据权利要求3所述的分布式高性能数据库一体机系统,其特征在于,所述Inf iniBand网络中的交换机每端口的交换速率为56Gb/s。8.根据权利要求4所述的分布式高性能数据库一体机系统,其特征在于,所述每个存储节点包含的PC服务器本地磁盘的数量在12块至24块之间。
【文档编号】G06F17/30GK106066890SQ201610427650
【公开日】2016年11月2日
【申请日】2016年6月16日 公开号201610427650.3, CN 106066890 A, CN 106066890A, CN 201610427650, CN-A-106066890, CN106066890 A, CN106066890A, CN201610427650, CN201610427650.3
【发明人】游录金, 叶磊, 彭俊杰, 夏浩, 焦圣品, 钱忠宝
【申请人】上海天玑科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1