透視華為云云原生資料庫的前世今生及未來演進,能給行業帶來哪些啟發?

来源:https://www.cnblogs.com/huaweiyun/archive/2023/01/12/17046866.html
-Advertisement-
Play Games

摘要:通過雲服務形式提供資料庫功能的雲資料庫應運而生,但這還僅僅是資料庫變革的開端。 本文分享自華為雲社區《透視華為云云原生資料庫的前世今生及未來演進,能給行業帶來哪些啟發?》,作者:萬佳。 自雲計算出現後,風雲變幻十餘載,硬體、軟體行業都經歷了重構變革所帶來的機遇與激蕩。企業 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 混合負載查詢能力,它能夠為用戶同時提供一個一致性的行存和列存,給用戶提供兩種數據模型,通過優化器的智能調度,就能判斷用戶到底是適合哪一種數據模型,然後再從相應的數據引擎中把數據抽出來,實現快速訪問;除此之外,針對多種模型混合的業務,華為云云原生資料庫正在規劃多模一體化的模型處理與轉換匯流排,最終實現一個介面滿足所有模型。

寫在最後

毫無疑問,雲原生資料庫逐漸成為資料庫行業的“寵兒”。它的流行代表著雲原生髮展的深化,更反映出數字化轉型背景下,企業對資料庫的訴求和態度。技術的巨輪滾滾向前,條條大路的盡頭,終歸是用戶的需求,核心都是幫助用戶優先解決業務問題,從而走上業務發展的快車道。作為國內雲原生資料庫的代表之一,華為云云原生資料庫的實踐和探索正是基於華為雲多年來對用戶需求洞察的結果而展開的,如何真正做到以客戶為中心,解決客戶最關註的問題,是華為雲資料庫求索的方向,也是值得全行業去思考的話題,由此,將可能再一次迸發出改變世界的力量。

 

點擊關註,第一時間瞭解華為雲新鮮技術~


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 簡述 本篇文章主要介紹如何使用 CloudCanal 構建一條 Oracle 到 PostgreSQL 的數據同步鏈路 技術要點 縮小的資料庫許可權要求 CloudCanal 對 Oracle 資料庫的高許可權要求,主要來自兩個面向 DBA 的操作,自動構建字典和 自動切換歸檔日誌,這兩個操作主要是讓用 ...
  • 在表數據量很大的時候直接添加欄位,以及其他表結構修改,會嚴重影響線上使用,而且耗費時間很長;使用這個工具可以很好的線上修改表結構。 好處: 降低主從延時的風險 可以限速、限資源,避免操作時MySQL負載過高 建議: 在業務低峰期做,將影響降到最低 直接原表修改缺點: 當表的數據量很大的時候,如果直接 ...
  • 用通配符進行過濾 LIKE操作符 通配符(wildcard) 用來匹配值的一部分的特殊字元。 搜索模式(search pattern) 由字面值、通配符或兩者組合構成的搜索條件。 搜索子句中使用通配符,必須使用LIKE操作符。LIKE指示MySQL,後跟的搜索模式利用通配符匹配而不是直接相等匹配進行 ...
  • 摘要:華為雲FusionInsight MRS HetuEngine持續提升自助用數分析平臺的可服務、易運維能力,基於AI技術持續提升對數據分析平臺的智能化賦能水平,引領現代數據分析平臺向專業化、智能化、易運維、高性能方向演進。 本文分享自華為雲社區《現代數據平臺要實現自助用數還要解決的三大問題》, ...
  • 過濾數據 使用WHERE子句 搜索條件也稱為過濾條件(filter condition)。在SELECT語句中,數據根據WHERE子句中指定的搜索條件進行過濾: SELECT prod_name, prod_price FROM products WHERE prod_price = 2.50; 註 ...
  • 排序檢索數據 排序數據 不明確規定排序順序,則不應該假定檢索出的數據的順序有意義。 子句(clause) SQL語句由子句構成,有些子句是必需的,而有的是可選的。一個子句通常由一個關鍵字和所提供的數據組成。子句的例子有SELECT語句的FROM子句。 為了明確地排序用SELECT語句檢索出的數據,可 ...
  • 1、合作背景 萬里開源軟體有限公司 ​ 北京萬里開源軟體有限公司,是專註於國產自主可控資料庫產品研發超 20年的國家高新技術企業,參與多個國家級的資料庫行業標準制定工作。本次用於測試的 GreatSQL 開源資料庫是適用於金融級應用的國內自主 MySQL 版本,專註於提升 MGR 可靠性及性能,支持 ...
  • Calcite在大數據系統中有著廣泛的運用, 比如Apache Flink, Apache Drill等都大量使用了Calcite,理解Calcite的原理可以說已經成為理解大數據系統中SQL訪問層實現原理的必備條件之一。 但是不少人在學習Calcite的過程中都發現關於Calcite的實踐案例其實 ...
