迎接即將到來的脱鈎,國產數據庫的戰略準備(上)_風聞
跟陶叔一起学-IT专家-听陶叔聊各种知识与学习感受,解决一些问题2020-06-08 08:12
此文是四月舊文,從我的個人公號搬運過來的(點擊查看原文網址)。分為上下兩篇,這是上篇。
下篇請看:迎接即將到來的“脱鈎”,國產軟件的戰略準備:數據庫篇(下)
歡迎關注我的微信公眾號:跟陶叔學編程
專輯:Android編程教學講義,計算機發展時間線,迎接脱鈎
2020年2月,當全體中國人聽從號令宅在家裏,舉國一致對抗“新冠”疫情的時候,美國又對中國的高科技產業下手了:
1. 美國考慮將受其管制的美國技術含量25%的標準下調為10%,台積電10nm的代工恐將受影響。美國繼續加大對華為追殺,並沒有因為中美第一階段協議達成而收手。
2. 美國糾集42個加入《瓦森納協定》的國家將具有武器級芯片零件的軟件和製造技術添加到受出口管制的國際物品清單中。雖然明面上針對朝鮮和軍用,但實際目標是什麼,你品你仔細品。
3. 媒體報道美國政府考慮阻止通用電氣繼續為中國商飛C919客機提供發動機,原因是擔心中方可能會對發動機逆向仿製。雖然後來特朗普親自表明支持繼續供貨,但讓中國大飛機人瞬間清醒“上樓以後真有可能梯子被抽走”。
如果再結合1月放出的“特朗普政府阻止荷蘭向中國出售光刻機”消息,美國對中國高科技產業的絞殺戰發起了一波接一波的攻擊。若不是後來美國自身疫情暴發,股市接連熔斷,擔心再對中國出招會打擊自身市場信心,美國絕不會停手。
2月24日,華為在巴塞羅那舉行終端產品與戰略線上發佈會,推出了備受矚目的摺疊屏手機升級款Mate Xs。這場發佈會另一個關注點是確認了沒有之前各種所謂“好消息”出現,華為手機依然不能獲准安裝GMS(Google Mobile Service,谷歌移動服務),華為正式推出HMS(Huawei Mobile Service,華為移動服務)作為代替。為了最大限度提升華為HMS影響力以及生態建設步伐,華為特意成立了全面負責HMS生態建設的二級部門——全球生態發展部。同時華為還宣佈將啓動10億美元耀星計劃,吸引更多開發者加入到華為HMS生態系統中給用户帶來更多的app。3月26日在巴黎全球首發的華為P40旗艦系列新機也搭載華為HMS服務。而實際上從2019年5月16日以後,華為未向Google提交註冊的新機均無法再預裝GMS。HMS的推出,標誌着華為手機與Google安卓系統所打造的主流生態開始“脱鈎”。

在科技戰場上,美國的戰略目標非常明確,就是要對中國的高科技領頭企業釜底抽薪,不準再與他們在相同的科技基礎上競爭發展——同台競技,不存在的,給你踢下台去。簡而言之,就是逼迫中國高科技產業與美國“脱鈎”。
“脱鈎”即將到來,中國高科技產業能否相抗?是否有取勝機會?這一兩年關於中國高科技產業戰略準備的文章已經很多,它們覆蓋了許多方面,但相較而言對於賦予高科技產品“靈魂”的軟件卻較少涉及。作為一個軟件行業曾經的從業者,我對瞭解到的軟件行業的戰略準備與讀者們做一個系列分享,這是第一篇,講國產數據庫軟件的發展情況。
數據庫是什麼?
在基礎軟件中,數據庫和操作系統一樣都屬於應用最廣泛的技術。簡單而言,數據庫就是用於集中存儲數據的軟件,通過它對數據進行查詢、計算、統計等操作。各種互聯網應用,都離不開數據庫產品的支撐。我們打開淘寶瀏覽商品信息、查看天氣預報、叫外賣打車……背後都是數據庫在運算並將數據進行反饋。金融行業更是數據庫的大客户,數十億個銀行賬户,存、貸、滙業務的餘額、每一筆變動,都需要有穩定、安全的數據庫產品支撐,否則會出大問題。而國計民生的方方面面,包括飛船上天、高鐵運行、通信傳輸、能源保障……只要與數據相關的行業與行為無時無刻都離不開數據庫的強大支持。
由此可見數據庫是一個核心的基礎科技產品,如果被國外技術卡住脖子,可以想象將會何等被動。然而現實是國外數據庫產品牢牢佔據中國數據庫市場絕大多數份額。數據顯示,2015年中國數據庫市場,Oracle份額為56%,遠超排在第二的IBM15.9%,微軟份額第三為9.5%,SAP以8.5%排第四。這四大數據庫巨頭合計市場份額為89.9%!
以上四家外企(前三家為美企,SAP是德企)中的Oracle該年在全球數據庫市場的份額是43.9%,在中國的份額整整高出12%。而Oracle的老闆拉里·埃裏森(Larry Ellison)在2018年10月26日接受福克斯商業台訪談時發表的言論是:“中國是美國自上世紀30年代以來的首個嚴峻對手,不能讓中國培養出比美國還多的工程師。如果讓中國的科技公司打敗我們的科技公司,不久之後,我們的軍事也會落後於中國,我們的經濟也是如此。我們與中國存在激烈的競爭,我站美國隊,希望我們能夠獲勝,我們可不想屈居第二。”

