MariaDB 公司創(chuàng)始人兼 CTO Michael Widenius(左2)、MariaDB 基金會主席 Kaj (左1)和騰訊云技術人員現場暢談技術和合作
Monty 被視為 MariaDB的“技術靈魂”,在業(yè)內享有頗高聲望。他是 MySQL 第一行代碼的作者。在MySQL被甲骨文收購后,Monty再創(chuàng)立MariaDB公司,同時成立非贏利組織 MariaDB 基金會,成為MySQL最重要的持續(xù)開源分支之一。
MariaDB 公司創(chuàng)始人兼 CTO Michael Widenius(左2)、MariaDB 基金會主席 Kaj現場review代碼
現場,騰訊云專家工程師張青林向Monty展示了騰訊云數據庫開源的最新進展。在談到技術細節(jié)時,Monty十分興奮,立即找到代碼進行驗證,并對結果表示肯定。Monty表示:“騰訊云數據庫內核團隊所做的工作正是 MariaDB 所需要的,無論是作為會員還是對于技術方面的貢獻。我們非常希望由 TXSQL(騰訊自研數據庫CynosDB的內核引擎)團隊來推進 MariaDB 的內核完善工作?!彪p方共同敲下回車鍵,將最新的開源代碼提交至GitHub。
開源不遺余力
騰訊云在開源社區(qū)影響力正在持續(xù)提升。自2017年騰訊云正式成為MariaDB基金會最高級白金會員以來,深度參與基金會的各項會議與決策,不遺余力地輸出騰訊在MariaDB數據庫上的經驗和技術,受到MariaDB社區(qū)及開發(fā)者的一致認可。
就在上個月,曼哈頓的MariaDB用戶者大會上,騰訊云數據庫團隊再向MariaDB官方提交四個重要Patch,包括:Binloglotate優(yōu)化、Binlog速度限制、企業(yè)級函數加密插件、Droptable優(yōu)化。這是繼去年在內存優(yōu)化、InnoDB引擎、聚合運算等層面提交多個Patch后,騰訊云數據庫團隊再次發(fā)力。
據張青林介紹,目前騰訊云數據庫團隊針對MariaDB社區(qū)的主要貢獻體現在四個方面。
1、在內存優(yōu)化層面,騰訊云MySQL內核團隊針對information_schema多度占用內存進行深度優(yōu)化。由于在涉及Information_schema相關操作時,會使用內存來緩存結果集,當鏈接數較多的時候會占用大量的內存。TXSQL內核團隊對這一問題進行了優(yōu)化,對于查詢結果不涉及到的字段,減少查詢語句過程中所使用的內存,從而降低資源的使用率,這一改進已合進MariaDB 10.4 版本。
2、針對內核使用過程的常見問題,MySQL內核團隊也進行了深入分析與優(yōu)化,包括大表刪除問題和企業(yè)級加密功能,并將這些通用功能提交給 MariaDB 官方。
TXSQL內核將要刪除的大表文件加入刪除文件隊列,每次只減少固定的空間,當空間小到一定程度的時候再進行刪除操作,從而解決了解決了大表刪除引起IO HANG,響應不及時、性能抖動等問題。整個刪除過程對用戶完全透明,不影響任何操作。
3、為方便用戶使用加密的功能,TXSQL 有針對性的開發(fā)了一套加解密函數功能,能夠有效管控明文數據的MySQL函數,通過基于OpenSSL的RSA/DH/DSA等加密算法進行數據保護。
4、在Binlogrotate優(yōu)化方面,為解決Binlogrotate所引起的寫阻塞問題,MySQL內核團隊優(yōu)化寫性能。日志是任何故障排除過程中非常重要的一部分,但這些日志會隨著時間增長。在這種情況下,需要執(zhí)行日志清理以回收空間。通過在Linux中配置 logrotate 程序,以自動執(zhí)行日志文件的輪換、壓縮、刪除和用郵件發(fā)出,優(yōu)化寫性能。
張青林表示,后續(xù)騰訊云還將在TXSQL內核研發(fā)上投入更多資源,并持續(xù)貢獻開源社區(qū)。
沖破 “上云”障礙
不止于MariaDB的技術開源,騰訊云在自建數據庫上的升級也為客戶帶來切實便利。
去年底,騰訊云發(fā)布了新一代自研云原生數據庫CynosDB。這是騰訊云在公司架構調整完成后,向外界發(fā)布的首款產品。在架構上,CynosDB在產品架構上完全兼容開源數據庫引擎接口,是國內首家兼容MySQL5.7和全球第一個兼容PostgreSQL10的云數據庫產品。
在世界范圍內,MySQL和PostgreSQL是市面上最主流的兩大數據庫產品。這意味著,CynosDB所具備的兼容性,可以讓企業(yè)幾乎無需更改代碼,就可以輕松實現“上云”。
數據庫“上云”,是大數據時代潛力巨大的市場。據Gartner預測,到2023年世界上四分之三的數據庫都會跑在云上,因此,云數據庫也被認為是未來云競爭的重要戰(zhàn)場。
目前,騰訊云數據庫團隊總共進行了近60多項優(yōu)化。為了提升系統可用性,CynosDB以軟件優(yōu)化與新硬件結合為理念,采用了先進的計算和存儲分離架構,實現了計算無節(jié)點狀態(tài),支持秒級故障切換和恢復,數據備份時間縮短到60秒之內,速度提升了180倍。
值得一提的是,CynosDB的”可計算智能存儲”進一步滿足企業(yè)的實際應用場景,讓企業(yè)按實際使用量計費,自動擴縮容。在降低企業(yè)開支的同時,輕松應對突發(fā)的業(yè)務規(guī)模變化。
Kaj、王義成、Monty、張青林在MariaDB用戶者大會現場合影
本月,在美國曼哈頓舉行的MariaDB用戶者大會上,騰訊云數據庫CynosDB以其極致領先的性能、獨特的技術架構以及眾多內核層面的創(chuàng)新特性受到包括MariaDB基金會主席Kaj、MariaDB創(chuàng)始人Monty以及眾多參會者的高度認可。
必有回響
近年來,騰訊在開源領域的投入不斷加大,深度擁抱并推動全球開源生態(tài)的發(fā)展,除了MariaDB基金會的白金會員,截至目前,騰訊已經獲得OpenStack、Linux Foundation、LF Deep Learning、MariaDB Foundation等國際知名開源組織的白金會員身份。此外,騰訊也是國內唯一的Apache白金贊助商。
創(chuàng)新不止,騰訊云數據庫不遺余力的開源工作,將持續(xù)擴大中國開發(fā)者在開源MariaDB社區(qū)的貢獻度與影響力。
(注:Tencent MySQL為騰訊深度定制的MySQL,簡稱TXSQL。)