墨天輪訪談 | 百度雲邱學達:GaiaDB如何解決雲上場景的業務需求?

来源:https://www.cnblogs.com/modb/archive/2022/05/09/16249704.html
-Advertisement-
Play Games

業務上雲的大背景對彈性與可靠性的要求越來越高,傳統架構的單機資料庫或是分片資料庫已經很難支撐快速增長的業務,如何解決這些痛點呢?一起來聽聽百度雲原生資料庫資深技術專家邱學達怎麼說。 ...


分享嘉賓:邱學達
百度雲原生資料庫資深技術專家
整理墨天輪社區

導讀

業務上雲的大背景對彈性與可靠性的要求越來越高,傳統架構的單機資料庫或是分片資料庫已經很難支撐快速增長的業務,導致單機瓶頸、擴容縮量、故障恢復慢、相容性、資源利用率低等一系列的問題顯現,同時單機時代資料庫的的缺點會在雲上高倍率放大。

基於這些痛點,墨天輪技術社區邀請到來自百度雲資料庫資深技術專家,擁有多年資料庫與分散式存儲開發經驗的嘉賓邱學達,為大家帶來【GaiaDB架構解析及互聯網應用案例】的主題分享,談談雲原生資料庫GaiaDB如何解決雲上場景的業務需求。

GaiaDB是什麼?

1、 GaiaDB 的核心特性

GaiaDB是百度自研的新一代企業級雲原生資料庫,採用領先的存算分離架構設計,真正實現按需、極致彈性擴展能力,最大容量可擴展128TB以上,吞吐達到150+萬 QPS ,成本僅商業數據的 1/10。

作為設計之初的核心理念,GaiaDB能夠完全相容開源生態,同時GaiaDB還擁有易擴展、易維護、強一致、多地域的核心特性。


圖1 GaiaDB的核心特性介紹

2、 GaiaDB 的設計架構

GaiaDB的設計架構從上至下分別是接入層、計算層、存儲層,接入層負責連接池,負載均衡基礎的功能,包括ip的黑白名單;計算層使用傳統的易主多重架構,讀寫邏輯包括ACID,完全相容MySQL生態;存儲層負責熱數據也就是wal日誌高可用、高可靠,以及數據頁的高可用高可靠。

GaiaDB特性得以實現的核心是存算分離的技術,即通過對傳統資料庫的改造,把計算層和存儲層分為了兩個層級,這樣就能夠解決兩層分別彈性、分別結偶,分別高可用,從而打破了傳統單機計算存儲的匹配不均,以及比例不等的痛點

不僅如此,GaiaDB能夠幫助主庫在同等的計算資源中取得更高的性能。傳統的架構下中主庫負載高,而在新的架構下,主庫只需要把WAL日誌寫到存儲層的log series集群中,當高可靠的log series集群存儲下來之後,主庫就可以返回並提交事務,從而將數據頁回放,日誌的高可用,高可靠留給存儲層結構來做,這樣便大大降低了主庫以及CPU記憶體的這種負載壓力。


圖2 GaiaDB的高可用架構示意

3、GaiaDB 優勢

首先GaiaDB能夠全方位、100%相容MySQL,做到SQL語法相容、協議相容、工具生態相容、其他特性相容。


圖3 GaiaDB優勢:相容並包

GaiaDB的極致彈性表現在計算層彈性與存儲層彈性,計算節點橫向與縱向彈性,耗時小於30s,同時擴容過程對業務透明。其次存儲層彈性能夠實現按需分配,提高共用存儲池的利用率,同時支持接入各類冷熱介質/分層存儲,介質隻影響讀延遲。


圖4 GaiaDB優勢:極致彈性

GaiaDB第三個優勢是備份恢復,在並行備份與恢復時,百TB備份耗時小於1h。GaiaDB支持邏輯備份、物理備份、同時支持AWS S3介面。

GaiaDB第四個優勢是數據強一致,實現秒級故障恢復。架構每一層都實現高可用、高可靠。
主庫不負責數據的持久化,因此故障不影響數據的完整性,大大降低了數據恢復的時間,降低風險。


圖5 GaiaDB優勢:數據強一致

互聯網業務下要求多地多活,當單地出現故障時能夠快速恢復業務。GaiaDB提供的IDC容災部署架構能夠支持異地熱活,同時能夠輕鬆實現故障切換,保證業務的順利進行。


圖6 GaiaDB IDC容災部署架構

最後,GaiaDB提供運維管理與集群監控的功能。在運維管理中,提供可視化與命令行的運維管理方式,包括集群創建、啟停、庫表管理、備份管理、空間分析和節點拓撲等。同時GaiaDB採用了開源的Prometheus+Grafana作為監控方案,實現計算節點、LS、PS等節點的多指標監控。