同時他還指責中國“盜用我們的知識產權為他們(中國)帶來了巨大的優勢”,雖然補充了一句話“我的意思是他們可以在我們知識產權的基礎上創造屬於他們自己的知識產權。”
而在2019年5月,Oracle中國區宣佈裁員1600人,中國區研發人員全部裁撤,Oracle中國區從此只是一個銷售與支持機構。埃裏森是否真在實施其“不能讓中國培養出比美國還多的工程師”的主張?
國產數據庫發展歷程
最早計算機發明之時,只有數據而沒有庫的概念,數據和程序混在一起。到了20世紀50年代,隨着操作系統的出現,新的數據處理系統迅猛發展起來,誕生了專門管理數據的系統,不過那時只是一種存儲離散數據的文件系統。真正意義上的數據庫系統始於60年代,其中最成功的是SABRE,它是IBM用來幫助美國航空公司管理其預訂數據的。1964年,美國系統發展公司(System Development Corporation,SDC。1959年由著名軍工機構蘭德公司建立,是美國第一家成規模的純軟件公司)首先使用“DataBase”(即“數據庫”)描述當時為美國海軍基地研製的數據系統。1974年至1977年間出現了兩個主要的關係型數據庫系統原型,它們分別是UBC(University of British Columbia,不列顛哥倫比亞大學,位於加拿大温哥華)開發的Ingres和IBM創建的System R。受這兩個數據庫產品技術成果的啓發,湧現出IBM的DB2、Oracle、Sybase(2010年被SAP收購)與微軟的SQL Server,這四大巨頭今天依然雄霸全球數據庫市場。
而直到1979年Oracle 2(實際是第一版,但埃裏森為了好賣軟件堅持叫第二版)開始商業化時,我國才開始數據庫理論研究。在人才、技術、資金都缺乏的條件下,我國採用了兩條腿走路的方式:
第一條腿,直接引進國外先進數據庫。1989年引進Oracle,1991年引進Sybase,1992年引進了IBM的DB2和Informix,同年微軟在北京設代表處……
第二條腿,從上世紀90年代開始,以大學和科研機構為主參照國外技術開發。其中代表為:華中理工馮玉才教授自主研發的達夢(DM),人民大學王珊教授研發的人大金倉(Kingbase),南開大學的南大通用(GBase)以及神舟集團和南大通用合作開發的神舟通用(OSCAR)。
説到核心科技產品的國產化,有一個人必須要提到,他就是倪光南院士。在1999年結束不算太愉快的合作後,倪院士帶着他的夢想離開了聯想。1983年從加拿大國家研究院回國以來,倪光南執着的夢想就是要發展中國的計算機核心技術。1939年出生的他,在自己60歲這一年,終於可以把全部的精力投入到實現夢想的行動之中。他主張要建立“自主可控”完整的計算機軟硬件產業體系,通過國家計劃給予扶持,並且在政府採購中傾向國產軟硬件進行產業引導。從那一年開始,這位老人一直積極地在政府、企業之間奔走呼籲。
經過政府、專家、企業的共同努力,國產數據庫企業於2006年迎來重大利好消息。國務院發佈《國家中長期科學和技術發展規劃綱要(2006-2020年)》,明確提出實施“核高基”重大專項。核高基就是“核心電子器件、高端通用芯片及基礎軟件產品”的簡稱,是與載人航天、探月工程並列的16個重大科技專項之一。其中基礎軟件包含操作系統、數據庫和中間件。該專項持續至2020年,中央財政為此安排預算328億元,加上地方財政以及其它配套資金,預計總投入超過1000億元。
然而在專項實施10年之後,國產數據庫軟件在中國數據庫市場佔有率為多少呢?2016年我國國內主要數據庫企業南大通用銷售收入為2.35億元,佔同期國內數據庫市場規模總量的2.3%;愛可生銷售收入為0.76億元,佔比為0.8%;人大金倉銷售收入在0.65億元左右,佔比為0.7%;山東瀚高銷售收入為0.58億元,市場份額為0.6%。
國產數據庫發展如此緩慢,是什麼原因造成的呢?這個原因在倪光南院士一位曾經的助手的覆盤中可以發現蹤跡,雖然這個經驗只是關於國產CPU與操作系統的:
“第一棒是核心元器件。第二棒是無數小的Design house圍繞Intel做公板、做產品創意、做產品原型、做差異化做優化。”
“搞不定的依然是操作系統。差距大的依然是生態。當年,繞得過Intel,跨不過微軟。如今,繞得過Arm,做不出安卓。安卓有三:
1. 不斷迭代優化的安卓系統本身
2. 現在大家已經非常習慣的基於安卓的各種應用:微信、商務、遊戲、生活、娛樂……
3. 全球無數團隊,基於安卓在源源不斷地創意,開發新的應用,不斷繁榮、優化這個生態。”
根本原因在於“生態”!一個成功的產品,無論是硬件還是軟件,會帶動一大批相關的公司與人才。他們在這個產品的基礎上持續投入時間、智力與資金,並由此獲得各種利益。所謂生態,在地面之上的產品是一棵樹,而在地面之下的各種機構與人是發達的根系。樹冠吸收二氧化碳生成軀幹推進根系深扎土壤,根系汲取水與養分助力樹冠發展,相互成就一損俱損、一榮俱榮。
圍繞頭部的數據庫產品,同樣形成了強大的生態系統。數據庫是專業化程度很高的系統,其使用、部署、開發、運維都需要專業人員負責。數據庫公司除了自己提供相應支持與服務,還通過教育培訓輸出這種能力。從Oracle為例,按照披露的2009年報,其收入來源分為軟件與服務,比例為81:19。而服務包括諮詢、定製與教育,分別佔收入的14%、3%和2%。看起來教育的收入佔比不高(絕對值也有4.6億美元),但Oracle對它的定位卻非常明確。在年報中是這麼説的:“The purpose of our education services is to further the adoption and usage of our software products by our customers and to create opportunities to grow our software revenues. ”(我們的教育服務的目的是為了讓顧客更進一步採購與使用我們的軟件產品,並且創造出增加我們軟件收入的機會。)Oracle的教育培訓打造了完整的認證體系,如果通過它的三級認證即可成為全球承認的熟練掌握Oracle技術的IT專家。分為三個不同的層次:OCA(Oracle Certified Associate,甲骨文認證夥伴)、OCP(Oracle Certified Professional,甲骨文認證專家)和OCM(Oracle Certified Master,甲骨文認證大師)。


