數據庫管理系統“正確打開方式” 中國還在尋找


數據庫管理系統“正確打開方式” 中國還在尋找



有一天你去銀行取錢 , 驚喜地發現:由于系統故障 , 你的賬戶顯示著馬云的數據……
這種事不可能發生 , 因為數據庫管理系統非??煽?。 網上買火車票 , 或者將照片上傳云端 , 你都離不開它 。
而商用數據庫管理系統的豐厚利潤 , 一直被甲骨文為首的幾家美國公司瓜分 , 中國產品望洋興嘆 。
速度和可靠 , 兼顧是難題
查詢銀行賬戶時 , 我們不知道數字來自哪臺計算機 , 哪塊硬盤 。 有數據庫管理系統(DBMS)替我們干活 。
DBMS就像圖書管理員:找到書架 , 存書 , 取書……說起來容易 , 但當圖書館特別大 , 而且書會拆開來放入相隔遙遠的架子時 , 管理起來就很麻煩了 。
在數據庫開發與實施方面有豐富經驗的IBM分析領域架構師羅曦光舉了一個例子——用戶修改數據時 , 相關存儲區域會被鎖住 , 其他用戶只能排隊等 , 如果DBMS存儲位置不合理 , 就會耽誤許多時間 。 數據操作的理想狀況 , 如同幾十只手彈奏一架鋼琴 , 各彈各的 , 互不影響 。
“數據庫管理系統 , 尤其是關系型數據庫管理系統(RDBMS)的方法論 , 教科書上寫得很明白;其功能和常見的圖書管理系統沒什么差別 。 但當數據量非常大 , 到了TB和PB級別 , DBMS性能不下降就是一大挑戰 。 ”羅曦光說 。
比如一個普通的大型網站 , 每秒鐘要處理十萬個查詢請求 , 數據庫得同時執行幾十個查詢任務 , 而且響應時間極短 。
“網絡用戶發送請求 , 期望一眨眼就得到結果 。 如果DBMS做得不好 , 響應時間長到10秒或20秒 , 用戶會喪失耐心 , 數據庫還可能經常掛掉 。 ”羅曦光說 , 要永遠不出故障 , 達到高可用性 , 需要很多專門技術 。
目前全世界最流行的兩種DBMS是Oracle和MySQL , 都是甲骨文公司旗下的產品 。 競爭者還有IBM公司的DB2、Informix , 微軟公司的SQLserver以及開源的MariaDB等等 。 甲骨文、IBM、微軟和Teradata幾家美國公司 , 占了大部分市場份額 。
國產替代難 , 輸在穩定性
DBMS國貨也有市場份額 , 但只是個零頭 。 銀行、電信、電力等要求極端穩妥的企業 , 不會考慮國貨 。 20年前就有人呼吁國貨替代 , 但一線技術人員并不情愿 。
“先發優勢、完善的售后技術支持和高額的遷移成本 , 是企業難以遷移到新系統的原因 。 ”羅曦光說 , 國內一家電商平臺為了從Oracle遷徙到別的系統 , 最多曾用上百人的團隊花了十幾個月 , 成本不菲 。
羅曦光認為 , 如今的開源DBMS做得很好而且免費 , 但銀行和傳統龍頭企業出于謹慎 , 對于將核心系統遷移到開源系統仍會持謹慎態度 。
穩定壓倒一切 。 DBMS行業觀察家曉軍在《國產數據庫發展現狀分析》一文中指出 , 國內DBMS企業大多源自1990年代的高校 , 期望實現國產替代 。 但多年來 , “產品的穩定性一直上不去 , 也不敢做有挑戰性的性能測試 。 所以 , 穩定性、性能都無法讓市場信服 。 結果就是:稍微重要一點的系統根本沒人敢用 。 ”
另外 , 曉軍說 , 當年國貨往往模仿Oracle , 追求大而全 , 而技術創新不足、沒有特點 。 相比之下 , 1990年代的美國小廠商極富創新力 , 開辟了一些全新的技術方向 , 在與甲骨文等巨頭的競爭中成功活了下來 。
“這個年代 , 開源DBMS的源代碼可以隨便下載 , 國內應該不會有新的入場者再去做傳統的DBMS了 。 ”羅曦光說 。
浩瀚代碼的背后 , 是浩瀚人才
“Oracle的數據庫軟件……代碼量堪稱浩瀚 。 ”曉軍說 , “Oracle最有特色的地方就是功能非常繁多 , 語句極端豐富 , 即便大部分都不常用 。 ”

推薦閱讀