日前,MariaDB 第一次年度用戶會議 (M|17)在美國紐約舉行。作為該基金會的中國代表,阿里云的分享被當地科技網站diginomica關注。記者Jon Reed表示,"阿里巴巴在本周的 MariaDB 用戶會議上所做的演講讓人吃驚。
以下是記者采訪的全文:
MariaDB 第一次年度用戶會議 (M|17) 的最大亮點之一是,來自亞太的開源倡導者講述他們的故事。阿里巴巴展示了通過云計算,如何更好地使用開源項目。同時,我對為什么開源數據庫項目能夠如此流行也產生了新的理解。
如果有機會聽阿里巴巴的工程師講述,你會了解到阿里巴巴在2009年便深耕B2B業務,到如今,阿里巴巴已超越沃爾瑪成為世界最大零售商。
阿里巴巴在本周的 MariaDB 用戶會議上展示的應用規模的確令人吃驚。在過去,出于高性能和安全性考慮,在商業數據庫上投入了大量的資金。到如今阿里巴巴擁抱開源和自主研發,希望在云計算領域一騎絕塵。
阿里巴巴 - 大規模開源項目
阿里巴巴對數據庫的性能,穩定性,安全性有著非常高的要求:
高負載下的穩定性 - 阿里巴巴需要支持對熱點商品記錄每秒 10 萬的并發更新。
安全性和可用性 -通過透明加密實現數據庫絕對安全,并保證持續可用
黑色星期五式電商浪潮 - 阿里巴巴每年的 11 月 11 日舉辦全球購物節(光棍節促銷),這是世界最大的 24 小時在線促銷活動。
巨大的銷售量 - 2016 年銷售額達 178 億美元,這給阿里巴巴系統帶來了巨大的性能壓力,業務峰值每秒訂單量達 140,000 個,每秒支付量 85,000 次。
開源項目代碼共享 - 雙向合作
在談論阿里巴巴如何與 Maria DB 合作時,阿里巴巴的高級數據庫工程師趙建偉及彭立勛詳細展示了阿里云數據庫的架構設計。包括其適配云計算環境的 MySQL 分支 AliSQL,。趙和彭是阿里云MySQL數據庫內核研發團隊成員,該團隊主要專注于 MySQL 和 MariaDB以及其它分支的相關工作。目前阿里云已支持超過十萬級數量的"MySQL"實例。
彭在其談話期間分享了 MariaDB 的開源社區與 AliSQL 之間的關系。這是一種雙向開源共享,阿里巴巴不但為 MariaDB社區貢獻力量,同時也移植MariaDB 中的功能,以及到最近的合作開發,比如合作開發的序列引擎,旨在幫助客戶的業務能平滑的從商業數據庫遷移到公有云開源數據庫平臺上。再比如動態加字段功能,旨在解決數據庫運維中的痛點。
阿里巴巴對 MariaDB 的貢獻包括多源復制、Flashback、 InnoDB自增值持久化等。從 MariaDB 移植的功能包括語句超時、動態空間收縮等。
在開源的項目中,你可以不必再使用傳統的方式將功能請求和漏洞提交給企業級數據庫廠商,
而是可以直接公開這部分功能或者修復代碼,主流分支就會及時跟進。
彭:有時候,MariaDB 想做的功能我們已經做完了。我們可以將我們的代碼貢獻給 MariaDB.這也為 MariaDB 節省不少時間,好去做其他重要的事情。另外一種情況,如果我們想做的功能 MariaDB 已經做完,那我們可以將這些功能移植到我們的分支。這也能為我們節省不少時間
積極擁抱開源
阿里巴巴積極擁抱開源,工程師也熱衷開源項目,比如大家熟知的Docker也是在阿里巴巴內部廣受歡迎的開源項目之一,彭立勛表示,其所在的團隊,可以通過開源項目,來幫助到社區和公司外部的用戶,這也是阿里巴巴向首次 MariaDB 用戶會議派遣三位工程師積極參會的原因。
彭: MariaDB是在開源方面最徹底也最友好的數據庫項目之一,不僅及時的同步開發活動和狀態,還幾乎可以看到所有的開發細節。
但是,所有"開源項目"都如此開放嗎?在彭立勛的經歷中并非如此。彭立勛表示,有些開源軟件項目不接受來自商業公司的補丁。"它們不接受其他補丁。即使我們進行了充分的測試。而MariaDB 則不同。我們能夠將一些成熟的補丁直接提交給 MariaDB."
開源理應成為客戶的一種新選擇
中國的公司在開源領域獲得技術紅利的同時,也開始進行了大量的資源和人力投入。互聯網技術的全球化發展,也讓大家面臨著相似的問題和挑戰。對于開源項目,彭立勛建議,盡可能的開啟安全防護,以免遭受惡意攻擊。
阿里云數據庫團隊的工作是讓客戶選擇和使用好數據庫軟件。MariaDB作為一個重要的MySQL分支,對阿里云在MySQL數據庫產品業務發展上起到了非常大的推動作用,彭立勛和他的團結也積極的保持和維護與MariaDB的合作關系。
阿里云數據庫團隊積極參與和跟進MariaDB提供的新功能,并向客戶了解他們的真實業務需求,以便尋求合適的解決方案。比如MariaDB提供的ColumnStore,如果能夠得以應用,可以無縫銜接OLTP和OLAP場景使用。