拿到這3種認證的技術人員成為了信息化領域的熱門人才可以拿到高額薪水。同時因為Oracle數據庫的廣泛使用,越來越多的應用基於它進行開發,越來越多的諮詢、代理、維護機構為它服務從中獲利。
而Oracle這家公司除了擁有強大的數據庫產品,在經營上也以狠厲著稱。它在數據庫相關的應用軟件領域積極攻略:在每個相關領域都推出自家產品主動進攻,如果自家產品不行就大舉收購,力圖消滅視野中的一切競爭對手。
2004年12月,以103億美元收購當時全球最大的HR軟件商Pepolesoft(仁科,1987年創立的美國老牌軟件企業),拉開了Oracle大額收購的序幕。
2005年9月,以58億美元收購全球最大的CRM供應商Siebel(由從Oracle離職的Thomas M. Siebel在1993年創立)。
2007年3月,以33億美元收購績效管理軟件供應商Hyperion(當時EPM市場份額最高),強化與SAP在ERP領域的競爭實力。
2008年1月,以85億美元收購中間件供應商BEA(著名的Java中間件軟件公司,由美籍華人莊思浩與同事於1995年共同成立,其中間件市場份額一度比IBM還要高),強化與IBM在中間件領域競爭實力。
……
經過這一系列收購,面向大型公司的數據庫應用場景已經遍佈Oracle的應用軟件產品。Oracle這樣的數據庫行業巨頭,它的產品形成的生態體系已經不僅僅是一棵大樹,而是整整一座遮天蔽日的森林,客户能避開它的數據庫也避不開使用該數據庫的應用軟件。更何況它還用利益鏈條捆綁了眾多外圍機構與人才,協助這個生態不斷生長、延展。
很顯然,核心基礎軟件自主可控的頂層設計者們已經注意到了其中的利益關係,對策也是從利益入手:對國產同類產品的種子們,以政府引導基金為雨露促萌發、以政府採購的傾斜為陽光引成長。但實際上,這樣長出的數據庫產品的幼苗在參天大樹組成的森林裏要茁壯成長,難度實在太高!可能童鞋會問,“核高基”這樣的專項基金投入也不少了,為什麼?難道是……?其實掰着指頭算算:在“核高基”中,軟件只是其中的“基”;而在“基”中數據庫只是其中一項;能拿到基金的錢的數據庫企業不只一家,而且這要被細分的1000億還是以15年的時間跨度來給,僧多粥少每一家每一年又能拿到多少呢?而Oracle一場收購花費的資金起步就是幾十億美元!僅2009年一年它在研發上的投入也有28億美元。起步晚、積累少、拼錢也拼不過,要想在數據庫市場中殺出來,太難!