圖7 GaiaDB提供運維管理&集群監控

作為一款雲原生資料庫,GaiaDB採用存儲和計算分離的架構,所有計算節點共用一份數據,提供分鐘級的配置升降級、秒級的故障恢復、全局數據一致性和數據備份容災服務,既融合了商業資料庫穩定可靠、高性能、可擴展的特征,又具有開源雲資料庫簡單開放、自我迭代的優勢。

GaiaDB 應用場景

GaiaDB組作為百度智能雲自研的雲原生關係型資料庫,可以100%相容MySQL語法,存儲容量最高可達128TB,單庫最多可擴展到16個節點,適用於大容量、高性能、高彈行的應用場景,接下來我們來看兩個典型的應用場景。

1、場景一:大容量+低成本存儲

隨著業務的不斷發展,傳統資料庫架構會遇到存儲和性能的雙重瓶頸,無法支撐業務幾十TB的高性能訪問。GaiaDB採用計算和存儲分離的架構,實現了大容量與低成本存儲的需求。通過綜合測算,GaiaDB成本只有傳統架構的10%-50%

2、場景二:爆款產品極速上線

爆款產品往往帶來幾天百倍流量與數據量尖峰,而傳統資料庫無法快速的應對這種場景,拆庫拆表會極大拖慢業務迭代節奏。
GaiaDB提供了極致的彈性能力,實現秒級擴縮容,輕鬆應對流量浪涌

GaiaDB既融合了商業資料庫穩定可靠、高性能、可擴展的特征,又具有開源雲資料庫簡單開放、自我迭代的優勢,解決雲上業務的需求,相信GaiaDB是很好的選擇。

我今天的分享就到這裡,謝謝大家!

更多精彩內容,歡迎大家觀看現場視頻回放與會議資料
視頻回放:https://www.modb.pro/video/6327
會議資料:https://www.modb.pro/doc/60830


欲瞭解更多可以進入

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

-Advertisement-
Play Games
更多相關文章
  • 來源:https://www.toutiao.com/article/6927297421139706376 單例模式(Singleton)是程式設計中一種非常重要的設計模式,設計模式也是Java面試重點考察的一個方面。面試經常會問到的一個問題是:SpringMVC中的Controller是單例還是 ...
  • 1、WebFirst框架描述 WebFirst 是果糖大數據團隊開發的新一代 高性能 代碼生成器&資料庫設計工具,由.net core + sqlsugar 開發 導入1000個表只要1-2秒,用法簡單,功能強大,支持多種資料庫 ,具體功能如下: 一、 建庫、CodeFirst方式線上建表,沒用到C ...
  • 1.安裝完成rabbitMQ 參考上一篇如何安裝 rabbitMQ 2.安裝 OTP服務 https://www.erlang.org/downloads C#代碼 需要導入RabbitMQ.Client 在NuGet中搜索自取 隊列發送端 var factory = new ConnectionF ...
  • 五一5天小假期的結束大家休息好了嗎?上班了狀態回整的怎麼樣呢?阿裡云云發平臺給大家帶福利了呢,通過玩游戲把獎品帶回家。 雲開發平臺兩周年,0門檻部署上線4款熱門游戲,游戲暢玩還有AirPods耳機、筋膜槍等8種獎品任你挑啦!4款游戲只需要完成2個就可以抽獎呢,100%中獎;還額外有故事有獎徵集的板塊 ...
  • 6、 1 鍵盤消息 // 4_4_例子Sysmets.cpp : 定義應用程式的入口點。 // #include "pch.h" #include "framework.h" #include "4_4_例子Sysmets.h" #include "data.h" #define MAX_LOADS ...
  • 本文例子參考《STM32單片機開發實例——基於Proteus虛擬模擬與HAL/LL庫》 源代碼:https://github.com/LanLinnet/STM33F103R6 項目要求 通過定時器延時(阻塞)的方式,實現LED燈以1秒為周期閃爍。 硬體設計 在第一節的基礎上,在Proteus中添加 ...
  • 一、DataStream API概述 Flink 中的 DataStream 程式是對數據流(例如過濾、更新狀態、定義視窗、聚合)進行轉換的常規程式。數據流的起始是從各種源(例如消息隊列、套接字流、文件)創建的。結果通過 sink 返回,例如可以將數據寫入文件或標準輸出(例如命令行終端)。Flink ...
  • 推薦文章: eclipse導入JDBC MySQL詳細安裝 菜鳥java MySQL連接教程 步驟: 找到MySQL的連接Java的jar文件; 如下圖: 在eclipse項目文件下找到lib文件夾,沒有的話就自己創建一個,然後將上面找到的jar文件複製粘貼到lib文件夾的下麵; 如下圖: 給這個j ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...