-
國(guó)產(chǎn)數(shù)據(jù)庫替代策略的探討發(fā)布日期:2024-07-16 15:17:46閱讀量:373
國(guó)產(chǎn)數(shù)據(jù)庫替代的策略問題,已經(jīng)討論了幾年了,現(xiàn)在熱度還不減。據(jù)我觀察,目前對(duì)這個(gè)問題探討最多的人是對(duì)此沒有決策權(quán)的DBA或者應(yīng)用研發(fā)人員,而實(shí)際上能夠在這個(gè)問題上起決定作用的的IT高管對(duì)此的關(guān)注度并不高。不幸的是,很多企業(yè)的國(guó)產(chǎn)數(shù)據(jù)庫替代方案的決策者,也就是這些企業(yè)IT高管,實(shí)際上對(duì)數(shù)據(jù)庫并不了解,在數(shù)據(jù)庫替代策略的選擇上,就不一定很科學(xué)。對(duì)此問題,討論者也是牢騷不斷。
我這篇文章也僅僅是從科普的角度來討論一下這個(gè)問題,表達(dá)一下我的個(gè)人觀點(diǎn),很可能我的觀點(diǎn)也會(huì)與很多企業(yè)的策略選擇不大一致。企業(yè)都有企業(yè)自己的情況,因此我的觀點(diǎn)也不見得適合你所在的企業(yè),因此也無需爭(zhēng)論,只把它當(dāng)做一種觀點(diǎn)就可以了。
1、什么樣的企業(yè)要做數(shù)據(jù)庫國(guó)產(chǎn)化替代?
首先是什么樣的企業(yè)需要做數(shù)據(jù)庫國(guó)產(chǎn)化替代,實(shí)際上數(shù)據(jù)庫國(guó)產(chǎn)化替代要求十分嚴(yán)格的行業(yè)是黨政軍和關(guān)基企業(yè),這些單位實(shí)際上都是在管控清單里的,如果你所在的行業(yè)不屬于黨政軍,也不屬于關(guān)基企業(yè),那么在制定數(shù)據(jù)庫國(guó)產(chǎn)化替代策略的時(shí)候,是不需要十分嚴(yán)格的,可以更多考慮企業(yè)自身的情況,選擇更靈活的策略。對(duì)于有嚴(yán)格要求的黨政軍和關(guān)基企業(yè),每個(gè)垂直監(jiān)管部門的監(jiān)管要求也會(huì)有所不同,比如金融行業(yè)的監(jiān)管要求十分嚴(yán)格,要應(yīng)替盡替,而某些大型國(guó)企的監(jiān)管要求要松很多,只需要關(guān)注核心業(yè)務(wù)系統(tǒng)。
某些黨政用戶經(jīng)費(fèi)有限,完全購買國(guó)產(chǎn)數(shù)據(jù)庫困難較大,采取了國(guó)產(chǎn)商用數(shù)據(jù)庫替代和開源數(shù)據(jù)庫替代兩條路線齊頭并進(jìn)的策略,目的就是安全可控外加省錢。監(jiān)管要求較低的企業(yè)也可以根據(jù)實(shí)際情況去選擇成本較低的替代方案。
其實(shí)現(xiàn)在有些外企也在做去O的工作,前陣子我們就幫助一家外企進(jìn)行了PG替代Oracle的實(shí)施工作。這些外企一方面也是為了更好地符合政府的安全監(jiān)管要求,另外一方面也是希望能夠節(jié)約數(shù)據(jù)庫使用成本。
綜上所述,去O的單位可以根據(jù)自己的實(shí)際情況來做選擇。可以從自己總體成本考慮最佳的模式,部分使用開源數(shù)據(jù)庫來降低成本,不過為了應(yīng)對(duì)今后更加嚴(yán)格的行業(yè)監(jiān)管要求,要考慮選擇今后遷移成本更低的開源數(shù)據(jù)庫產(chǎn)品。
2、數(shù)據(jù)庫國(guó)產(chǎn)化替代的策略如何選擇?
數(shù)據(jù)庫國(guó)產(chǎn)化替代是需要考慮綜合成本的,對(duì)于一些資金雄厚的大型國(guó)有企業(yè)來說,費(fèi)用可能不是問題,只要能夠按照規(guī)定時(shí)間達(dá)到目標(biāo)就可以了。幾年前我?guī)椭粋€(gè)大型國(guó)有企業(yè)設(shè)計(jì)數(shù)據(jù)庫國(guó)產(chǎn)化替代的策略的時(shí)候。根據(jù)系統(tǒng)的特點(diǎn)不同,分為三大類:1)簡(jiǎn)單替代:對(duì)于一些非關(guān)鍵的中小系統(tǒng),選擇與Oracle兼容性較好的國(guó)產(chǎn)數(shù)據(jù)庫產(chǎn)品,快速遷移,簡(jiǎn)單替代,盡可能不修改代碼;2)優(yōu)化改造后替代:對(duì)于大中型系統(tǒng),無法簡(jiǎn)單替代的,選擇與Oracle兼容性較好,并且性能較好的國(guó)產(chǎn)商用數(shù)據(jù)庫產(chǎn)品(優(yōu)選集中式數(shù)據(jù)庫),在替代過程中進(jìn)行優(yōu)化改造;3)升級(jí)重建時(shí)替代:對(duì)于大型核心業(yè)務(wù)系統(tǒng),不使用簡(jiǎn)單平替的模式,而是對(duì)系統(tǒng)進(jìn)行升級(jí),重新設(shè)計(jì),并選擇國(guó)產(chǎn)分布式數(shù)據(jù)庫進(jìn)行替代。?? ?
一些大型國(guó)企實(shí)際上采取的措施和這個(gè)思路類似。某運(yùn)營(yíng)商簡(jiǎn)化了一下,中小系統(tǒng)選擇與Oracle兼容性極強(qiáng)的達(dá)夢(mèng)數(shù)據(jù)庫做平替,核心系統(tǒng)選擇與Oracle兼容性相對(duì)較好的分布式數(shù)據(jù)庫Oceanbase來替代。
實(shí)際上替代策略里有平替和改造后替代兩種方案,對(duì)于大型的關(guān)鍵業(yè)務(wù)系統(tǒng),一般來說不太建議平替的方案,趁著數(shù)據(jù)庫國(guó)產(chǎn)化替代,正好升級(jí)核心系統(tǒng)是一種比較好的方案。
某銀行選擇了GaussDB作為核心系統(tǒng)的替代產(chǎn)品。目前他們的做法是從核心系統(tǒng)中不斷剝離模塊出來,根據(jù)這些模塊的業(yè)務(wù)特點(diǎn)和并發(fā)情況,分別選擇GaussDB的集中式部署模式和分布式部署模式,拆出一塊改造一塊。逐漸把一個(gè)大核心分解為眾多的微核心,目前已經(jīng)拆出了十幾個(gè)模塊了。經(jīng)過分拆改造,最終的核心賬務(wù)也變得跟家簡(jiǎn)單,規(guī)模也小了很多,目前他們已經(jīng)有信心2025年賬務(wù)核心開始雙軌制運(yùn)行,以國(guó)產(chǎn)數(shù)據(jù)庫為主系統(tǒng),并逐漸過渡到單軌制運(yùn)行。
3、該選擇什么國(guó)產(chǎn)數(shù)據(jù)庫?
定策略的最后一步是國(guó)產(chǎn)數(shù)據(jù)庫選型,現(xiàn)在有200多個(gè)國(guó)產(chǎn)數(shù)據(jù)庫品牌,該如何選擇呢?可以簡(jiǎn)單把國(guó)產(chǎn)數(shù)據(jù)庫分為三大類:國(guó)產(chǎn)開源數(shù)據(jù)庫、普通國(guó)產(chǎn)商用數(shù)據(jù)庫、通過安可認(rèn)證的國(guó)產(chǎn)商用數(shù)據(jù)庫。
對(duì)于監(jiān)管要求很嚴(yán)的系統(tǒng),必須選擇通過安可認(rèn)證的國(guó)產(chǎn)商用數(shù)據(jù)庫,什么是通過安可認(rèn)證的國(guó)產(chǎn)商用數(shù)據(jù)庫呢?這方面可能一些企業(yè)得到的信息比較亂,主要是國(guó)產(chǎn)數(shù)據(jù)庫廠商在打各種擦邊球。實(shí)際上目前對(duì)于XC工作來說,只有一個(gè)唯一的認(rèn)證渠道,中國(guó)信息安全評(píng)測(cè)中心的官網(wǎng)(http://www.itsec.gov.cn/)發(fā)布的清單才是真正的XC必須遵循的清單。
圖片
目前只發(fā)布了2期清單,其中2023年第一號(hào)公告里包含了數(shù)據(jù)庫安可的清單。今年8、9月份可能會(huì)發(fā)布第二批。?? ?
圖片
大家要注意的是,在選型決策時(shí),要考慮這個(gè)清單的有效期是三年。因此不排除兩三年后清單會(huì)發(fā)生變化。一些企業(yè)甚至可能會(huì)離開商用數(shù)據(jù)庫產(chǎn)業(yè),因此并不是簡(jiǎn)單的從中選擇某個(gè)數(shù)據(jù)庫產(chǎn)品就可以了。前陣子一個(gè)銀行的客戶向我了解某國(guó)產(chǎn)數(shù)據(jù)庫廠商的情況,因?yàn)樗麄兊腃IO無意中了解到他們正在使用的某種數(shù)據(jù)庫的廠商正在大裁員,就通過企查查看了一下,發(fā)現(xiàn)那個(gè)數(shù)據(jù)庫廠商的登記交社保的人員不足30人。于是就吩咐他調(diào)研一下,這個(gè)數(shù)據(jù)庫產(chǎn)品是否存在風(fēng)險(xiǎn),是否需要列入替換的計(jì)劃中。
分布式數(shù)據(jù)庫目前還不在清單中,在第二批清單里,應(yīng)該包含了一些分布式數(shù)據(jù)庫產(chǎn)品。另外安可等級(jí)最高4級(jí),目前發(fā)布的第一批都是1級(jí),今年發(fā)布的第二批中不知道會(huì)不會(huì)有更高等級(jí)的產(chǎn)品。也不排除對(duì)于關(guān)基系統(tǒng),有更高級(jí)別的要求,因此選型決策還是要更加慎重。
前面也談到了,對(duì)于監(jiān)管要求沒有那么嚴(yán)格的單位,為了節(jié)約總體成本,在一些安全性要求并不很高的系統(tǒng)中使用開源數(shù)據(jù)庫也是可以的。不過為了防止不斷嚴(yán)格的監(jiān)管要求,在選擇國(guó)產(chǎn)開源數(shù)據(jù)庫的時(shí)候也要十分慎重。選擇PG系列或者openGauss等開源數(shù)據(jù)庫今后風(fēng)險(xiǎn)較小。如果今后必須改用國(guó)產(chǎn)商用數(shù)據(jù)庫,遷移成本也相對(duì)較低。對(duì)于基于MySQL的國(guó)產(chǎn)開源數(shù)據(jù)庫的選擇要更加謹(jǐn)慎一些。如果某些企業(yè)習(xí)慣于使用MySQL,不想選擇其他的技術(shù)路線,其實(shí)也是可以的。如果今后必須替換國(guó)產(chǎn)商用數(shù)據(jù)庫,可以選擇TiDB、Oceanbase等與MySQL協(xié)議兼容的開源數(shù)據(jù)庫,達(dá)夢(mèng)、GaussDB、金倉等國(guó)產(chǎn)數(shù)據(jù)庫也都做了MySQL兼容,不過遷移起來略微麻煩一些。