繼開源跨平臺開發(fā)框架Weex之后,阿里巴巴再次宣布另一個重大開源項目AliSQL。
在8月9日召開的2016云棲大會·北京峰會上,阿里云宣布啟動AliSQL數(shù)據(jù)庫開源項目。該版本性能優(yōu)于社區(qū)版MySQL 70%左右,可幫助中小企業(yè)和開發(fā)者提升數(shù)據(jù)運營能力。阿里云方面表示歡迎大家共同參與開源項目,在使用的同時也貢獻智慧,為數(shù)據(jù)庫行業(yè)帶來更多進步。
記者有幸與阿里云數(shù)據(jù)庫團隊進行了一次面對面的對話,在這群活躍在當(dāng)今幾乎覆蓋所有類型數(shù)據(jù)庫領(lǐng)域的小伙子們身上,發(fā)現(xiàn)了我們正在苦苦找尋的東西:開放。
“阿里云在MySQL積累了至少8年以上,中間經(jīng)歷過像高并發(fā)、秒殺服務(wù)、數(shù)據(jù)安全等挑戰(zhàn)。以前我們把這些能力放在云上,讓人們能享受技術(shù)的紅利,現(xiàn)在我們希望把它開源出去,回饋到社區(qū),讓技術(shù)能平民化快速發(fā)展,發(fā)揮更大的價值。”
阿里云關(guān)系數(shù)據(jù)庫服務(wù)內(nèi)核開發(fā)和運維團隊負(fù)責(zé)人丁奇表示,將做了5年的MySQL數(shù)據(jù)庫宣布開源需要勇氣,阿里云希望將過去幾年沉淀的技術(shù)積累回饋到社區(qū),幫助更多使用MySQL的個人和企業(yè),這是社區(qū)良性發(fā)展的道路。
經(jīng)過多年歷練,阿里云已經(jīng)成為了中國云計算廠商中,對數(shù)據(jù)庫引擎支持最多的一家,其云數(shù)據(jù)庫支持的引擎超過了十個,覆蓋了70%的關(guān)鍵在線數(shù)據(jù)庫引擎。
以下是精彩問答
問:AliSQL有什么特點?
丁奇:AliSQL分支上的特點是安全性和高性能。在安全上,我們有數(shù)據(jù)加密存儲方案。通過修改源碼,堵住了通過MySQL提權(quán)獲取本地文件系統(tǒng)權(quán)限的關(guān)鍵通道,在安全性上我們做了很多改進的工作。
高性能一直是AliSQL的標(biāo)簽。從阿里自身業(yè)務(wù)維護開始,積累的性能優(yōu)化經(jīng)驗都體現(xiàn)在AliSQL上,我們在執(zhí)行計劃、io優(yōu)化、壓縮優(yōu)化上做了大量工作。
新增的功能也是AliSQL的一大亮點。我們有內(nèi)置的支持秒殺場景的方案、有限制導(dǎo)出數(shù)據(jù)時單線程性能消耗的語法、高效清空線程占用資源減少內(nèi)存消耗等功能。這些都是在長期服務(wù)內(nèi)外部客戶時,從需求中抽象和實現(xiàn)的功能。
問:為什么要開源AliSQL?
丁奇:AliSQL是基于MySQL的,并從Percona,MariaDB,WebScaleSQL等社區(qū)汲取精華,我們希望將過去幾年沉淀的技術(shù)積累回饋到社區(qū),幫助更多使用MySQL的個人和企業(yè),這是社區(qū)良性發(fā)展的道路。
由于官方提供的功能比較通用,支持了各種引擎,但有些引擎是不安全的,容易出事,我們要替用戶多考慮一些,把不安全的引擎替換掉,雖然這些功能官方不會接受,但我們覺得非常重要。在我們開源的這部分里,會盡量把通用的推給MongDB,推給Oracle,同時把bug貢獻給社區(qū),用最快的速度解決問題。
問:2015年的雙11,一天寫進數(shù)據(jù)庫的數(shù)據(jù)量就有10TB,今年將會做怎樣的應(yīng)對?
蕭少聰(阿里云數(shù)據(jù)庫產(chǎn)品專家,PostgreSQL中國社區(qū)主席):首先是buffer預(yù)留,這是傳統(tǒng)的應(yīng)對方案,還有高峰期的業(yè)務(wù)預(yù)估,還有對每個業(yè)務(wù)的健康度的打分,比如說雙十一我們會把預(yù)案自動化。其實很多類似聚石塔這樣的交易模型,在這幾年的護航里面我們都是比較清楚了,如何增加機器監(jiān)控與業(yè)務(wù)監(jiān)控等我們早已爛熟于心。我們把它能夠出現(xiàn)的異常都會事先給出自動化預(yù)案,提前布局,防范于未然。然后用打分機制去逐步的提高健康度,直到雙十一之前我們不需要再去干預(yù)。
問:都說今年是大數(shù)據(jù)年,阿里云數(shù)據(jù)庫在大數(shù)據(jù)方面會如何推進?
蕭少聰:我們在整個ApsaraDB大的產(chǎn)品框架下,就正在推進這個方向。前期分析型數(shù)據(jù)庫GreenPlum已經(jīng)在公測,后面我們還有小數(shù)倉這樣的項目,它的目是就是幫助用戶用OLTP的形式導(dǎo)入數(shù)據(jù)庫,在內(nèi)部系統(tǒng)之間實現(xiàn)平滑流轉(zhuǎn)并分析,我們叫它跨數(shù)據(jù)類型分析。
問:阿里云數(shù)據(jù)庫運維功和安全功能很強大,對傳統(tǒng)的DBA會不會造成沖擊?
丁奇:今天開一個云上服務(wù)器,點一下按鈕,五分鐘內(nèi)什么HA、數(shù)據(jù)備份都搭好了。其實,我們看到越來越多的傳統(tǒng)行業(yè)包括金融,甚至制造業(yè)都在往云上靠,他們希望通過云的方式,解放DBA真正的價值。
以前我們把DBA分為運維DBA和業(yè)務(wù)DBA,其實現(xiàn)在也沒有了,運維這層已經(jīng)被云的功能替代掉了,F(xiàn)在阿里云內(nèi)部的云數(shù)據(jù)庫,有三百多個業(yè)務(wù),只有一個DBA在管。
傳統(tǒng)企業(yè)也希望他們的DB不是每天都在做備份、檢查、復(fù)制、監(jiān)控的工作。現(xiàn)在阿里的雙十一都是自動化的,運維人員更輕松, DBA應(yīng)該把時間空余出來,更好的去優(yōu)化SQL,讓企業(yè)運行得更好,去產(chǎn)生真正的業(yè)務(wù)上的價值。DBA這種職業(yè)是永遠(yuǎn)存在下去的,并不是被取代,只是原來可能很多是勞動型轉(zhuǎn)向架構(gòu)或者是腦力運行的形式。