那為什麼不狠下決心起碼在政府採購中完全排除國外產品,為國產產品弄一塊自留地呢?畢竟美國都以莫須有的“國家安全”為理由禁止華為在美國全境(不是隻於政府採購)銷售,而且在國際上也威逼利誘各國禁用華為。跟美國一樣決絕,他做初一我做十五,這個不是做不到,而是非當前局勢的上策!至於原因我們放在後面再説。
似乎國產數據庫軟件的發展走入了死局:錢花了,時間也過了這麼久,事沒辦成也看不到成的苗頭。很多關心產業發展的人士免不了唉聲嘆氣。前面提到的那位倪院士前助手的文章其實把國產自主可控系統的前景看得一片灰暗。當有人問倪院士的看法時,老人家只是微微一笑:還是太年輕,賬不是這麼算的……
事情正在起變化
時間轉眼來到2019年,這一年的頭等大事是建國70週年,在觀看了盛大的閲兵式興致勃勃地討論過各種尖兵利器之後,第二天傳來了一個關於數據庫的好消息:權威機構TPC官網披露,中國螞蟻金服自主研發的金融級分佈式關係數據庫OceanBase,在TPC-C基準測試中,打破了由美國公司甲骨文Oracle保持了9年世界紀錄,成為首個登頂該榜單的中國數據庫產品。

