周亞潔
(武漢達(dá)夢(mèng)數(shù)據(jù)庫(kù)有限公司 武漢 430206) (zhouyajie@dameng.com)
數(shù)據(jù)庫(kù)管理系統(tǒng)屬于核心基礎(chǔ)軟件,支撐著各類信息管理應(yīng)用系統(tǒng),對(duì)保障國(guó)家信息安全意義重大.開(kāi)發(fā)國(guó)產(chǎn)數(shù)據(jù)庫(kù)、實(shí)現(xiàn)自主可控一直是中國(guó)數(shù)據(jù)庫(kù)界追求的目標(biāo).20世紀(jì)70年代末,數(shù)據(jù)庫(kù)技術(shù)進(jìn)入中國(guó).在幾十年的發(fā)展過(guò)程中,很多業(yè)內(nèi)的先驅(qū)率先學(xué)習(xí)國(guó)外先進(jìn)的數(shù)據(jù)庫(kù)技術(shù),再通過(guò)消化吸收以及自主創(chuàng)新研制出了多種自主可控的數(shù)據(jù)庫(kù)管理系統(tǒng),實(shí)現(xiàn)了國(guó)產(chǎn)數(shù)據(jù)庫(kù)軟件從零到有的突破.
1988年,作為國(guó)內(nèi)最早研究DBMS的專家馮玉才教授研制出我國(guó)第1個(gè)自主版權(quán)的國(guó)產(chǎn)數(shù)據(jù)庫(kù)管理系統(tǒng)原型CRDS,駁倒了中國(guó)沒(méi)有能力開(kāi)發(fā)國(guó)產(chǎn)的數(shù)據(jù)庫(kù)管理系統(tǒng)的謬論,并在此基礎(chǔ)上將數(shù)據(jù)庫(kù)與人工智能、面向?qū)ο?、地理信息、多媒體、網(wǎng)絡(luò)、圖像、圖形、安全等多個(gè)領(lǐng)域知識(shí)的交叉研究,研制出多種數(shù)據(jù)庫(kù)管理系統(tǒng)的原型及產(chǎn)品[1].與此同時(shí),業(yè)內(nèi)很多同行也在國(guó)內(nèi)開(kāi)展了數(shù)據(jù)庫(kù)技術(shù)的教學(xué)與研究工作.這些初具形態(tài)的國(guó)產(chǎn)數(shù)據(jù)庫(kù)軟件通過(guò)應(yīng)用實(shí)踐逐漸轉(zhuǎn)化成真正的自主可控?cái)?shù)據(jù)庫(kù)產(chǎn)品.
經(jīng)過(guò)多年的數(shù)據(jù)庫(kù)科研經(jīng)驗(yàn)的積累,在國(guó)家高技術(shù)研究發(fā)展計(jì)劃(例如“八六三”計(jì)劃)等一系列政策的支持下,一批優(yōu)秀的研發(fā)成果逐漸被市場(chǎng)認(rèn)可.2000年,在國(guó)家計(jì)委、科技部、信息產(chǎn)業(yè)部、總裝備部、公安部等中央部委、省市政府的支持扶植下,馮玉才教授創(chuàng)建了我國(guó)第1個(gè)數(shù)據(jù)庫(kù)公司——武漢華工達(dá)夢(mèng)數(shù)據(jù)庫(kù)有限公司.此后,國(guó)內(nèi)陸續(xù)成立了一批優(yōu)秀的國(guó)產(chǎn)數(shù)據(jù)庫(kù)企業(yè).國(guó)產(chǎn)數(shù)據(jù)庫(kù)廠商通過(guò)市場(chǎng)化運(yùn)作,10余年來(lái)不斷發(fā)展壯大,在市場(chǎng)上取得接連突破.
近年來(lái),國(guó)家高度重視信息安全問(wèn)題,支持國(guó)產(chǎn)基礎(chǔ)軟件發(fā)展的力度前所未有,出臺(tái)了一系列政策措施加速我國(guó)基礎(chǔ)軟件的發(fā)展.同時(shí),受大數(shù)據(jù)和云計(jì)算服務(wù)日益擴(kuò)展的影響,業(yè)界對(duì)數(shù)據(jù)庫(kù)的需求大幅提高,傳統(tǒng)企業(yè)都開(kāi)始拓展數(shù)據(jù)分析和應(yīng)用端的業(yè)務(wù).根據(jù)賽迪顧問(wèn)《2016—2017中國(guó)平臺(tái)軟件市場(chǎng)研究年度報(bào)告》的數(shù)據(jù)顯示,2016年,中國(guó)數(shù)據(jù)庫(kù)市場(chǎng)整體規(guī)模達(dá)92.85億元,同比升高12個(gè)百分點(diǎn)[2].數(shù)據(jù)庫(kù)管理系統(tǒng)作為信息系統(tǒng)的核心,是國(guó)家戰(zhàn)略必爭(zhēng)的高新技術(shù),是企業(yè)信息系統(tǒng)必不可少的組成部分,具有巨大的市場(chǎng)空間.
國(guó)產(chǎn)自主可控?cái)?shù)據(jù)庫(kù)經(jīng)歷了多年發(fā)展,近年來(lái)取得了一定市場(chǎng)成果,在一些關(guān)鍵、核心的行業(yè)、領(lǐng)域得到了較為成功的應(yīng)用.隨著國(guó)家對(duì)于信息化建設(shè)的自主可控程度的重視,近年來(lái)的信息系統(tǒng)建設(shè)越來(lái)越強(qiáng)調(diào)基于全國(guó)生態(tài)環(huán)境下的信息系統(tǒng)自主可控,整體系統(tǒng)的整合及適配是國(guó)產(chǎn)化未來(lái)深入和推廣的關(guān)鍵.單一層面的國(guó)產(chǎn)化逐步遇到生態(tài)體系支撐乏力的問(wèn)題,整合協(xié)同才能繼續(xù)深入核心應(yīng)用系統(tǒng),以應(yīng)用為角度的各類國(guó)產(chǎn)化產(chǎn)品適配是未來(lái)每個(gè)項(xiàng)目都會(huì)遇到的問(wèn)題[3].
在此過(guò)程中,數(shù)據(jù)庫(kù)管理系統(tǒng)軟件與國(guó)產(chǎn)自主可控的CPU、操作系統(tǒng)、中間件、應(yīng)用軟件等上下游產(chǎn)品進(jìn)行了大量的適配、磨合與優(yōu)化工作,在多個(gè)層面解決了很多問(wèn)題,基本滿足了相關(guān)用戶的需求.但從前期暴露出來(lái)的問(wèn)題,及已有的解決方案來(lái)看,如果要更廣泛地向更核心、更高端的行業(yè)、領(lǐng)域推廣完全自主可控的整體解決方案,仍然存在諸多問(wèn)題,這些問(wèn)題進(jìn)行歸納后主要有以下6個(gè)方面.
從前期已有的各類應(yīng)用試點(diǎn)的實(shí)施過(guò)程來(lái)看,自主可控環(huán)境下存在著性能不足的問(wèn)題,這一問(wèn)題在CPU、操作系統(tǒng)、數(shù)據(jù)庫(kù)、中間件等各環(huán)節(jié)普遍存在.對(duì)于數(shù)據(jù)庫(kù)而言,用戶所面對(duì)的性能問(wèn)題的原因也較為復(fù)雜,常見(jiàn)的有:數(shù)據(jù)庫(kù)軟件針對(duì)自主可控CPU+操作系統(tǒng)進(jìn)行優(yōu)化不足;數(shù)據(jù)庫(kù)軟件在一些功能的技術(shù)實(shí)現(xiàn)上采用了通用的,但更依賴CPU計(jì)算能力的方法;CPU,IO設(shè)備等硬件能力不足;應(yīng)用程序針對(duì)自主可控環(huán)境下的數(shù)據(jù)庫(kù)優(yōu)化不足等.
針對(duì)這些性能問(wèn)題,數(shù)據(jù)庫(kù)廠商一方面需要向應(yīng)用開(kāi)發(fā)商提供技術(shù)支持,使應(yīng)用程序采用良好的數(shù)據(jù)庫(kù)設(shè)計(jì)與優(yōu)化方法,同時(shí)也需要對(duì)部分?jǐn)?shù)據(jù)庫(kù)的內(nèi)部實(shí)現(xiàn)機(jī)制進(jìn)行優(yōu)化,提升自主可控?cái)?shù)據(jù)庫(kù)在自主平臺(tái)下的性能表現(xiàn).
自主可控軟硬件產(chǎn)品起步較晚,整體的功能、性能、可靠性等表現(xiàn)與國(guó)外生態(tài)體系相比尚有差距,因此現(xiàn)階段處于快速迭代階段,存在著新型號(hào)、新版本更新較頻繁的現(xiàn)狀.這一現(xiàn)狀對(duì)于快速提升自主可控生態(tài)的產(chǎn)品技術(shù)水平有較好的幫助,但同時(shí)也造成自主可控軟硬件生態(tài)成員的融合適配處于不穩(wěn)定的狀態(tài).
可以預(yù)見(jiàn)在未來(lái)的一段時(shí)間內(nèi),新的CPU型號(hào)、新的整機(jī)配置、新的操作系統(tǒng)版本、新的數(shù)據(jù)庫(kù)、中間件版本會(huì)不斷涌現(xiàn),因此需要對(duì)新的CPU、操作系統(tǒng)、存儲(chǔ)設(shè)備等產(chǎn)品進(jìn)行及時(shí)的兼容適配和優(yōu)化工作.
另一方面,隨著云計(jì)算、大數(shù)據(jù)等技術(shù)趨勢(shì)的發(fā)展,預(yù)期自主可控產(chǎn)品在未來(lái)幾年將同樣面臨云化、大數(shù)據(jù)處理的需求.如何將現(xiàn)有的自主可控?cái)?shù)據(jù)庫(kù)產(chǎn)品與云計(jì)算和大數(shù)據(jù)需求進(jìn)行結(jié)合發(fā)展,也將成為緊迫的問(wèn)題和需求.
對(duì)于應(yīng)用開(kāi)發(fā)人員而言,一方面由于長(zhǎng)期使用Oracle等軟件產(chǎn)品,已經(jīng)使得開(kāi)發(fā)人員對(duì)相關(guān)產(chǎn)品產(chǎn)生了“粘性”.這體現(xiàn)在對(duì)特定的SQL語(yǔ)法、特定的編程開(kāi)發(fā)接口、應(yīng)用開(kāi)發(fā)框架、形成的大量基于國(guó)外數(shù)據(jù)庫(kù)的可復(fù)用的組件等.另一方面,對(duì)于成熟的數(shù)據(jù)庫(kù)產(chǎn)品而言,保證對(duì)主要標(biāo)準(zhǔn)的符合性是保證滿足絕大多數(shù)應(yīng)用系統(tǒng)的基本條件.因此對(duì)于自主可控?cái)?shù)據(jù)庫(kù)而言,需要在保證主要標(biāo)準(zhǔn)符合性的前提下,盡可能降低應(yīng)用系統(tǒng)開(kāi)發(fā)人員的學(xué)習(xí)和遷移成本.
關(guān)系數(shù)據(jù)庫(kù)的高可擴(kuò)展在以前仍然是一個(gè)相對(duì)冷門的話題,在大數(shù)據(jù)和云計(jì)算時(shí)代到來(lái)之前,傳統(tǒng)的數(shù)據(jù)庫(kù)應(yīng)用場(chǎng)景所需要的數(shù)據(jù)庫(kù)擴(kuò)展能力主要指的是Scale UP能力.而通過(guò)集群進(jìn)行橫向擴(kuò)展則僅限于Oracle的RAC技術(shù),絕大多數(shù)場(chǎng)景下也僅僅需要2~4個(gè)節(jié)點(diǎn)的規(guī)模.
互聯(lián)網(wǎng)的發(fā)展帶來(lái)了云計(jì)算和大數(shù)據(jù)時(shí)代,在此背景下,數(shù)據(jù)庫(kù)也開(kāi)始面臨橫向擴(kuò)展問(wèn)題.尤其是黨政、核心行業(yè)的大數(shù)據(jù)應(yīng)用場(chǎng)景下,如何使得數(shù)據(jù)庫(kù)能夠通過(guò)橫向擴(kuò)展以滿足超大規(guī)模的數(shù)據(jù)存儲(chǔ)、計(jì)算要求,成為數(shù)據(jù)庫(kù)發(fā)展的一個(gè)重要方向[4].
國(guó)產(chǎn)自主可控?cái)?shù)據(jù)庫(kù)近年來(lái)在大規(guī)模并行處理(MPP)數(shù)據(jù)庫(kù)方面做了很多工作,形成了一些相對(duì)原有系統(tǒng)擴(kuò)展能力更大的產(chǎn)品和方案.但由于自主可控生態(tài)產(chǎn)品固有的性能起點(diǎn)較低(如同樣是12個(gè)節(jié)點(diǎn)的MPP,基于X86上的MPP數(shù)據(jù)庫(kù)集群性能顯著優(yōu)于基于自主可控CPU上的MPP數(shù)據(jù)庫(kù)集群),系統(tǒng)對(duì)于擴(kuò)展能力就提出了更高的需求.
由于國(guó)產(chǎn)自主可控?cái)?shù)據(jù)庫(kù)產(chǎn)品長(zhǎng)時(shí)間在相對(duì)低端的應(yīng)用環(huán)境中進(jìn)行推廣,因此對(duì)于數(shù)據(jù)庫(kù)系統(tǒng)的管理和運(yùn)維需求相對(duì)較弱.但近年來(lái)隨著自主可控產(chǎn)品在更多核心行業(yè)的應(yīng)用,系統(tǒng)規(guī)模越來(lái)越大、系統(tǒng)對(duì)運(yùn)維的要求也越來(lái)越高.傳統(tǒng)的基于圖形界面的、一個(gè)實(shí)例一個(gè)實(shí)例的操作方式,已經(jīng)不能滿足大規(guī)模數(shù)據(jù)中心等場(chǎng)景下的運(yùn)維需求.用戶對(duì)于數(shù)據(jù)庫(kù)管理運(yùn)維已經(jīng)提出了運(yùn)維管理集中化、自動(dòng)化的要求.
相對(duì)于國(guó)外數(shù)據(jù)庫(kù)產(chǎn)品,自主可控基礎(chǔ)軟硬件在可控安全方面有一定優(yōu)勢(shì),尤其是在國(guó)家信息系統(tǒng)的安全設(shè)計(jì)方面,具有更全面、更完善的安全機(jī)制設(shè)計(jì).這一優(yōu)勢(shì)在后續(xù)的產(chǎn)品技術(shù)發(fā)展過(guò)程中應(yīng)需要保證投入,以維持現(xiàn)有的高水準(zhǔn).
但同時(shí),隨著自主可控信息產(chǎn)品的更廣泛應(yīng)用,大量的第三方安全廠商、白帽子黑客等技術(shù)力量,將對(duì)自主可控軟硬件產(chǎn)品的漏洞挖掘工作投入更多的關(guān)注和精力,因此更積極地與相關(guān)廠商進(jìn)行聯(lián)系合作,更緊密地與國(guó)內(nèi)各大漏洞平臺(tái)進(jìn)行溝通協(xié)商、更及時(shí)地處理外部發(fā)現(xiàn)的安全漏洞,進(jìn)行補(bǔ)丁開(kāi)發(fā)和版本升級(jí)工作,已逐步成為保證自主可控基礎(chǔ)軟硬件高安全能力的重要任務(wù)[5].
國(guó)產(chǎn)數(shù)據(jù)庫(kù)要實(shí)現(xiàn)國(guó)產(chǎn)化替代,就需要從多個(gè)技術(shù)方向進(jìn)行技術(shù)研發(fā)和技術(shù)更新,以應(yīng)對(duì)出現(xiàn)的需求和問(wèn)題.概括而言,主要有以下幾個(gè)方面.
關(guān)系數(shù)據(jù)庫(kù)的一大應(yīng)用場(chǎng)景是聯(lián)機(jī)事務(wù)處理(OLTP)類業(yè)務(wù).其典型特點(diǎn)是高并發(fā)、短事務(wù)、低延遲.因此需要數(shù)據(jù)庫(kù)對(duì)并發(fā)控制機(jī)制進(jìn)行優(yōu)化,以有效提升高并發(fā)環(huán)境下的事務(wù)吞吐能力;緩存機(jī)制的改進(jìn),特別是針對(duì)高并發(fā)環(huán)境下的緩存讀寫(xiě)沖突、熱點(diǎn)爭(zhēng)用的改進(jìn),能夠有效緩解并發(fā)沖突,提升整體性能[6].
國(guó)外數(shù)據(jù)庫(kù)產(chǎn)品在并發(fā)控制和數(shù)據(jù)緩存方面已經(jīng)非常成熟,尤其是以O(shè)racle為代表的產(chǎn)品,依靠其并發(fā)控制和數(shù)據(jù)緩存機(jī)制,能夠支撐大規(guī)模的并發(fā)訪問(wèn),在銀行、電信等高端應(yīng)用場(chǎng)景下能夠穩(wěn)定高效運(yùn)行.而國(guó)產(chǎn)數(shù)據(jù)庫(kù)在這方面則仍有一定差距,也是中高端業(yè)務(wù)場(chǎng)景對(duì)自主可控產(chǎn)品的顧慮之一.
讀寫(xiě)分離技術(shù)(如圖1所示)是面向高并發(fā),且具有“讀多寫(xiě)少”特點(diǎn)的應(yīng)用場(chǎng)景的高性能、高可用解決方案.通過(guò)將大量讀操作分散到多個(gè)從節(jié)點(diǎn),寫(xiě)入操作集中在主節(jié)點(diǎn),基于日志進(jìn)行主從實(shí)時(shí)數(shù)據(jù)同步,以保證數(shù)據(jù)一致性的思路,能夠很好地降低自主可控服務(wù)器上的業(yè)務(wù)負(fù)載.
國(guó)外數(shù)據(jù)庫(kù)產(chǎn)品尚沒(méi)有成熟的、產(chǎn)品化的讀寫(xiě)分離集群產(chǎn)品.但讀寫(xiě)分離的思想已經(jīng)在各大互聯(lián)網(wǎng)企業(yè),如Facebook、阿里巴巴等,基于中間件層面和應(yīng)用層的設(shè)計(jì),得到較為廣泛應(yīng)用.
而數(shù)據(jù)庫(kù)層實(shí)現(xiàn)讀寫(xiě)分離更有優(yōu)勢(shì),一方面有更好的性能,另一方面可以實(shí)現(xiàn)對(duì)應(yīng)用程序的透明,使得傳統(tǒng)企業(yè)用戶、黨政辦公用戶也能夠在性能相對(duì)較差的自主硬件平臺(tái),利用讀寫(xiě)分離技術(shù)實(shí)現(xiàn)高性能并發(fā)業(yè)務(wù)的支持[7].
圖1 讀寫(xiě)分離架構(gòu)圖
行列融合存儲(chǔ)引擎是指在存儲(chǔ)引擎層面,同時(shí)支持行存儲(chǔ)表與列存儲(chǔ)表2種格式的存儲(chǔ).同時(shí)相應(yīng)地在SQL引擎層面,對(duì)不同格式的表訪問(wèn)操作進(jìn)行封裝,以相同的內(nèi)部數(shù)據(jù)包提供數(shù)據(jù)供SQL引擎使用,從而實(shí)現(xiàn)屏蔽存儲(chǔ)差異的目的.
行列融合是保證數(shù)據(jù)庫(kù)能夠支持聯(lián)機(jī)事務(wù)處理(OLTP)和聯(lián)機(jī)分析處理(OLAP)混合型負(fù)載的重要技術(shù).傳統(tǒng)的數(shù)據(jù)庫(kù)或偏重OLTP,或偏重OLAP.但隨著大數(shù)據(jù)、云計(jì)算的普及、業(yè)務(wù)場(chǎng)景的復(fù)雜化,用戶對(duì)OLTP和OLAP混合負(fù)載的訴求也逐步增加,成為新的趨勢(shì)之一.
傳統(tǒng)的數(shù)據(jù)庫(kù)廠商如Oracle,采用了磁盤(pán)上的行存儲(chǔ)+內(nèi)存中的行列混合存儲(chǔ)的路線.而EMC的Greenplum則直接采用了行列融合技術(shù).在處理混合負(fù)載方面都具有不錯(cuò)的效果.國(guó)內(nèi)產(chǎn)品普遍單一支持行存或列存,為滿足未來(lái)的用戶需求趨勢(shì),有必要向行列融合發(fā)展.
關(guān)系數(shù)據(jù)庫(kù)的傳統(tǒng)核心技術(shù)也是優(yōu)勢(shì)性技術(shù)之一,即為查詢優(yōu)化技術(shù).查詢優(yōu)化技術(shù)的本質(zhì)是關(guān)系代數(shù)與計(jì)算機(jī)架構(gòu)設(shè)計(jì)的結(jié)合.如何在關(guān)系代數(shù)等價(jià)的前提下解出最高效、最優(yōu)的查詢路徑即是查詢優(yōu)化技術(shù)的核心目標(biāo).在具體技術(shù)細(xì)節(jié)上,查詢優(yōu)化技術(shù)涉及到成本建模與分析、連接查詢、SMP并行計(jì)算、索引結(jié)構(gòu)設(shè)計(jì)、矢量批量計(jì)算等.可以說(shuō)查詢優(yōu)化技術(shù)是關(guān)系數(shù)據(jù)庫(kù)永恒的基礎(chǔ)技術(shù)之一,永遠(yuǎn)處于不斷改進(jìn)優(yōu)化的過(guò)程中.
國(guó)外數(shù)據(jù)庫(kù)產(chǎn)品的代表Oracle,SQLServer具有成熟、完善的查詢優(yōu)化機(jī)制.自主可控?cái)?shù)據(jù)庫(kù)在多年發(fā)展之后也積累形成了較為良好的查詢優(yōu)化機(jī)制.但在一些場(chǎng)景下仍然有進(jìn)一步改進(jìn)的空間.
自主生態(tài)的兼容適配是自主可控產(chǎn)品能否實(shí)現(xiàn)整體替代的關(guān)鍵因素,涉及到自主可控產(chǎn)品之間的適配能力,以及自主可控生態(tài)本身是否完整.
國(guó)外的硬件、基礎(chǔ)軟件之所以成為主流,成為難以替代的產(chǎn)品,核心因素就在于其生態(tài)的成熟和完整.一方面各個(gè)環(huán)節(jié)合作非常緊密,產(chǎn)品間的深度適配優(yōu)化已經(jīng)成為常規(guī)性的工作;另一方面生態(tài)覆蓋面極其廣泛,從硬件到軟件、從底層到高層都得到覆蓋.
因此未來(lái)需要自主可控生態(tài)圈相關(guān)廠商通力合作,對(duì)于數(shù)據(jù)庫(kù)而言,未來(lái)需要針對(duì)自主計(jì)算機(jī)平臺(tái)、自主大數(shù)據(jù)平臺(tái)、自主存儲(chǔ)設(shè)備、自主的云計(jì)算方案等進(jìn)行緊密合作,具體工作包括以下內(nèi)容.
多平臺(tái)支持:持續(xù)對(duì)各類新型號(hào)、新版本的自主可控CPU、計(jì)算機(jī)整機(jī)、操作系統(tǒng)等進(jìn)行兼容適配.
大數(shù)據(jù)方案兼容:與第三方HADOOP,HBASE等方案完成兼容適配,使得自主可控平臺(tái)具備協(xié)同處理大規(guī)模結(jié)構(gòu)化數(shù)據(jù)、非結(jié)構(gòu)化半結(jié)構(gòu)化的能力.
存儲(chǔ)設(shè)備訪問(wèn)優(yōu)化:針對(duì)主流的自主存儲(chǔ)設(shè)備,與存儲(chǔ)設(shè)備廠商一起,通過(guò)緩存優(yōu)化等手段,提升自主數(shù)據(jù)庫(kù)在自主存儲(chǔ)設(shè)備上的IO吞吐性能.
文件系統(tǒng)訪問(wèn)優(yōu)化:與操作系統(tǒng)廠商一起,通過(guò)OS底層訪問(wèn)接口優(yōu)化,提升數(shù)據(jù)庫(kù)訪問(wèn)文件的性能.
云計(jì)算技術(shù)(虛擬化):與國(guó)內(nèi)主要云計(jì)算廠商進(jìn)行合作,完成自主可控?cái)?shù)據(jù)庫(kù)與虛擬化技術(shù)(如KVM)、容器技術(shù)(如Docker)、云操作系統(tǒng)、云管平臺(tái)的兼容適配、優(yōu)化工作.滿足云計(jì)算模式下的自主可控市場(chǎng)需求.
在自主可控?cái)?shù)據(jù)庫(kù)產(chǎn)品技術(shù)不斷更新的過(guò)程中,需要對(duì)數(shù)據(jù)庫(kù)的主要技術(shù)標(biāo)準(zhǔn),如SQL92標(biāo)準(zhǔn)、JDBC3.0標(biāo)準(zhǔn)等進(jìn)行持續(xù)驗(yàn)證,確保對(duì)相關(guān)標(biāo)準(zhǔn)的高度兼容能力.對(duì)于在不斷更新的標(biāo)準(zhǔn),如JDBC4.1,JDBC4.2等后續(xù)新標(biāo)也逐步實(shí)現(xiàn)兼容.同時(shí)為降低應(yīng)用開(kāi)發(fā)人員技術(shù)遷移的成本,需要對(duì)替代Oracle等涉及的接口及SQL語(yǔ)法進(jìn)行兼容.
國(guó)外產(chǎn)品也有典型的標(biāo)準(zhǔn)+兼容發(fā)展路線,例如IBM的DB2就宣稱支持90%的Oracle語(yǔ)法.基于Postgresql發(fā)展的EnterpriseDB,也走標(biāo)準(zhǔn)化+Oracle兼容的路線.因此這一方向是具有較普遍的市場(chǎng)認(rèn)可度的.
1) 分布式存儲(chǔ)技術(shù).在關(guān)系數(shù)據(jù)庫(kù)的分布式計(jì)算方面,普遍采用數(shù)據(jù)庫(kù)節(jié)點(diǎn)自行管理數(shù)據(jù)的方案.但這種方案存在著擴(kuò)展能力有限、數(shù)據(jù)規(guī)模支持不大的問(wèn)題,并且導(dǎo)致在線擴(kuò)展節(jié)點(diǎn)的代價(jià)非常高昂.分布式存儲(chǔ)技術(shù)的引入能夠有效解決上述問(wèn)題,并簡(jiǎn)化整個(gè)分布式數(shù)據(jù)庫(kù)集群的體系結(jié)構(gòu),提升產(chǎn)品擴(kuò)展能力和可靠性.
將分布式存儲(chǔ)技術(shù)引入分布式數(shù)據(jù)庫(kù)集群在工程上有諸多實(shí)踐,類似的機(jī)制在NoSQLNewSQL方向也有應(yīng)用(如FaceBook的Presto等).但成熟的、產(chǎn)品化的關(guān)系型數(shù)據(jù)庫(kù)成果在國(guó)內(nèi)外都沒(méi)有.目前業(yè)內(nèi)對(duì)這一方向預(yù)期較高,前景看好.
2) 數(shù)據(jù)庫(kù)集群技術(shù).數(shù)據(jù)庫(kù)集群的主流形態(tài)有2種:一種是面向OLTP場(chǎng)景的共享存儲(chǔ)集群;另一種是面向OLAP場(chǎng)景的無(wú)共享分布式計(jì)算集群.
共享集群是通過(guò)增加節(jié)點(diǎn)來(lái)有效提升數(shù)據(jù)庫(kù)高可用、高并發(fā)處理能力的途徑.由于存儲(chǔ)是共享的,因此數(shù)據(jù)一致性相對(duì)容易保證,在此基礎(chǔ)上,通過(guò)多機(jī)負(fù)載均衡,能夠在特定場(chǎng)景下有效提升系統(tǒng)性能.
共享存儲(chǔ)集群是關(guān)系數(shù)據(jù)庫(kù)技術(shù)的最高點(diǎn).目前國(guó)外產(chǎn)品中,僅Oracle的共享集群在技術(shù)、市場(chǎng)2個(gè)方面上取得成功;同時(shí)Oracle共享集群也成為用戶對(duì)Oracle的最重要依賴技術(shù)之一,是屬于“殺手锏”級(jí)別的特性.
分布式存儲(chǔ)基于現(xiàn)有MPP對(duì)計(jì)算與存儲(chǔ)的解耦,使得存儲(chǔ)單獨(dú)成為一個(gè)無(wú)共享的存儲(chǔ)集群,采用軟件定義存儲(chǔ)(SDS)的方式,研發(fā)實(shí)現(xiàn)大規(guī)模的分布式文件系統(tǒng),并封裝提供數(shù)據(jù)庫(kù)所使用的POSIX接口,以達(dá)到存儲(chǔ)實(shí)現(xiàn)動(dòng)態(tài)橫向擴(kuò)展效果的目的[8].
MPP技術(shù)主要通過(guò)設(shè)計(jì)實(shí)現(xiàn)一系列分布式計(jì)算通信操作符,在多機(jī)間實(shí)現(xiàn)數(shù)據(jù)和計(jì)算任務(wù)的協(xié)作分發(fā),從而達(dá)到對(duì)單一分析請(qǐng)求的多機(jī)并行計(jì)算的目的,提供更好的分析查詢性能.
無(wú)共享存儲(chǔ)集群國(guó)產(chǎn)產(chǎn)品已經(jīng)有一定的發(fā)展基礎(chǔ),但與國(guó)外先進(jìn)產(chǎn)品相比,在擴(kuò)展能力、性能表現(xiàn)上仍然有一定差距,需要通過(guò)架構(gòu)優(yōu)化等方式進(jìn)行改進(jìn).
集中式運(yùn)維的主要訴求在于降低大量數(shù)據(jù)庫(kù)實(shí)例進(jìn)行運(yùn)維的工作量.在大規(guī)模數(shù)據(jù)中心環(huán)境下,通常會(huì)部署數(shù)十上百的數(shù)據(jù)庫(kù)實(shí)例,每個(gè)數(shù)據(jù)庫(kù)的常規(guī)維護(hù)操作如數(shù)據(jù)備份、性能監(jiān)控在這種規(guī)模下會(huì)形成巨大的工作負(fù)擔(dān),從而造成人員開(kāi)支的上漲.通過(guò)集中化、自動(dòng)化的運(yùn)維中心,結(jié)合每個(gè)實(shí)例上的agent服務(wù),可以對(duì)大量實(shí)例進(jìn)行批量式運(yùn)維管理.同時(shí)對(duì)于大規(guī)模的集群,如數(shù)十上百節(jié)點(diǎn)的MPP集群部署,如果依靠人工方式,一臺(tái)一臺(tái)設(shè)備地進(jìn)行初始化和安裝配置也將浪費(fèi)大量時(shí)間,并容易出錯(cuò).集中式運(yùn)維能夠?qū)⒋笠?guī)模集群的部署工作批量化,保證效率和正確性.
國(guó)內(nèi)自主數(shù)據(jù)庫(kù)產(chǎn)品正處于市場(chǎng)升級(jí)的階段,對(duì)于運(yùn)維能力要求的升級(jí),也迫使國(guó)產(chǎn)廠商必須考慮大規(guī)模數(shù)據(jù)庫(kù)實(shí)例運(yùn)維的集中化、自動(dòng)化問(wèn)題.
我國(guó)信息安全標(biāo)準(zhǔn)有兩大體系:一是源于美國(guó)TCSEC(橘皮書(shū))的等級(jí)保護(hù)體系(等保);二是源于ITSEC(CC)的安全評(píng)估保證級(jí)(EAL).在國(guó)際上,ITSEC是作為TCSEC的替代標(biāo)準(zhǔn)出現(xiàn)的,美國(guó)、歐盟諸國(guó)的現(xiàn)行標(biāo)準(zhǔn)均為ITSEC,且該標(biāo)準(zhǔn)已通過(guò)ISO成為國(guó)際標(biāo)準(zhǔn).國(guó)外的數(shù)據(jù)庫(kù)如Oracle,DB2,SQLServer都先后通過(guò)了TCSEC和ITSEC的不同等級(jí)的認(rèn)證,其中Oracle提供了最高的安全等級(jí)產(chǎn)品[9].
我國(guó)在20世紀(jì)80年代幾乎同時(shí)引入了這兩大標(biāo)準(zhǔn)體系.因此在我國(guó)2個(gè)標(biāo)準(zhǔn)都是現(xiàn)行的安全標(biāo)準(zhǔn).近年來(lái),數(shù)據(jù)庫(kù)領(lǐng)域的安全標(biāo)準(zhǔn)開(kāi)始了修訂工作.原有的等保標(biāo)準(zhǔn)在新的標(biāo)準(zhǔn)草案稿中,已經(jīng)基本吸取了大量ITSEC的思想,新標(biāo)目前已經(jīng)進(jìn)入送審階段.因此在未來(lái)5年我們預(yù)期數(shù)據(jù)庫(kù)安全標(biāo)準(zhǔn)有較大可能出現(xiàn)較大幅度的更新.針對(duì)這一趨勢(shì),自主數(shù)據(jù)庫(kù)廠商應(yīng)該對(duì)相關(guān)標(biāo)準(zhǔn)的變更進(jìn)行及時(shí)跟進(jìn)和響應(yīng).
在大數(shù)據(jù)、云計(jì)算技術(shù)的推動(dòng)下,用戶對(duì)數(shù)據(jù)的重視程度不斷提升,IT系統(tǒng)建設(shè)日益完善,數(shù)據(jù)日益成為了一種海量資源,這對(duì)國(guó)內(nèi)數(shù)據(jù)庫(kù)企業(yè)來(lái)講既是挑戰(zhàn),也提供了體現(xiàn)自身價(jià)值的機(jī)遇.近年來(lái),我國(guó)政府高度重視信息安全與自主可控,行業(yè)內(nèi)掀起去“IOE”浪潮,國(guó)產(chǎn)基礎(chǔ)軟硬件迎來(lái)發(fā)展高潮,這是國(guó)產(chǎn)軟硬件產(chǎn)品實(shí)現(xiàn)國(guó)產(chǎn)化替代的良機(jī).除了早先的達(dá)夢(mèng)數(shù)據(jù)庫(kù)、南大通用數(shù)據(jù)庫(kù)、人大金倉(cāng)數(shù)據(jù)庫(kù)、神舟通用數(shù)據(jù)庫(kù)以外,國(guó)內(nèi)多家企業(yè)也開(kāi)始涉足數(shù)據(jù)庫(kù)行業(yè),山東瀚高數(shù)據(jù)庫(kù)、浪潮頂天立地?cái)?shù)據(jù)庫(kù)等都是其中的后起之秀.而國(guó)際數(shù)據(jù)庫(kù)巨頭甲骨文、微軟、IBM等紛紛向云服務(wù)商轉(zhuǎn)型,其中IBM將其旗下Informix賣給了國(guó)內(nèi)的南大通用、華勝天成等企業(yè),改頭換面后也成了國(guó)產(chǎn)數(shù)據(jù)庫(kù).
目前傳統(tǒng)的國(guó)產(chǎn)數(shù)據(jù)庫(kù)市場(chǎng)除了達(dá)夢(mèng)數(shù)據(jù)庫(kù)有限公司(以下簡(jiǎn)稱達(dá)夢(mèng)公司)以外,其他廠商多采用基于開(kāi)源技術(shù)或者直接購(gòu)買包裝的方式.和這些數(shù)據(jù)庫(kù)廠商不同,達(dá)夢(mèng)公司采取了循序漸進(jìn)、自主研發(fā)的技術(shù)道路,掌握全部源代碼,在推廣應(yīng)用中不斷完善產(chǎn)品,逐步推進(jìn)國(guó)產(chǎn)化替代.
達(dá)夢(mèng)公司和中國(guó)航信共同建設(shè)的中航信電子客票系統(tǒng)就是典型案例之一.2014年,經(jīng)科技部、工信部批準(zhǔn)立項(xiàng),中航信啟動(dòng)了基于國(guó)產(chǎn)安全可靠基礎(chǔ)軟件的民航客票交易系統(tǒng)項(xiàng)目.作為提供全流程的票務(wù)自動(dòng)化處理的核心交易系統(tǒng),此次著手建立的新一代電子客票系統(tǒng)是一個(gè)為航空公司、代理人、旅客提供全渠道銷售的信息化系統(tǒng),服務(wù)范圍覆蓋海內(nèi)外,承載著全球第三的業(yè)務(wù)處理量,為國(guó)家重點(diǎn)監(jiān)管的行業(yè)信息系統(tǒng)之一.該系統(tǒng)對(duì)安全性、可靠性、擴(kuò)展性、性能及信息化成本控制等等都提出了高標(biāo)準(zhǔn)、高要求.
本次電子客票系統(tǒng)國(guó)產(chǎn)化投產(chǎn),這個(gè)項(xiàng)目要把原來(lái)運(yùn)行在Sun、惠普Unix服務(wù)器、甲骨文數(shù)據(jù)庫(kù)上的電子客票應(yīng)用,遷移到基于國(guó)產(chǎn)服務(wù)器、中標(biāo)麒麟操作系統(tǒng)、航信TODE中間件和達(dá)夢(mèng)數(shù)據(jù)庫(kù)構(gòu)成的軟硬件平臺(tái).這意味著除了CPU之外,所有的軟硬件都是國(guó)產(chǎn)的,對(duì)中國(guó)民航核心信息平臺(tái)的升級(jí)換代和網(wǎng)絡(luò)安全保障具有重要的里程碑意義[10].
達(dá)夢(mèng)公司針對(duì)本項(xiàng)目的特點(diǎn)提供了安全、可靠、可擴(kuò)展的保障方案.采用自主原創(chuàng)的達(dá)夢(mèng)數(shù)據(jù)庫(kù)管理系統(tǒng)DM7,從數(shù)據(jù)庫(kù)管理系統(tǒng)本身解決安全短板問(wèn)題.在數(shù)據(jù)庫(kù)替換過(guò)程中,為了保證系統(tǒng)的平穩(wěn)過(guò)度,達(dá)夢(mèng)公司從系統(tǒng)工程角度出發(fā),采取了逐步替換、從易到難的替換策略,從而最大限度地保證了客戶應(yīng)用的可用性.
電子客票系統(tǒng)具有365×24的不間斷運(yùn)行的特點(diǎn),其數(shù)據(jù)庫(kù)必須具備高可用性.達(dá)夢(mèng)公司通過(guò)技術(shù)開(kāi)發(fā),攻克了高并發(fā)壓力下持續(xù)穩(wěn)定服務(wù)、同構(gòu)數(shù)據(jù)庫(kù)故障切換時(shí)間小于 60 s、異構(gòu)數(shù)據(jù)庫(kù)故障轉(zhuǎn)移這三大技術(shù)難題.從2015年達(dá)夢(mèng)數(shù)據(jù)庫(kù)首次在中航信系統(tǒng)下的航空公司上線以來(lái),數(shù)據(jù)庫(kù)運(yùn)行穩(wěn)定,無(wú)故障發(fā)生,完全滿足了中航信“對(duì)于客票系統(tǒng),可用性需要達(dá)到 99.99%”的要求.
基于達(dá)夢(mèng)數(shù)據(jù)庫(kù)的中航信民航客票交易系統(tǒng)是核高基應(yīng)用示范項(xiàng)目.達(dá)夢(mèng)公司作為核高基課題的重要牽頭單位和承接單位之一,經(jīng)過(guò)不斷地技術(shù)創(chuàng)新和實(shí)踐應(yīng)用,取得了顯著成果.至此,24家航空公司電子客票系統(tǒng)的數(shù)據(jù)庫(kù)國(guó)產(chǎn)化替代全部完成.整個(gè)航信系統(tǒng),從開(kāi)始測(cè)試到完成核心系統(tǒng)的替換工作,達(dá)夢(mèng)公司歷時(shí)近4年,最終成功完成了中航信電子客票系統(tǒng)的國(guó)產(chǎn)化替代工程.借助中航信在民航信息化領(lǐng)域的主導(dǎo)地位,推動(dòng)?xùn)|航、南航等其他航空公司客票交易系統(tǒng)的國(guó)產(chǎn)化應(yīng)用,最終帶動(dòng)以達(dá)夢(mèng)數(shù)據(jù)庫(kù)為代表的安全可靠基礎(chǔ)軟件在民航及其他交通、旅游等領(lǐng)域信息化中的廣泛應(yīng)用.
目前,我國(guó)的數(shù)據(jù)庫(kù)管理系統(tǒng)市場(chǎng)仍以國(guó)外品牌為主導(dǎo).國(guó)產(chǎn)數(shù)據(jù)庫(kù)要想實(shí)現(xiàn)彎道超車并非易事.在現(xiàn)階段,產(chǎn)業(yè)鏈上下游合作仍不夠緊密,部分關(guān)鍵行業(yè)領(lǐng)域,自主可控的軟硬件廠商發(fā)展滯后,仍需要政府對(duì)市場(chǎng)加以引導(dǎo),政策給予支持,要進(jìn)一步促進(jìn)重大行業(yè)領(lǐng)域(如金融、電信、能源、交通等)的核心業(yè)務(wù)系統(tǒng)自主可控化發(fā)展,實(shí)現(xiàn)基礎(chǔ)軟硬件市場(chǎng)的國(guó)產(chǎn)化替代,切實(shí)落實(shí)真正的自主可控產(chǎn)品技術(shù)發(fā)展.
[1]新華社. 達(dá)夢(mèng)數(shù)據(jù)庫(kù): 構(gòu)筑大數(shù)據(jù)中國(guó)夢(mèng)[N/OL]. (2016-12-01) [2017-12-15]. http://dz.jjckb.cn/www/pages/webpage2009/html/2016-12/01/node_8.htm
[2]賽迪顧問(wèn)股份有限公司. 2016—2017中國(guó)平臺(tái)軟件市場(chǎng)研究年度報(bào)告[R]. 北京: 賽迪顧問(wèn)股份有限公司, 2017
[3]李葉. 國(guó)產(chǎn)數(shù)據(jù)庫(kù)系統(tǒng)在電力行業(yè)的前景分析[D]. 廣州: 廣東電網(wǎng)有限責(zé)任公司河源供電局, 2016
[4]謝紅. 基于“云計(jì)算”的數(shù)據(jù)庫(kù)分析[D]. 貴陽(yáng): 貴州省貴陽(yáng)職業(yè)技術(shù)學(xué)院, 2011
[5]梁晟輝, 陳興寶, 王憲利. 基于自主可控基礎(chǔ)軟硬件環(huán)境保障信息聯(lián)動(dòng)控制應(yīng)用技術(shù)研究[D]. 北京: 中軟信息系統(tǒng)工程有限公司, 2015
[6]張曉清, 龔波, 田麗韞, 等. 國(guó)產(chǎn)自主可控應(yīng)用性能優(yōu)化研究[D]. 北京: 裝備學(xué)院信息裝備系, 2015
[7]江春華, 陳顯龍, 羅新偉, 等. 一種基于讀寫(xiě)分離的數(shù)據(jù)庫(kù)操作方法及裝置: 中國(guó), CN201611263152.6[P]. 2017-12-30
[8]楊珊. 數(shù)據(jù)庫(kù)集群技術(shù)分析和比較[D]. 廈門: 廈門軟件職業(yè)技術(shù)學(xué)院, 2015
[9]郭偉. 信息安全標(biāo)準(zhǔn)與法規(guī)[D]. 成都: 西南交通大學(xué), 2012
[10]新華社. 民航電子客票系統(tǒng)國(guó)產(chǎn)化取得重大突破[N]. 經(jīng)濟(jì)參考報(bào), 2017-09-08