數(shù)據(jù)庫(kù)已經(jīng)不是最難國(guó)產(chǎn)化的IT基礎(chǔ)設(shè)施了
?最近美國(guó)芯片限制政策的問(wèn)題發(fā)酵的很厲害,前幾天一個(gè)朋友說(shuō)他原來(lái)以為數(shù)據(jù)庫(kù)是最難國(guó)產(chǎn)化的,原來(lái)還不是啊。確實(shí)是的,相對(duì)于芯片這種產(chǎn)業(yè)鏈特別長(zhǎng)的IT組件,數(shù)據(jù)庫(kù)這種軟件相對(duì)來(lái)說(shuō)更容易實(shí)現(xiàn)國(guó)產(chǎn)化。目前在IT領(lǐng)域,中國(guó)受益于多年的世界產(chǎn)業(yè)分工和國(guó)際化協(xié)作,發(fā)展的很快,不過(guò)重點(diǎn)發(fā)展還是在應(yīng)用領(lǐng)域。在基礎(chǔ)領(lǐng)域里,中國(guó)一直是承擔(dān)世界工廠(chǎng)的角色,并沒(méi)有參與到先進(jìn)技術(shù)研發(fā)與關(guān)鍵設(shè)備生成這些研發(fā)投入極大,研發(fā)周期較長(zhǎng),單一產(chǎn)業(yè)全球產(chǎn)業(yè)規(guī)模不大的領(lǐng)域。
我看到網(wǎng)上對(duì)我國(guó)IT產(chǎn)業(yè)全面否定的言論很多,對(duì)IT產(chǎn)業(yè)國(guó)產(chǎn)化的態(tài)度也極其悲觀,這些言論很多來(lái)自某個(gè)產(chǎn)業(yè)的從業(yè)人員,因此也很有市場(chǎng)。實(shí)際上,目前我們的IT產(chǎn)業(yè)國(guó)產(chǎn)化面臨的問(wèn)題是多種多樣的,很多產(chǎn)業(yè)并不是我們沒(méi)有能力去做,而是在國(guó)際化分工協(xié)作的模式下,以往沒(méi)必要投入巨資,浪費(fèi)時(shí)間去做。當(dāng)反全球化浪潮高漲之時(shí),一個(gè)國(guó)家和民族為了生存,那么在很多方面就不會(huì)考慮最優(yōu)成本解的問(wèn)題了。我想大部分短板還是能在三五年內(nèi)得到補(bǔ)全的。可能我們會(huì)面臨花了更多的錢(qián),用了比原來(lái)差的產(chǎn)品的問(wèn)題,不過(guò)熬過(guò)這段艱苦的日子,在某些領(lǐng)域形成物美價(jià)廉的中國(guó)方案也不是不可能的。
回到數(shù)據(jù)庫(kù),實(shí)際上這些年來(lái)我一直不認(rèn)為數(shù)據(jù)庫(kù)國(guó)產(chǎn)化是個(gè)大問(wèn)題,沒(méi)有成不成的問(wèn)題,而只是做不做的問(wèn)題。前些年中國(guó)數(shù)據(jù)庫(kù)產(chǎn)業(yè)國(guó)產(chǎn)化發(fā)展的不好,最大的問(wèn)題不是國(guó)產(chǎn)數(shù)據(jù)庫(kù)的發(fā)展太慢,國(guó)產(chǎn)數(shù)據(jù)庫(kù)水平不足等技術(shù)問(wèn)題,而是我們對(duì)知識(shí)產(chǎn)權(quán)的不尊重。我們的國(guó)產(chǎn)關(guān)系型數(shù)據(jù)庫(kù)產(chǎn)業(yè)從1999年左右就開(kāi)始起步了,而國(guó)外的關(guān)系型數(shù)據(jù)庫(kù)產(chǎn)業(yè)大發(fā)展也只是從90年代中期才開(kāi)始的,我們的起步并沒(méi)有晚多少。同時(shí)期韓國(guó)發(fā)展出了Tibero、Altibase等商用數(shù)據(jù)庫(kù)產(chǎn)品,日本的一些大企業(yè)則在PG開(kāi)源項(xiàng)目上做了巨大的投入,而實(shí)際上我國(guó)也出現(xiàn)了第一批國(guó)產(chǎn)數(shù)據(jù)庫(kù)廠(chǎng)商,達(dá)夢(mèng),人大金倉(cāng)等紛紛登場(chǎng)。
由于我國(guó)在知識(shí)產(chǎn)權(quán)領(lǐng)域的保護(hù)不足,從而導(dǎo)致數(shù)據(jù)庫(kù)領(lǐng)域橫行。8、90年代的銀行交易系統(tǒng)大多數(shù)是基于informix數(shù)據(jù)庫(kù)的,并不是說(shuō)Informix數(shù)據(jù)庫(kù)多么適合銀行交易系統(tǒng)。而是因?yàn)榈谝慌沣y行電算化的人從美國(guó)回來(lái)時(shí)候帶來(lái)了的Informix。而隨著中國(guó)IT產(chǎn)業(yè)的大發(fā)展,那些網(wǎng)上下載就能使用,不需要物理許可證的數(shù)據(jù)庫(kù)產(chǎn)品成了我們應(yīng)用的主流。上至政府機(jī)構(gòu),小至小微企業(yè),數(shù)據(jù)庫(kù)一水都是Oracle Enterprise。2000年初的時(shí)候,一個(gè)國(guó)外的DBA到訪(fǎng)深圳,和我談了一件事,說(shuō)他去給一家企業(yè)做數(shù)據(jù)庫(kù)規(guī)劃方面的咨詢(xún)。用戶(hù)居然問(wèn)他是不是要考慮引入一些其他的數(shù)據(jù)庫(kù)產(chǎn)品,而不能只用Oracle數(shù)據(jù)庫(kù)。他感到有些吃驚,他在美國(guó)的客戶(hù),都是只有最核心的數(shù)據(jù)庫(kù)才會(huì)首選Oracle,而一些非核心的,都會(huì)考慮使用稍微便宜一些的SQL SERVER,或者干脆用MySQL,中國(guó)的一個(gè)企業(yè)里居然用了好幾十套Oracle企業(yè)版數(shù)據(jù)庫(kù),連辦公自動(dòng)化這種沒(méi)多少并發(fā)量的系統(tǒng),都是Oracle Enterprise,他覺(jué)得用一個(gè)Oracle Standard就完全足夠了。
我沒(méi)好意思說(shuō)出其中的原因,因?yàn)檫@個(gè)原因也不光彩。正是我國(guó)在知識(shí)產(chǎn)權(quán)領(lǐng)域保護(hù)的不足,導(dǎo)致了很多用戶(hù)都產(chǎn)生了用國(guó)產(chǎn)數(shù)據(jù)庫(kù)比用Oracle還貴的想法。不管系統(tǒng)大小,通通用一套Oracle就搞定的事情,也就十分順理成章了。
現(xiàn)在的形勢(shì)下,我國(guó)的自主IT產(chǎn)業(yè)發(fā)展已經(jīng)是被逼上梁山了,在此局面下,各種國(guó)產(chǎn)化解決方案的落地迫在眉睫。數(shù)據(jù)庫(kù)領(lǐng)域,我目前覺(jué)得是渠已成,只待水來(lái)了。不管是自主代碼研發(fā)的數(shù)據(jù)庫(kù)產(chǎn)品,還是基于開(kāi)源協(xié)議的數(shù)據(jù)庫(kù)產(chǎn)品,亦或是我國(guó)自己的數(shù)據(jù)庫(kù)開(kāi)源項(xiàng)目,發(fā)展的都已經(jīng)有一定的規(guī)模了。
談到數(shù)據(jù)庫(kù)國(guó)產(chǎn)化,實(shí)際上并不僅僅是關(guān)系型數(shù)據(jù)庫(kù),去年我們幫一個(gè)客戶(hù)梳理他們的數(shù)據(jù)庫(kù)國(guó)產(chǎn)化方案的時(shí)候,整理了他們目前用到的數(shù)據(jù)庫(kù)產(chǎn)品類(lèi)型。最后的結(jié)論是,除了MongoDB、Redis等少數(shù)數(shù)據(jù)庫(kù)產(chǎn)品外,目前他們使用的大部分?jǐn)?shù)據(jù)庫(kù)的國(guó)產(chǎn)化替代都能找到合適的方案,數(shù)據(jù)庫(kù)國(guó)產(chǎn)化替代工作完全是可行的。可喜的是,在非關(guān)系型數(shù)據(jù)庫(kù)領(lǐng)域,我們的國(guó)產(chǎn)數(shù)據(jù)庫(kù)發(fā)展的實(shí)際是更好的,自主化率也比RDBMS要高出很多。
不過(guò)現(xiàn)在對(duì)于數(shù)據(jù)庫(kù)國(guó)產(chǎn)化的觀點(diǎn)差異很大,我今天所說(shuō)也僅僅能夠代表一家之言。很多人認(rèn)為國(guó)產(chǎn)數(shù)據(jù)庫(kù)產(chǎn)品必須是每一行代碼都是原創(chuàng)的,現(xiàn)在基于開(kāi)源代碼搞的數(shù)據(jù)庫(kù)產(chǎn)品都不能用于國(guó)產(chǎn)化替代,這個(gè)觀點(diǎn)我是最不認(rèn)同的。哪怕是Oracle數(shù)據(jù)庫(kù)中,都使用了大量的開(kāi)源代碼。前幾年的CPU安全漏洞風(fēng)波,為什么那么多不同架構(gòu)的CPU廠(chǎng)商都中招了呢?還不是因?yàn)镮NTEL,IBM和一些ARM CPU廠(chǎng)家都是用的同一個(gè)開(kāi)源代碼出了問(wèn)題。每一行代碼都必須自主,僅僅限于一些國(guó)家的安全級(jí)別極高的領(lǐng)域,如果用到商用數(shù)據(jù)庫(kù)領(lǐng)域,那就是在浪費(fèi)資源了。只要在知識(shí)產(chǎn)權(quán)上沒(méi)有瑕疵,充分利用開(kāi)源代碼,是加速我國(guó)數(shù)據(jù)庫(kù)產(chǎn)業(yè)發(fā)展的最佳道路??赡苡信笥岩f(shuō)了,你舉的CPU的例子不正好說(shuō)明開(kāi)源代碼不安全嗎?開(kāi)源代碼存在安全問(wèn)題,這個(gè)毋庸置疑,但是自研的代碼就更安全嗎?恐怕也不是吧。
勇敢的擁抱開(kāi)源,充分利用開(kāi)源,并積極參與數(shù)據(jù)庫(kù)開(kāi)源項(xiàng)目,貢獻(xiàn)中國(guó)智慧,這應(yīng)該是比較適合我國(guó)數(shù)據(jù)庫(kù)產(chǎn)業(yè)發(fā)展的道路。十分可喜的是,中國(guó)基因的開(kāi)源數(shù)據(jù)庫(kù)產(chǎn)品已經(jīng)有數(shù)個(gè)了,TiDB、Oceanbase、openGauss等中國(guó)開(kāi)源數(shù)據(jù)庫(kù)產(chǎn)品甚至已經(jīng)具有了一定的國(guó)際影響力。
隨著數(shù)據(jù)庫(kù)國(guó)產(chǎn)化替代的深入,我們面臨最大的問(wèn)題應(yīng)該是如何用好國(guó)產(chǎn)數(shù)據(jù)庫(kù)。這個(gè)問(wèn)題并不像國(guó)產(chǎn)數(shù)據(jù)庫(kù)產(chǎn)品替代那么樂(lè)觀。人才的缺乏,國(guó)產(chǎn)數(shù)據(jù)庫(kù)產(chǎn)業(yè)生態(tài)的缺失,周邊運(yùn)維、優(yōu)化工具的缺失等一系列問(wèn)題,將會(huì)影響數(shù)據(jù)庫(kù)國(guó)產(chǎn)化后的IT系統(tǒng)健康運(yùn)行。
最近我在研究SQL SERVER的運(yùn)維知識(shí)圖譜,國(guó)慶期間花了一周多時(shí)間閱讀了一些微軟的文檔,我發(fā)現(xiàn)國(guó)外商用數(shù)據(jù)庫(kù)產(chǎn)品的成功確實(shí)不是偶然的,如此完善的文檔,對(duì)于數(shù)據(jù)庫(kù)產(chǎn)品的推廣與應(yīng)用是十分有益的。如果微軟的文檔算90分,那么對(duì)比大多數(shù)國(guó)產(chǎn)數(shù)據(jù)庫(kù),這方面幾乎可以認(rèn)為是接近0分。
數(shù)據(jù)庫(kù)已經(jīng)不算是最難國(guó)產(chǎn)化的IT基礎(chǔ)設(shè)施了,甚至可以說(shuō)數(shù)據(jù)庫(kù)的國(guó)產(chǎn)化只等待企業(yè)的IT決策者的發(fā)令槍了。既然國(guó)產(chǎn)化替代不可避免,那么還是早點(diǎn)動(dòng)手比較好,猶豫什么,干就行了。?