摘要:通過雲服務形式提供資料庫功能的雲資料庫應運而生,但這還僅僅是資料庫變革的開端。 本文分享自華為雲社區《透視華為云云原生資料庫的前世今生及未來演進,能給行業帶來哪些啟發?》,作者:萬佳。 自雲計算出現後,風雲變幻十餘載,硬體、軟體行業都經歷了重構變革所帶來的機遇與激蕩。企業 IT 基礎設施逐漸雲 ...
摘要:通過雲服務形式提供資料庫功能的雲資料庫應運而生,但這還僅僅是資料庫變革的開端。
本文分享自華為雲社區《透視華為云云原生資料庫的前世今生及未來演進,能給行業帶來哪些啟發?》,作者:萬佳。
自雲計算出現後,風雲變幻十餘載,硬體、軟體行業都經歷了重構變革所帶來的機遇與激蕩。企業 IT 基礎設施逐漸雲化,應用轉向雲端,系統架構也經歷了從單體到微服務再到 Serverless 架構的演進。這些變化一方面為用戶提供了更優秀的特性,另一方面也對雲計算的組件提出更高要求。大勢的裹挾之下,資料庫作為雲計算關鍵技術和最基礎的服務之一,同樣需要不斷進化以適應日新月異的場景需求。自此,通過雲服務形式提供資料庫功能的雲資料庫應運而生,但這還僅僅是資料庫變革的開端。
雲資料庫進一步演進:雲原生資料庫誕生
相比傳統資料庫,雲資料庫確有一定的進步,但是其本質上並非針對雲場景或雲環境來設計和構建的,只是用到了雲的資源,因此存在一些局限,比如資源利用率低、維護成本高、可用性低等,從而限制了業務發展。隨著雲計算深入發展,雲計算步入雲原生時代。同時,越來越多企業加速數字化轉型,業務對數據的訴求不斷提升,倒逼著雲資料庫進一步演進,更加適應雲特性的雲原生資料庫就此誕生。雲原生資料庫的目標主要是充分利用雲基礎設施的資源彈性調度實現資料庫資源的極致彈性伸縮、數據就近訪問、多模相容,讓用戶專註在業務創新,而不用在資料庫管理和運維層面耗費資源。雲原生資料庫的這些優勢,受到越來越多企業的歡迎,而且熱度不斷攀升,已經成為資料庫行業的重要發展趨勢之一。
雲原生資料庫緣何興起
為什麼雲原生資料庫這麼火?在華為雲資料庫軟體總工程師彭立勛看來,第一,傳統資料庫的使用門檻相對較高。以前,資料庫主要是本地部署(On-Premises),從採購機器、規劃容量到部署軟體,整個過程非常複雜。他說:“有了雲計算,尤其是雲原生資料庫出現後,正好遇上企業數字化轉型,對資料庫的需求增加,而雲原生資料庫可以開箱即用,不用像以前那樣做大量規劃、採購和部署等。”
第二,雲原生資料庫能滿足企業對資料庫彈性伸縮的需求。而傳統的做法是靠 DBA 規劃,這很容易出現問題。對此,彭立勛深有感觸,他以前做 DBA 時,要對容量做很精細的規劃。如果規劃沒做對的話,要麼浪費資源,要麼性能不足,然後還要重新調整。
第三,雲原生資料庫可以從技術上解決傳統資料庫面臨的資源、性能和擴展性受限等問題。傳統上,這些問題要靠 DBA 不斷提升自己的技術能力去解決。他表示,雲原生資料庫出現後,雲服務商提供的相應產品本身就具備這樣的能力,因此對企業來說,資料庫的使用門檻大大降低。所以,在進行數字化轉型時,很多企業傾向於選擇雲原生資料庫。從傳統資料庫到雲原生資料庫,這是資料庫自身的演進。更重要的是,資料庫演進的背後折射出企業業務的變化。
據彭立勛介紹,首先,從以資源為中心到以應用為中心。從企業視角出發,它一定有一些自身需求,比如要求資源能彈性擴展。以前,缺乏這種技術時,企業主要是以資源為中心,有多少資源配多少資料庫,然後再根據資源的表現和負載情況進行調整。雲原生資料庫出現後,從以資源為中心轉變成以應用為中心,通過技術手段讓用戶使用更簡單。企業只管用資料庫,不用管背後到底需要多少資源。如果資源不夠,系統自動幫你擴展,或者用戶手動進行彈性擴展,速度更快、效率更高。並且,企業無需像以前那樣預先規劃資源,直接自動或手動調整資源即可。
其次,從以地域為中心到以流量為中心。以前,數據在哪,應用就要佈置在哪,或者說應用在哪,數據也要同步到哪,這是以地域為中心。為了給用戶提供最快訪問,企業往往需要在各地設置數據中心,然後通過各種方法把數據同步到用戶就近訪問的地方。基於雲原生資料庫,企業只需要關註流量從哪裡來,用戶從哪裡訪問,資料庫會將數據分佈到不同的 Region,應用就近、隨時隨地訪問數據。彭立勛表示:“應用在哪,資料庫幫你把數據往哪同步。對用戶來說,全球是一張網。”
最後,從以負載為中心到以數據為中心。傳統上,不同的負載要放在不同的資料庫里,比如報表、分析類的會放在一種資料庫里,文檔或鍵值類的放在另一種資料庫。雲原生資料庫出現後,用戶不同的負載由雲服務商在後端適配不同的資料庫實例,或者幫用戶做同步,將數據放到適合做相應查詢的資料庫里。不管用戶使用什麼類型的負載和數據模型,都由雲服務商幫用戶判斷。
“比如偏 OLAP 的,我們把它轉到適合 OLAP 的數據查詢的節點上。簡單說,華為云云原生資料庫改變了用戶習慣,讓用戶對資料庫的使用變得沒有那麼複雜。”他補充道。
此外是商業模式的改變。傳統資料庫是基於授權來獲取商業收入,企業在使用資料庫前要先購買 license。如果預估不准,企業採購的 license 就會存在浪費或不足的情況。而雲原生資料庫是以雲服務的方式提供給用戶,按需使用,用多少資源、使用多長時間,相應的為使用資源付費。
雲原生資料庫命中企業痛點,最大挑戰不在技術
基於長期的行業觀察,彭立勛總結出雲原生資料庫的價值。首先,雲原生資料庫開箱即用,使用簡單,用戶只要購買雲原生資料庫的服務,就可以直接使用。同時,按需使用,需要多少資源,用戶就購買多少資源,一旦資源不夠,還能快速擴容。這大大降低了企業使用資料庫的門檻,減少企業在資料庫部署等基礎運維和管理上的人力投入。
其次,對資料庫人員來說,不用關註最底層的運維問題,可以更靠近業務,關註數據處理等更有價值的問題。如此,不僅可以提升資料庫人員的能力,而且能給企業帶來更大的價值。
然後,雲服務商將整個技術打包成服務,提供給所有用戶,這讓一些中小企業能像大企業一樣使用相同的雲原生資料庫服務,享受技術帶來的紅利。此外,雲原生資料庫可以讓企業應用系統更高效快捷地處理數據,充分發揮數據的價值。彭立勛解釋道,“以前,中小企業可能沒有那麼多資源部署數據挖掘和分析。而現在採用 華為云云原生資料庫後,它提供 HTAP 混合負載的能力。這樣,中小企業也可以做一些輕量級的數據分析,挖掘數據中的價值,讓企業更專註在業務創新上。”
目前,雖然雲原生資料庫很火,但是企業在採用過程中依然存在挑戰。在彭立勛看來,很多企業從傳統的商業資料庫向雲原生資料庫遷移時,最大的挑戰倒不是技術本身,而是很多的技術人員還是從傳統資料庫的角度出發,利用傳統資料庫的思維和積累的經驗,來使用雲原生資料庫。
他強調,雲原生資料庫並非簡單地把傳統資料庫搬到雲上,它對資料庫進行了全面重構,充分利用了雲的能力,帶來一些新優勢。所以,如果還是按照傳統資料庫的使用習慣和思維模式,將無法發揮雲原生資料庫的優勢,甚至可能會增加其使用成本。當然,對企業而言,是否採用雲原生資料庫,它需要根據具體業務進行判斷。
從業務角度看,雲原生資料庫更適合偏互聯網型的業務,諸如電商、社交、文娛、游戲、車聯網等。偏互聯網型的業務非常敏感,變化快,業務體量的彈性非常大。以游戲為例,一款游戲在突然火爆後,游戲公司需要在短時間內彈性擴展整個系統處理能力。而一款游戲進入收縮期後,需要快速收縮資源、節省成本。這類變化非常快的業務會對資料庫的性能、彈性伸縮、快速部署等提出很高的要求,這恰恰是雲原生資料庫的優勢所在。無論是什麼樣的企業,只要是偏這種類型的業務,都非常適合使用雲原生資料庫。
雲原生資料庫未來將如何發展
從星星之火到燎原之勢,在資料庫領域,雲原生資料庫蔚然成風,風起雲涌之後的雲原生資料庫又將怎樣演進、駛向何方?
在華為雲看來,“以客戶為中心,解決客戶最關註的問題”是接下來雲原生資料庫發展演進的關鍵。基於此,華為雲提出雲原生資料庫的三大發展方向:Serverless、Regionless 和 Modeless,這也成為 華為云云原生資料庫 的發展指南。
彭立勛說:“客戶最關註的幾個問題,一是資源調度,二是數據訪問,三是使用體驗。現在,越來越多的客戶希望聚焦業務,聚焦於挖掘數據的價值,而非聚焦做一個具體的技術,因為對大部分有這種業務的企業來說,它並非一家做 IT 技術的企業,它關註的是自己所在領域的業務。所以,針對這幾個方面,我們提出 Serverless、Regionless 和 Modeless 三大發展方向。”
具體說來,Serverless 要解決資源調度問題,實現資源的極致彈性。在遭遇故障、規格變更時,整個資源彈性調度速度可以從分鐘級縮短到秒級,這樣對用戶來說,真正的無感知;Regionless 是解決用戶的數據訪問,資料庫全域可用,業務可以在任意地方進行接入和訪問,同時帶來跨地域的高可用,用戶只需關註業務的數據流動而不用擔心業務的跨地域部署和訪問;Modeless 要解決的是使用體驗,一個統一入口能智能地處理各種類型的負載,不管是交易型、分析型、 NoSQL模型、 MySQL 模型,我們以統一入口,提供給用戶,提升用戶的易用性和效率。
當然,Serverless、Regionless 和 Modeless 的落地應用還需要更具體的技術支撐。Serverless 方向,華為云云原生資料庫在三個能力上重點投入,分別是 ALT、AST、ATC。首先是通過 ALT 應用無損透明倒換框架(Application Lossless and Transparent)實現應用層對底層調度倒換的無感知,當用戶進行主備切換、小版本升級或者規格變更時,系統可以打包用戶的會話上下文狀態,在達到安全的事務邊界後,確保會話上下文狀態被完整重放至目標節點並與原會話一一關聯保證業務持續性,不受各種操作的影響。
其次是通過 AST 應用彈性透明調度框架(Application Scaling Transparent)滿足根據負載智能調度實例的需求,AST 融合了一些 AI 的能力,能夠根據客戶負載情況生成模型預測,從而以更精確的方式,提前擴縮資源。
最後是通過 ATC 應用透明集群(Application Transparent Cluster)實現讀寫能力的橫向透明擴展。
Regionless 方向,華為云云原生資料庫會重點聚焦於全域分層式引擎、全域數據匯流排(Global Dataflow Bus )和全域一致性集群三個方面。彭立勛認為, Regionless 首先要實現的便是低成本跨越存儲,不同的數據中心的存儲成本是不一樣的,從成本角度考慮,最合理的方式就是將客戶不常用的或者對時間不敏感的資源,放到一些比較低成本的地域, 華為云云原生資料庫的全域分層式引擎就是為了實現這個訴求;同時,要為所有的數據提供就近訪問、跨域訪問的數據分佈,還需要有一個全域的數據匯流排(Global Dataflow Bus),它能讓用戶在不同的 Region 之間按需複製數據,接下來還將根據數據的訪問頻次更加智能地判斷、精細化調度;此外,面向數據全球化的場景,華為云云原生資料庫也在投入全域一致性集群方面的研發,利用類似全球轉發的技術,去實現用戶不管從全球哪裡接入,所看到的數據都是一致的。
彭立勛稱:“最終我們要達到的目的是通過 Regionless 實現全球數據多活、故障自動再倒換、本地數據就近訪問、全域數據分層的低成本存儲。”
Modeless 方向,一方面華為云云原生資料庫充分利用軟硬體結合的優勢,去高效處理不同類型的查詢,比如數據並行查詢 NDPQ 技術;另一方面推出了 HTAP 混合負載查詢能力,它能夠為用戶同時提供一個一致性的行存和列存,給用戶提供兩種數據模型,通過優化器的智能調度,就能判斷用戶到底是適合哪一種數據模型,然後再從相應的數據引擎中把數據抽出來,實現快速訪問;除此之外,針對多種模型混合的業務,華為云云原生資料庫正在規劃多模一體化的模型處理與轉換匯流排,最終實現一個介面滿足所有模型。
寫在最後
毫無疑問,雲原生資料庫逐漸成為資料庫行業的“寵兒”。它的流行代表著雲原生髮展的深化,更反映出數字化轉型背景下,企業對資料庫的訴求和態度。技術的巨輪滾滾向前,條條大路的盡頭,終歸是用戶的需求,核心都是幫助用戶優先解決業務問題,從而走上業務發展的快車道。作為國內雲原生資料庫的代表之一,華為云云原生資料庫的實踐和探索正是基於華為雲多年來對用戶需求洞察的結果而展開的,如何真正做到以客戶為中心,解決客戶最關註的問題,是華為雲資料庫求索的方向,也是值得全行業去思考的話題,由此,將可能再一次迸發出改變世界的力量。