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