一種分布式高性能數(shù)據(jù)庫一體機系統(tǒng)的制作方法
【專利摘要】本發(fā)明涉及一種分布式高性能數(shù)據(jù)庫一體機系統(tǒng),包括數(shù)據(jù)庫一體機和架設在數(shù)據(jù)庫一體機上的輔助模塊,數(shù)據(jù)庫一體機包括:用戶主機,用于進行業(yè)務處理;Oracle應用主機,用于向用戶主機并返回處理結(jié)果;存儲設備,用于存儲用戶主機所需數(shù)據(jù);數(shù)據(jù)存儲網(wǎng)絡,用于連接Oracle應用主機和存儲設備;輔助模塊包括:存儲設備管理模塊,用于統(tǒng)一調(diào)度存儲設備;分布式高性能智能存儲模塊;用于與存儲設備管理模塊通訊,實現(xiàn)存儲設備的分布式高性能智能存儲;Oracle主機適配模塊,用于將存儲設備映射為標準存儲硬件資源。與現(xiàn)有技術相比,本發(fā)明具有處理數(shù)據(jù)量大、處理速度快、處理性能強以及可靠性高等優(yōu)點。
【專利說明】
一種分布式高性能數(shù)據(jù)庫一體機系統(tǒng)
技術領域
[0001 ]本發(fā)明涉及Oracle數(shù)據(jù)庫存儲管理領域,尤其涉及一種分布式高性能數(shù)據(jù)庫一體機系統(tǒng)。
【背景技術】
[0002]Oracle數(shù)據(jù)庫是Oracle公司推出的十分優(yōu)秀的DMBS,當前Oracle DBMS以及相關產(chǎn)品幾乎在全世界各個工業(yè)領域中都有應用。無論大型企業(yè)的在線事物處理及數(shù)據(jù)倉庫應用,還是中小型的聯(lián)機事物處理業(yè)務,都有眾多Oracle數(shù)據(jù)庫系統(tǒng)成功使用的典范應用。
[0003]為了部署Oracle數(shù)據(jù)庫,最常見的結(jié)構(gòu)為多節(jié)點RAC(Real Applicat1nCluster)加共享存儲的方式來實現(xiàn)。圖1是典型建設方式,包括I為用戶主機1、0racle RAC節(jié)點2和共享存儲設備3,這樣的結(jié)構(gòu)模式在數(shù)據(jù)中心中已經(jīng)存在十多年,成熟可靠,相當穩(wěn)定。
[0004]一般選擇小型機或者高端PC服務器部署為Oracle RAC Node,也就是常說的數(shù)據(jù)庫高可用節(jié)點,通過高速的FC存儲網(wǎng)絡,訪問共享存儲設備(Shared Storage)。用戶(User)通過TCP/1P網(wǎng)絡連接Orac I e數(shù)據(jù)庫的RAC節(jié)點,Orac I e RAC節(jié)點可以處理結(jié)果返回用戶,當其中一個數(shù)據(jù)庫節(jié)點出現(xiàn)異常時,不影響用戶使用。
[0005]新技術高速發(fā)展的今天,伴隨著數(shù)據(jù)量的高速增長,產(chǎn)生了海量的數(shù)據(jù)需要處理,數(shù)據(jù)規(guī)模動輒幾十TB,上百TB,甚至達到PB的數(shù)據(jù)。這種情況下傳統(tǒng)的Oracle共享式存儲架構(gòu)就因為有太多的存儲輸入/輸出的等待不僅產(chǎn)生巨大的浪費,同時因產(chǎn)生的性能瓶頸,使得這種低效率架構(gòu)方式不能滿足用戶的業(yè)務需求。同時這種系統(tǒng)結(jié)構(gòu)的在存儲性能、容量擴展和管理方面越來越成為信息化發(fā)展的瓶頸。
[0006]當前傳統(tǒng)架構(gòu)下的共享存儲設備,即使在大量磁盤支持下,1PS值維持在5?10萬/秒。當前FC網(wǎng)路最高能夠達到16Gb/s的接口速率,即使中高端的存儲,采用多端口并行,其吞吐率也只能到4?5GB/s的水平,這在面對TB級別的數(shù)據(jù)處理來說,一般業(yè)務時間都要超過20小時,明顯是無法滿足用戶業(yè)務需求。
[0007]所以,傳統(tǒng)OracleRAC結(jié)構(gòu)下的數(shù)據(jù)庫部署模式,在現(xiàn)在大數(shù)據(jù)量處理中存在較為嚴重的性能瓶頸問題。
【發(fā)明內(nèi)容】
[0008]本發(fā)明的目的是針對上述問題提供一種處理數(shù)據(jù)量大、處理速度快、處理性能強以及可靠性高的分布式高性能數(shù)據(jù)庫一體機系統(tǒng)。
[0009]為實現(xiàn)本發(fā)明所述目的,本發(fā)明提供一種分布式高性能數(shù)據(jù)庫一體機系統(tǒng),包括數(shù)據(jù)庫一體機和架設在數(shù)據(jù)庫一體機上的輔助模塊,所述數(shù)據(jù)庫一體機包括:
[0010]用戶主機,用于進行業(yè)務處理;
[0011]Oracle應用主機,通過TCP/IP網(wǎng)絡連接用戶主機,用于向用戶主機返回處理結(jié)果;
[0012]存儲設備,用于存儲用戶主機所需的數(shù)據(jù);
[0013]數(shù)據(jù)存儲網(wǎng)絡,分別連接Oracle應用主機和存儲設備,用于使Oracle應用主機可以訪問存儲設備;
[0014]所述輔助模塊包括:
[0015]存儲設備管理模塊,架設于存儲設備上,用于統(tǒng)一調(diào)度存儲設備,完成存儲設備的基礎管理工作;
[0016]分布式高性能智能存儲模塊,架設于存儲設備上,用于與存儲設備管理模塊通訊,實現(xiàn)存儲設備的分布式高性能智能存儲;
[0017]Oracle主機適配模塊,架設于Oracle應用主機上,用于將存儲設備映射為標準存儲硬件資源使Oracle應用主機訪問存儲設備。
[0018]所述Oracle應用主機為開放的X86架構(gòu)的服務器。
[0019]所述數(shù)據(jù)存儲網(wǎng)絡為Inf iniBand網(wǎng)絡。
[0020]所述存儲設備為分布式高性能并行存儲系統(tǒng),包含多個存儲節(jié)點,每個存儲節(jié)點包括PC服務器本地磁盤和相應容量的高性能Flash SSD0
[0021 ]所述存儲設備管理模塊包括:
[0022]存儲調(diào)度單元,用于將PC服務器本地磁盤劃分為不同的區(qū)塊,并將各個區(qū)塊標記為對象數(shù)據(jù)空間,同時將Flash SSD標記為緩存空間;
[0023]存儲通訊單元,用于與分布式高性能智能存儲模塊通訊,實現(xiàn)對存儲設備的高性能智能存儲;
[0024]存儲驅(qū)動單元,用于根據(jù)調(diào)度單元和通訊單元的命令,實現(xiàn)存儲設備的讀寫操作。
[0025]所述分布式高性能智能存儲模塊包括:
[0026]通訊單元,用于與存儲設備管理模塊通訊,實現(xiàn)對存儲設備的數(shù)據(jù)存取操作;
[0027]分布存儲單元,用于將數(shù)據(jù)均勻的分布在所有對象數(shù)據(jù)空間之中,并根據(jù)訪問頻度調(diào)入Flash SSD中,同時在每一個存儲節(jié)點保留2份或3份數(shù)據(jù)副本防止節(jié)點故障導致數(shù)據(jù)丟失;
[0028]智能調(diào)度單元,用于將故障的PC服務器本地磁盤標記為失效并將該故障磁盤中的數(shù)據(jù)策略冗余分布至剩余磁盤,并在故障磁盤被替換后重新均勻分布數(shù)據(jù)。
[0029]所述Inf iniBand網(wǎng)絡中的交換機每端口的交換速率為56Gb/s。
[0030]所述每個存儲節(jié)點包含的PC服務器本地磁盤的數(shù)量在12塊至24塊之間。
[0031]與現(xiàn)有技術相比,本發(fā)明具有以下有益效果:
[0032](I)Oracle應用主機采用開放的X86架構(gòu)的服務器,滿足大規(guī)模的在TB級數(shù)據(jù)量以上的0LTP/0LAP應用需要。
[0033](2)數(shù)據(jù)存儲網(wǎng)絡選擇了技術新穎、網(wǎng)絡帶寬高、網(wǎng)絡延遲小并在超級計算機中廣泛應用的Inf iniBand網(wǎng)絡交換技術,并采用每端口 56Gb/s的交換速率的交換機,相對傳統(tǒng)FC網(wǎng)絡交換機帶寬提升3.5倍,極大的提高數(shù)據(jù)庫的1吞吐能力。
[0034](3)存儲設備為分布式高性能的并行存儲系統(tǒng),相對于傳統(tǒng)的專用共享存儲架構(gòu),存儲的1PS和吞吐能力都有了大幅度的提高。
[0035](4)設有高性能智能存儲模塊,實現(xiàn)了對存儲數(shù)據(jù)的高性能分布,并在存儲設備中出現(xiàn)問題時自動按照新的冗余策略分布數(shù)據(jù),保證了數(shù)據(jù)庫一體機的高效性。
[0036](5)高性能智能存儲模塊中對數(shù)據(jù)設有備份,不存在單點故障,任何一個存儲節(jié)點的損壞不會影響業(yè)務應用,保證了數(shù)據(jù)庫一體機的可靠性。
[0037](6)存儲設備管理模塊中,引入高性能SSD磁盤及高效率的熱點數(shù)據(jù)緩存技術,使得存儲節(jié)點同時具備高性能SSD特性和傳統(tǒng)磁盤存儲特性。
【附圖說明】
[0038]圖1為傳統(tǒng)Oracle RAC架構(gòu)示意圖;
[0039]圖2為分布式高性能存儲OracleRAC架構(gòu)示意圖;
[0040]圖3為本發(fā)明的結(jié)構(gòu)不意圖;
[0041 ]圖4為存儲節(jié)點內(nèi)部磁盤管理邏輯示意圖;
[0042]圖5為緩存管理示意圖。
[0043]圖中:I為用戶主機,2為OracleRAC節(jié)點,3為共享存儲設備,4為分布式高性能存儲系統(tǒng),5為Oracle主機適配模塊,6為分布式高性能智能存儲模塊,7為存儲設備管理模塊,8為磁盤管理軟件,9為內(nèi)存DRAM,1為NVDIMM,11為Flash SDD,12為磁盤HDD。
【具體實施方式】
[0044]下面結(jié)合附圖和具體實施例對本發(fā)明進行詳細說明。本實施例以本發(fā)明技術方案為前提進行實施,給出了詳細的實施方式和具體的操作過程,但本發(fā)明的保護范圍不限于下述的實施例。
[0045]如圖1所示為傳統(tǒng)OracleRAC架構(gòu),本發(fā)明是基于Oracle數(shù)據(jù)庫應用,在保障其Oracle RAC高可用的同時,通過標準硬件上實現(xiàn)一系列新架構(gòu)軟件集成系統(tǒng),機在開放標準化PC服務器和分布式、高性能軟件,組建一套高性能的數(shù)據(jù)庫技術架構(gòu)。
[0046]如圖2-圖3所示,本實施例提供一種分布式高性能數(shù)據(jù)庫一體機系統(tǒng),其存儲設備為分布式高性能存儲系統(tǒng)4,其核心組件包括Oracle主機適配模塊5、分布式高性能智能存儲模塊6和存儲設備管理模塊7,通過這些組件的協(xié)同工作來完成數(shù)據(jù)庫一體機的協(xié)同工作,提升數(shù)據(jù)庫應用性能。
[0047]在本方案中,OracleRAC節(jié)點采用開放的X86架構(gòu)的服務器,滿足大規(guī)模的OLTP/OLAP應用需要,部署基于Oracle RAC業(yè)務應用。數(shù)據(jù)存儲網(wǎng)絡選擇技術新穎、網(wǎng)絡帶寬高、網(wǎng)絡延遲小,而且在超級計算機中廣泛應用的InfiniBand網(wǎng)絡交換技術,本方案中采用每端口 56Gb/s的交換速率的交換機,相對傳統(tǒng)FC網(wǎng)絡交換機網(wǎng)絡帶寬提升3.5倍,極大的提高數(shù)據(jù)庫的10吞吐能力。
[0048]存儲系統(tǒng)應用放棄傳統(tǒng)的專用共享存儲架構(gòu),通過使用開放的標準化PC服務器本地磁盤的模式來充當存儲節(jié)點,建立一個分布式高性能的并行存儲系統(tǒng)。新型分布式高性能存儲用PC服務器節(jié)點將擁有12?24塊物理磁盤,并且配置相應容量的高性能Flash SSD0通過存儲節(jié)點內(nèi)部的熱點數(shù)據(jù)緩存調(diào)度優(yōu)化技術,提升存儲的1PS和吞吐能力。
[0049]如圖3所示為高性能數(shù)據(jù)庫一體機的技術架構(gòu)的主要邏輯結(jié)構(gòu)。其中各個模塊完成的主要功能如下:
[0050]1、存儲設備管理模塊
[0051 ]存儲設備管理模塊(磁盤管理模塊)統(tǒng)一調(diào)度管理PC服務器的磁盤以及高速FlashSSD的重要組件,完成磁盤的基礎管理工作。該模塊將本地的磁盤劃分成不同的區(qū)塊(Unit),每一個區(qū)塊將成為智能存儲軟件管理的對象數(shù)據(jù)空間(Data Unit,簡稱DU),同時將Flash SSD標記為緩存空間(Flash Unit),設備驅(qū)動模塊同時承擔實際的數(shù)據(jù)寫入工作。存儲設備管理模塊軟件負責和分布式高性能智能存儲軟件通訊。
[0052]如圖4所示為本實施例使用的混合存儲介質(zhì)訪問的數(shù)據(jù)迀移,在存儲節(jié)點配置緩存是提高存儲系統(tǒng)性能的重要方法。通過將共享數(shù)據(jù)臨時存儲在高速的DRAM內(nèi)存中,海量共享數(shù)據(jù)的操作速度得到顯著提升。盡管具有納秒(ns)級的讀寫速度,DRAM較低的存儲容量和高昂的成本限制了其用于大規(guī)模緩存來提升HDD讀寫訪問的能力。Flash SSD(閃存固態(tài)硬盤)作為新型存儲介質(zhì),具有功耗小、速度快、容量大的優(yōu)勢,其成本和性能介于DRAM和HDD之間,因此可以作為DRAM與HDD之間的二級緩存,來有效提高I/O帶寬和10PS。盡管FlashSSD作為緩存非常具有吸引力,但其在讀寫操作上存在較大的不對稱性(S卩讀遠快于寫),閃存的擦除次數(shù)有限。現(xiàn)有的緩存內(nèi)容替換算法主要針對于DRAM操作,較少考慮閃存作為緩存的特征,以及多級緩存的架構(gòu)。因此,本實施例基于業(yè)務特性,聯(lián)合設計兩級緩存管理策略。
[0053]2、分布式高性能智能存儲軟件
[0054]分布式高性能智能存儲軟件是整個數(shù)據(jù)存儲過程的核心所在。智能存儲軟件負責了多存儲節(jié)點數(shù)據(jù)的性能均衡分布存儲,將數(shù)據(jù)均勻的分布在所有的DU之中,并且將數(shù)據(jù)根據(jù)訪問頻度調(diào)入Flash SSD中,提高系統(tǒng)整體訪問性能。
[0055]分布式高性能智能存儲軟件的另一大功能是負責數(shù)據(jù)的可靠性,智能存儲軟件根據(jù)服務策略,會在不同的存貯節(jié)點間保留2?3份數(shù)據(jù)副本,從而保證當一個節(jié)點故障時,既不會引起數(shù)據(jù)的任何丟失,又不影響上層數(shù)據(jù)庫節(jié)點應用。同樣,當單一磁盤發(fā)生故障的時候,智能存儲軟件會將故障磁盤標記為失效狀態(tài)的同時數(shù)據(jù)在剩余的磁盤中進一步策略冗余分布,以保證數(shù)據(jù)的可靠性。當故障磁盤被替換后,自動的完成新加入磁盤數(shù)據(jù)的均衡分布,恢復初始狀態(tài)。分布式高性能智能存儲軟件負責與存儲設備管理模塊和設備驅(qū)動模塊相互通訊,協(xié)調(diào)完成數(shù)據(jù)的存取。
[0056]因此,本實施例基于業(yè)務特性,聯(lián)合設計緩存管理策略。如圖5所示,針對DRAM較低的容量和Flash SSD寫操作上不足,引入由DRAM和非易失性內(nèi)存芯片構(gòu)成的超級內(nèi)存NVDIMM,設計新型的讀寫分離技術。設計新型的讀寫分離方法:針對金融數(shù)據(jù)業(yè)務具有較多的、隨機的小文件寫操作特點,引入超級內(nèi)存NVDMM。易失性的DRAM將小的臟數(shù)據(jù)先寫入非易失性的NVDI麗,當NVDI麗的臟數(shù)據(jù)匯集到一定的閾值再將連續(xù)塊批量寫入HDD,隨機塊寫入Flash SSD。本實施例與DRAM到HDD的直接寫入相比,顯著降低了 I/O操作次數(shù);與DRAM到Flash SSD的寫入相比,降低了對Flash SSD的擦除次數(shù),提高了數(shù)據(jù)一致性。NVDIMM主要用于HDD的寫緩存,而Flash SDD主要用于HDD的讀緩存,從而實現(xiàn)了較大程度上的讀寫操作分離。
[0057]3、Orac Ie主機適配軟件
[0058]Oracle數(shù)據(jù)庫并不能直接識別后端分布式高性能存儲系統(tǒng),所以需要在Oracle應用主機中部署Orac I e主機適配軟件。通過Orac I e主機適配軟件將分布式高性能存儲映射為標準存儲硬件資源,即映射傳統(tǒng)Oracle ASM可識別的標準磁盤。使得Oracle應用主機就不需要做任何改動,直接通過該軟件模塊訪問存儲硬件資源。Oracle主機適配軟件模塊負責和分布式高性能智能存儲軟件通訊。
[0059]通過上述存儲設備管理模塊、分布式高性能智能存儲軟件模塊和Oracle主機適配軟件模塊的有機組合,以開放式標準化PC服務器為基礎,以數(shù)據(jù)存儲的高效率和可靠性的分布式高性能智能存儲軟件為核心,結(jié)合高速的Flash SSD、高速、低延遲的Inf iniBand交換機。通過軟硬件整合創(chuàng)新,達到了遠超傳統(tǒng)主機和存儲系統(tǒng)數(shù)據(jù)庫結(jié)構(gòu)的性能,簡化管理負擔。
【主權項】
1.一種分布式高性能數(shù)據(jù)庫一體機系統(tǒng),包括數(shù)據(jù)庫一體機和架設在數(shù)據(jù)庫一體機上的輔助模塊,其特征在于,所述數(shù)據(jù)庫一體機包括: 用戶主機,用于進行業(yè)務處理; Oracle應用主機,通過TCP/IP網(wǎng)絡連接用戶主機,用于向用戶主機返回處理結(jié)果; 存儲設備,用于存儲用戶主機所需的數(shù)據(jù); 數(shù)據(jù)存儲網(wǎng)絡,分別連接Oracle應用主機和存儲設備,用于使Oracle應用主機可以訪問存儲設備; 所述輔助模塊包括: 存儲設備管理模塊,架設于存儲設備上,用于統(tǒng)一調(diào)度存儲設備,完成存儲設備的基礎管理工作; 分布式高性能智能存儲模塊,架設于存儲設備上,用于與存儲設備管理模塊通訊,實現(xiàn)存儲設備的分布式高性能智能存儲; Oracle主機適配模塊,架設于Oracle應用主機上,用于將存儲設備映射為標準存儲硬件資源使Oracle應用主機訪問存儲設備。2.根據(jù)權利要求1所述的分布式高性能數(shù)據(jù)庫一體機系統(tǒng),其特征在于,所述Oracle應用主機為開放的X86架構(gòu)的服務器。3.根據(jù)權利要求1所述的分布式高性能數(shù)據(jù)庫一體機系統(tǒng),其特征在于,所述數(shù)據(jù)存儲網(wǎng)絡為InfiniBand網(wǎng)絡。4.根據(jù)權利要求1所述的分布式高性能數(shù)據(jù)庫一體機系統(tǒng),其特征在于,所述存儲設備為分布式高性能并行存儲系統(tǒng),包含多個存儲節(jié)點,每個存儲節(jié)點包括PC服務器本地磁盤和相應容量的高性能Flash SSD05.根據(jù)權利要求4所述的分布式高性能數(shù)據(jù)庫一體機系統(tǒng),其特征在于,所述存儲設備管理模塊包括: 存儲調(diào)度單元,用于將PC服務器本地磁盤劃分為不同的區(qū)塊,并將各個區(qū)塊標記為對象數(shù)據(jù)空間,同時將Flash SSD標記為緩存空間; 存儲通訊單元,用于與分布式高性能智能存儲模塊通訊,實現(xiàn)對存儲設備的高性能智能存儲; 存儲驅(qū)動單元,用于根據(jù)調(diào)度單元和通訊單元的命令,實現(xiàn)存儲設備的讀寫操作。6.根據(jù)權利要求5所述的分布式高性能數(shù)據(jù)庫一體機系統(tǒng),其特征在于,所述分布式高性能智能存儲模塊包括: 通訊單元,用于與存儲設備管理模塊通訊,實現(xiàn)對存儲設備的數(shù)據(jù)存取操作; 分布存儲單元,用于將數(shù)據(jù)均勻的分布在所有對象數(shù)據(jù)空間之中,并根據(jù)訪問頻度調(diào)入Flash SSD中,同時在每一個存儲節(jié)點保留2份或3份數(shù)據(jù)副本防止節(jié)點故障導致數(shù)據(jù)丟失; 智能調(diào)度單元,用于將故障的PC服務器本地磁盤標記為失效并將該故障磁盤中的數(shù)據(jù)策略冗余分布至剩余磁盤,并在故障磁盤被替換后重新均勻分布數(shù)據(jù)。7.根據(jù)權利要求3所述的分布式高性能數(shù)據(jù)庫一體機系統(tǒng),其特征在于,所述Inf iniBand網(wǎng)絡中的交換機每端口的交換速率為56Gb/s。8.根據(jù)權利要求4所述的分布式高性能數(shù)據(jù)庫一體機系統(tǒng),其特征在于,所述每個存儲節(jié)點包含的PC服務器本地磁盤的數(shù)量在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
【發(fā)明人】游錄金, 葉磊, 彭俊杰, 夏浩, 焦圣品, 錢忠寶
【申請人】上海天璣科技股份有限公司