基於PG研發的國產數據庫--華為最新推出的GaussDB

概述

最近一個月,華為公司面向全球發佈了人工智能原生(AI-Native)數據庫GaussDB和業界性能的分佈式存儲FusionStorage 8.0,將多年的AI技術和能力以及數據庫經驗融入到新品,實現很多創新性突破,比如人工智能技術融入分佈式數據庫的全生命週期、一套存儲可同時支持塊、文件、對象、HDFS協議等。

其中,最為標杆性的場景應用實屬招商銀行,在實踐中:

華為GaussDB管理數據容量提升10倍,AZ內故障恢復速度提升30倍。以故障恢復為例,GaussDB的RTO時間小於1秒,而其他廠商則需要30秒;

FusionStorage 8.0在招行,部署渠道接入、開發測試、VDI以及大數據系統,一套存儲替代原有4種存儲設備,節省40%的TCO,業務上線速度提升9倍。其次,將人工智能技術融入存儲全生命週期管理,從資源規劃、業務發放、系統調優、風險預測和故障定位等方面實現智能運維管理,實現雲上雲下協同。再者,分佈式存儲性能業界第一,單節點性能高達16.8萬每秒讀寫速度(IOPS)和1毫秒以內延時。基於ARM的算力,IOPS提升20%,基於AI Fabric網絡,時延降低15%。

基於PG研發的國產數據庫--華為最新推出的GaussDB

歷時9年的研發和打磨,低調謹慎的華為終於掀開了GaussDB數據庫的神祕面紗,讓之走到了臺前。

其實,GaussDB並非是一個產品,而是系列產品的統稱,目前GaussDB至少包含有3款產品,有面向OLTP的數據庫,面向OLAP的數據倉庫,還有面向事務和分析混合處理的HTAP數據庫。


數據庫內核開發路漫漫

做數據庫內核開發如在刀尖上跳舞,壓力很大,但凡在內核架構與機制制定上有一絲一毫沒考慮清楚,那麼,上線就一定會出問題,後果嚴重。因為,一旦確定的方向進行不下去,就會導致推倒重來。一位核心研發工程師對筆者說。

基於PG研發的國產數據庫--華為最新推出的GaussDB

2007年,因為電信實時計費項目困境,華為開始組織人手研發內存數據庫,項目代號GMDB,這是可追溯華為最早的數據庫研發記錄。

當時,華為決定自研內存數據庫的想法並不高大上,而是很單純,完全不是外界所猜想的搞個數據庫去售賣並幹掉誰,純粹只是因為在電信計費領域,華為解決方案找不到能與之很好契合的數據庫,僅此而已。

眾所周知,電信行業對數據庫要求較高,尤其是可用性,定製化需求較多,涉及改動工作量大,而採用國外數據庫,讓原廠來配合改動,人家未必會配合。因此,無奈下,華為被迫走上了自研數據庫的道路,以此來提升自身解決方案的競爭力。

不過,2007年的GMDB並沒有取得大規模商用,只在小範圍內進行試用,但這個版本卻鍛鍊了一大批人。當時,國內對數據庫內核開發知之甚少,有經驗者寥寥,都是摸著石頭過河。

但有苗不愁長,到了2010年,華為數據庫研發團隊開始對2007年版本進行全面重構,並寫下了重構版本的第一行代碼:

“typedef struct st_database{...}database_t;”

數據庫對象的定義。

從這個版本開始,華為數據庫的定位已經不再僅侷限於內存數據庫,而是在向通用關係型數據庫逐漸轉變,重構過程中,開始融入大量非內存數據庫的特性,這就是Gauss OLTP數據庫的前身。

重構後的版本,質量上取得了顯著提升,2012年,GMDB開始大規模商用,主要應用於電信計費領域,同時,在華為內部,眾多配套的解決方案也開始使用GMDB。


華為GaussDB 200

華為GaussDB 200開始於2012年,研發團隊分析了業界數據庫相關理論和技術,在基於傳統關係型數據庫的SQL引擎和事務強一致性等基礎上,進行了分佈式、並行計算的改造。歷時6年,打造了一款架構領先的分析型數據庫,為各行業PB級海量數據分析提供有競爭力的解決方案。


基於PG研發的國產數據庫--華為最新推出的GaussDB


GaussDB 200可以很好兼容標準ANSI SQL 99/2003語法和PostgreSQL生態。

與傳統數據倉庫產品使用專有硬件不同,GaussDB 200運行在通用X86服務器上,採用MPP+shared-nothing架構,因而能夠具備良好的擴展性。可以在不中斷業務的前提下,實現數據庫的在線擴容。

這個擴容採用表級擴容機制,即完即用,支持未擴容表與已擴容表之間關聯分析;通過引入一套增量機制記錄擴容重分佈過程中的數據修改(增刪改),待基線數據重分佈完成後,將增量數據Merge到擴容後的集群中;提供任務自動等待Retry機制,確保新舊數據切換業務不中斷、無感知。

GaussDB 200 MPP節點間並行+SMP單機多核並行+列存向量化指令集並行+LLVM機器碼編譯等技術,可以充分發揮集群硬件資源,能夠達到萬億級數據查詢秒級響應的能力。其中通用X86服務器上,可以提供彈性集群、跨代兼容等特性,避免硬件鎖定。

  • 在架構設計上,硬件中磁盤、交換機、網卡等均採用高可用設計;軟件上則採用全組件高可靠架構,協調節點多活,數據節點獨創主+備+Handoff三重數據保護,GTM(Global Transaction Management)等進程採用主備方案。可以確保集群中任意一個節點故障業務不中斷。
  • 安全性方面,新產品支持客戶端連接的SSL認證服務;並通過了華為網絡安全實驗室ICSL認證,遵從英國頒佈的網絡安全標準。

GaussDB 200支持通過SQL訪問HDFS上的數據,支持CUDF,支持全文檢索,從而為數據業務創新,提供簡單應用的技術手段。


總結

還記得華為GaussDB發佈視頻中的一行文字:向數學致敬、向科學家致敬。GaussDB,不僅蘊含著華為對數學和科學的敬畏,也承載著華為對基礎軟件的堅持和夢想。

後面會分享更多devops和DBA方面的內容,感興趣的朋友可以關注一下~

基於PG研發的國產數據庫--華為最新推出的GaussDB


相關推薦

推薦中...