一周排行
    -Advertisement-
    Play Games
  • 通過WPF的按鈕、文本輸入框實現了一個簡單的SpinBox數字輸入用戶組件並可以通過數據綁定數值和步長。本文中介紹了通過Xaml代碼實現自定義組件的佈局,依賴屬性的定義和使用等知識點。 ...
  • 以前,我看到一個朋友在對一個系統做初始化的時候,通過一組魔幻般的按鍵,調出來一個隱藏的系統設置界面,這個界面在常規的菜單或者工具欄是看不到的,因為它是一個後臺設置的關鍵界面,不公開,同時避免常規用戶的誤操作,它是作為一個超級管理員的入口功能,這個是很不錯的思路。其實Winform做這樣的處理也是很容... ...
  • 一:背景 1. 講故事 前些天有位朋友找到我,說他的程式每次關閉時就會自動崩潰,一直找不到原因讓我幫忙看一下怎麼回事,這位朋友應該是第二次找我了,分析了下 dump 還是挺經典的,拿出來給大家分享一下吧。 二:WinDbg 分析 1. 為什麼會崩潰 找崩潰原因比較簡單,用 !analyze -v 命 ...
  • 在一些報表模塊中,需要我們根據用戶操作的名稱,來動態根據人員姓名,更新報表的簽名圖片,也就是電子手寫簽名效果,本篇隨筆介紹一下使用FastReport報表動態更新人員簽名圖片。 ...
  • 最新內容優先發佈於個人博客:小虎技術分享站,隨後逐步搬運到博客園。 創作不易,如果覺得有用請在Github上為博主點亮一顆小星星吧! 博主開始學習編程於11年前,年少時還只會使用cin 和cout ,給單片機點點燈。那時候,類似async/await 和future/promise 模型的認知還不是 ...
  • 之前在阿裡雲ECS 99元/年的活動實例上搭建了一個測試用的MINIO服務,以前都是直接當基礎設施來使用的,這次準備自己學一下S3相容API相關的對象存儲開發,因此有了這個小工具。目前僅包含上傳功能,後續計劃開發一個類似圖床的對象存儲應用。 ...
  • 目錄簡介快速入門安裝 NuGet 包實體類User資料庫類DbFactory增刪改查InsertSelectUpdateDelete總結 簡介 NPoco 是 PetaPoco 的一個分支,具有一些額外的功能,截至現在 github 星數 839。NPoco 中文資料沒多少,我是被博客園群友推薦的, ...
  • 前言 前面使用 Admin.Core 的代碼生成器生成了通用代碼生成器的基礎模塊 分組,模板,項目,項目模型,項目欄位的基礎功能,本篇繼續完善,實現最核心的模板生成功能,並提供生成預覽及代碼文件壓縮下載 準備 首先清楚幾個模塊的關係,如何使用,簡單畫一個流程圖 前面完成了基礎的模板組,模板管理,項目 ...
  • 假設需要實現一個圖標和文本結合的按鈕 ,普通做法是 直接重寫該按鈕的模板; 如果想作為通用的呢? 兩種做法: 附加屬性 自定義控制項 推薦使用附加屬性的形式 第一種:附加屬性 創建Button的附加屬性 ButtonExtensions 1 public static class ButtonExte ...
  • 在C#中,委托是一種引用類型的數據類型,允許我們封裝方法的引用。通過使用委托,我們可以將方法作為參數傳遞給其他方法,或者將多個方法組合在一起,從而實現更靈活的編程模式。委托類似於函數指針,但提供了類型安全和垃圾回收等現代語言特性。 基本概念 定義委托 定義委托需要指定它所代表的方法的原型,包括返回類 ...