聽到這個消息的人們先是感到振奮,再是奇怪:這麼長時間沒什麼動靜,怎麼突然之間放了個衞星?仔細一看還能發現疑點:TPC是什麼鬼,不會是什麼山寨機構吧?TPC-C測試又是什麼鬼,不會是那種給錢就能過的吧?之前的紀錄9年都沒有刷新,不會是拿個過時標準來忽悠外行吧?這還真是冤枉了。TPC,即國際事務性能委員會是數十家會員公司(Intel、AMD、微軟、Oracle、IBM、華為、阿里巴巴、HP、聯想、DELL都是其會員)創建的非盈利組織。TPC-C測試規範由TPC在1992年7月發佈,是關於商品銷售的訂單創建和訂單支付等的基準測試標準,是數據庫聯機交易處理系統(OLTP)的權威基準測試標準。幾乎所有在OLTP市場提供軟硬件平台的廠商都發布了相應的TPC-C測試結果,供客户作為產品選型的重要依據。
至於為什麼這個榜首9年沒有變過,那是因為TPC-C測試的要求非常嚴格,如果只為了對產品心裏有數自己測一下也還罷了。一旦要把結果登記到TPC的榜單上,TPC會派出專家團隊現場監督測試,整個週期持續長達半年以上,花費自是不菲。而Oracle在2010年測試得到3000多萬的結果實在過於彪悍,其它廠商測不過,Oracle也就沒動力進一步刷新。Oracle最新的測試結果是 2013年3月份做的,在榜單的第四名,那是為了推廣自家的SPARC處理器(是的,Oracle有自己的硬件。它於2010年1月完成了對Sun公司的收購,獲得了硬件產品能力)。不排除Oracle的新產品能再次登頂,但這次Oceanbase對Oracle原有記錄翻倍的超越,還是有力證明國產數據庫產品已經躋身世界一流的行列了。
要知道對於國產核心軟件,之前最樂觀的估計、最賣力的吆喝也是説國產同類產品性能相當、差距不超過X年、關鍵時候頂得上、保證不被卡脖子、備胎隨時可以轉正……突然之間來一個性能超出這麼多的,還真是讓人不太適應。
這背後到底發生了什麼?
這一切要從那一年的那個節説起。
2014年淘寶的雙十一購物節已經進入了第5個年頭。雙十一已經成為一個新民俗,成了全國人民都盼望的日子。這個生造的節日所創造的銷售奇蹟和年年刷新的紀錄,更是讓公司上下都神采飛揚、樂不可支。但是在一片歡樂祥和的氣氛中卻有一些顯得不合羣的人,他們就是公司的數據庫支持團隊。在2013年的雙十一,數據庫的運行又一次到了崩潰的邊緣。“下一次絕不能再出現這樣的情況!”上頭已經下達了死命令。雖然這種死命令每次雙十一之後都會下達,客觀原因都是流量遠遠超出預期才出現的逼近崩潰。但以前團隊都能咬咬牙接下來,這次卻是心裏真沒有底,因為Oracle數據庫已經沒有可以挖掘的潛力了。2013年雙十一,支付寶的備戰室裏多出來一幅關公的掛畫,一羣技術男對着關老爺頂禮膜拜,祈求數據庫別崩。2013年險險過了,2014年能靠誰?這年又是移動互聯網大爆發的年份,指數增長的移動支付比例勢必帶來比往年更洶湧的流量峯值。團隊根據壓力測試得出結果,用盡各種招數Oracle總有10%的流量無法支撐。這肯定是要崩啊!怎麼辦?
很快,上面就決定,説是公司有一個自研的數據庫叫Oceanbase的,開發好了一直沒地用,就讓它來接這10%!一個自研數據庫從來沒有挑過大梁,怎麼就要在雙十一擔負這麼重要的角色呢?但是他們説已經決定了,數據庫團隊的人只好唸了兩句詩:枸……杞……
這時距離2014年的雙十一,時間已經不足兩週。但是經過緊張的調整,解決了一些小毛病以後,初次上陣的Oceanbase竟然經受住瞬時巨大流量的狂轟濫炸拿出了漂亮的戰績。2014年的雙十一也成了一個轉折點,數據庫團隊再也不用阿里爸爸擔心他們的學習了!
之後,食髓知味的公司高層越來越大膽地把數據庫的重任移交給Oceanbase。2014年雙十一,OceanBase僅處理10%的交易數據鏈;2015年雙十一,OceanBase處理100%交易數據鏈和50%支付數據鏈;2016年雙十一,全部交易數據鏈和支付數據鏈以及30%花唄賬務運行在OceanBase上;2017年雙十一,包括整個賬務庫在內的全部核心系統都100%運行在OceanBase上。也是從這一次開始,雙十一已經不再使用Oracle數據庫,實現了完全的“去O”。
當然這個故事裏的公司高層並不是只會拍腦袋的莽漢,做出這個決定的原因是在計算機行業發生了一次重要的技術革命——雲計算。雲計算是什麼呢?簡單來説,原來的計算機分成個人計算機(PC)與服務器,個人計算機嘛就是一台計算機一個人用,而服務器則是一台計算機通過網絡連接供多人使用。像我們訪問網頁,使用微信和各種需要聯網的APP,其背後都是訪問服務器上的特定服務。隨着訪問服務的用户越來越多,原有那台服務器不堪重負,這時的解決辦法可以是換成內存更大、運算更快的服務器。但單台機器總有性能上限而且費用上升也相當可怕,這時就有新的解決辦法:把多台服務器組織起來,並用專門的軟件來進行管理,平衡各台機器負載的同時讓外部訪問者看起來訪問的只是一台機器。這後一種解決辦法發展的極致就是雲計算,它是分佈式計算、效用計算、負載均衡、並行計算、網絡存儲、熱備份冗雜和虛擬化等計算機技術混合演進並躍升的結果。按照雲計算描繪的圖景,各家服務商在使用該技術之後將不用再擔心計算機資源不夠的問題,可以根據需要隨時擴展。這項技術對於患有“計算資源不足恐懼症”的阿里巴巴來説簡直就是天賜福音。
未完,請看下篇:迎接即將到來的“脱鈎”,國產軟件的戰略準備:數據庫篇(下)
歡迎關注我的微信公眾號:跟陶叔學編程