Serverless是指云原生數據庫PolarDB所具備的動態彈性擴縮容能力。集群中的各個節點能夠在秒級內實現彈性擴展,能夠從容應對業務負載的突增,且全程對業務運行無任何影響。在業務低負載期間,該機制能夠自動進行彈性縮容,從而有效降低業務成本。
背景信息
數據庫在現代企業IT系統中扮演著非常重要的角色。在創建數據庫時,您需要謹慎地配置數據庫集群的資源,包括CPU、內存、存儲以及連接數等多種參數,以確保業務能夠在高峰和低谷期間平穩運行。然而,傳統的資源配置方式可能導致在業務低谷時期集群資源閑置,而在業務高峰時期資源不足。Serverless集群能夠很好地解決這個問題,它可以使得數據庫集群資源根據業務負載動態彈性擴縮,從而解放您的運維工作,讓您不再需要進行復雜的資源評估和管理。
在業務波動較大的場景下,普通集群和Serverless集群資源使用和規格變化情況如下圖所示:
從圖中可以看到,在業務波動較大的場景下:
|
功能簡介
Serverless提供了實時的CPU、內存、存儲和網絡資源的彈性能力,構建計算與存儲分離架構下的云原生數據庫PolarDB產品新形態。Serverless不僅具備網絡資源和存儲空間的垂直資源隔離能力,還能夠按需計費,實現計算和存儲資源的彈性調配。其具有資源利用率高、操作簡便、靈活彈性和低成本等優點,使得您能夠在面對業務波峰波谷時,快速、獨立地調整計算和存儲能力,實現對業務變化的快速響應,同時合理優化成本使用,進一步助力企業降低成本、提高效率。
名詞 | 說明 |
Serverless集群 | 計費方式為Serverless的集群。 |
固定規格集群的Serverless功能 | 在計費方式為包年包月或按量付費的集群中手動開啟Serverless功能。這里的固定規格是指在包年包月或按量付費計費方式下需要選擇固定的計算節點規格。 說明 計費方式請參見計費方式。 |
縱向擴縮 | 計算節點的規格(CPU和內存)發生變化。 |
橫向擴縮 | 只讀節點的數量發生變化。 |
PCU | PCU是PolarDB Capacity Unit的縮寫。1 PCU約等于1核2 GB內存的標準服務能力。PCU是PolarDB Serverless集群進行資源彈性的管理單位,單次彈性的最小PCU單位為0.5 PCU。 |
展現形式
Serverless集群
數據庫代理
數據庫代理為Serverless形態,資源獨立于計算節點,彈性擴縮無需您選擇。
擴縮默認按照0.5 PCU的增量進行。擴縮步長會根據當前的PCU使用情況動態調整,當前PCU越大,擴縮步長相對越大。
計算節點
主節點(RW節點)和只讀節點(RO節點)全部為Serverless形態,隨業務負載變化而彈性擴縮,并采用單可用區共享存儲。
每當主節點或只讀節點擴展或收縮時,節點的PCU會相應增加或減少。
擴縮默認按照0.5 PCU的增量進行。擴縮步長會根據當前的PCU使用情況動態調整,當前PCU越大,擴縮步長相對越大。
您可以設置單節點彈性擴縮的范圍,以PCU為單位。系統每秒鐘會監測一次計算節點的PCU。
存儲空間
存儲空間采用按量付費方式,購買時無需選擇容量,隨著數據增長而在線自動擴容,只按實際數據量所占的存儲空間大小收費。您可以在集群的基本信息頁面查看數據庫存儲用量。詳細操作步驟,請參見查看數據庫存儲用量。
Serverless集群的最大連接數為100000,最大IOPS為84000。
固定規格集群的Serverless功能
數據庫代理
數據庫代理由固定規格和Serverless兩部分組成。其中,固定規格部分根據集群的數據庫代理版本配置其具體規格,而Serverless部分則根據業務負載進行彈性擴縮。
擴縮默認按照0.5 PCU的增量進行。擴縮步長會根據當前的PCU使用情況動態調整,當前PCU越大,擴縮步長相對越大。
計算節點
主節點(RW節點)和只讀節點(RO節點)由固定規格和Serverless兩部分組成。其中,固定規格部分不隨業務壓力的變化而改變,Serverless部分隨業務負載變化而彈性擴縮。
每當主節點或只讀節點擴展或收縮時,節點的PCU會相應增加或減少。
擴縮默認按照0.5 PCU的增量進行。擴縮步長會根據當前的PCU使用情況動態調整,當前PCU越大,擴縮步長相對越大。
您可以設置單節點彈性擴縮的范圍,以PCU為單位。系統每秒鐘會監測一次計算節點的PCU。
存儲空間
存儲空間采用固定規格集群的存儲,具體請參見存儲空間概覽。
固定規格集群開啟Serverless功能后,集群的最大連接數和最大IOPS與設置的Serverless配置參數單節點資源彈升上限成正比。
彈性擴縮
在不同的參數配置和Serverless配置下,用于判斷彈性擴縮的指標不同。您可以自定義CPU使用率的閾值,但無法更改其他指標的閾值。
彈性擴展觸發條件
縱向擴展
PolarDB主要監控主節點和只讀節點的CPU使用率、內存使用率和其他內核層面指標。在監控周期內,出現如下三種情況中的任意一種時,通常會觸發Serverless的縱向擴展:
您可以自定義CPU使用率的閾值(默認值為80%),當單節點的CPU使用率高于閾值時,會觸發本節點資源的縱向擴展。
當單節點的內存使用率高于90%,會觸發本節點資源的縱向擴展。
當單臺只讀節點的規格小于主節點規格的一半時,將會觸發當前只讀節點資源的縱向擴展。例如,當一臺只讀節點的規格為4 PCU,而主節點的規格為10 PCU時,就會觸發這臺只讀節點資源的縱向擴展到不小于5 PCU的規格。
橫向擴展
當集群中某個只讀節點已經縱向擴展至設定上限,并且該只讀節點的CPU使用率仍然滿足縱向擴展的觸發條件(即CPU使用率高于自定義閾值),則會觸發只讀節點的橫向擴展。
彈性收縮觸發條件
當單節點的CPU使用率低于自定義閾值(默認值為50%)且內存使用率低于80%時,會觸發本節點資源收縮。
自動啟停
自動啟停功能默認關閉。如果您的數據庫在某些時間段內沒有業務請求,您可以開啟自動啟停功能。開啟后在設置的無活動暫停的檢測時長之內,如果集群無業務連接,則集群自動進入暫停狀態。如果有任何業務連接接入集群,那么集群立刻自動啟動。
固定規格集群的Serverless功能不支持自動啟停。
核心優勢
Serverless能夠根據業務負載,對集群資源進行秒級動態擴縮。其核心優勢體現在如下幾個方面:
高可用
多節點的架構保障了Serverless集群的高可用,服務等級協議SLA與普通集群相同,共同保證了Serverless集群的穩定運行。
高彈性
擴縮范圍廣
支持自動縱向和橫向擴展,單集群支持0~1000核范圍內的無感擴縮。
秒級擴縮
從容應對業務負載突增,5秒完成探測,1秒完成擴容;同時在業務負載下降時,集群資源階梯性自動縮容。
業務無感
擴縮過程對業務無影響。
數據強一致
支持全局一致性(高性能模式),在集群內實現數據強一致,數據寫入后在只讀節點上立即可讀,性能與弱一致性基本一致。
低成本
以PCU定價,真正做到按量付費,幫助您節省成本。成本下降最高可達80%。
免運維
擴縮版本升級、系統部署、擴縮容、報警處理等所有運維工作由阿里云專業團隊完成,使用無感知,業務無影響,服務持續可用,真正免運維。
適用場景
Serverless集群
有明顯業務波峰波谷的場景。
低頻使用數據庫的場景,例如開發、測試環境。
間歇性定時任務的場景,例如學校教學、學生實驗。
不確定負載的場景,例如物聯網(IoT)、邊緣計算。
期望降低運維成本、提升運維效率的場景。
固定規格集群的Serverless功能
有明顯業務波峰波谷的場景。
不確定負載的場景,例如物聯網(IoT)、邊緣計算。
期望降低運維成本、提升運維效率的場景。
希望保留已有的PolarDB集群,同時又可以滿足業務波動的場景。
前提條件
Serverless集群
不支持數據庫引擎為MySQL 5.6版本的集群。
固定規格集群的Serverless功能
集群需滿足如下版本要求:
數據庫引擎:
MySQL 5.7,且內核小版本需為5.7.1.0.29及以上版本。
MySQL 8.0.1,且內核小版本需為8.0.1.1.30.1及以上版本。
MySQL 8.0.2,且內核小版本需為8.0.2.2.19及以上版本。
數據庫代理版本需為2.4.30及以上。
不支持產品版本為標準版的集群。
不支持數據庫引擎為MySQL 5.6版本的集群。
使用限制
Serverless集群
不支持如下功能:
企業版手動擴容/縮容存儲空間。
標準版手動縮容存儲空間。
支持高壓縮引擎(X-Engine)的數據庫引擎版本如下:
MySQL 8.0.1,且內核小版本需為8.0.1.1.41及以上版本。
MySQL 8.0.2,且內核小版本需為8.0.2.2.23及以上版本。
支持全球數據庫網絡(GDN),但部分功能限制如下:
GDN中的所有集群都不允許設置自動啟停。
數據庫引擎版本滿足以下條件時,GDN中的所有集群至少需要有一個RO節點。
MySQL 8.0.1,且內核小版本為8.0.1.1.42以下版本。
MySQL 8.0.2,且內核小版本為8.0.2.2.23以下版本。
支持列存索引(IMCI)功能,但需確保Serverless集群中至少包含一個只讀節點。即您需先將Serverless集群的只讀節點個數下限設置為1,才可添加只讀列存節點。
固定規格集群的Serverless功能
無數據庫代理的單節點集群,因不滿足前提條件,故不支持開啟Serverless功能。如需開啟請添加增加只讀節點。新購滿足版本要求的單節點集群默認支持開啟Serverless功能。
不支持企業版手動擴容/縮容存儲空間。
支持高壓縮引擎(X-Engine)的數據庫引擎版本如下:
MySQL 8.0.1,且內核小版本需為8.0.1.1.41及以上版本。
MySQL 8.0.2,且內核小版本需為8.0.2.2.23及以上版本。
支持全球數據庫網絡(GDN),但部分功能限制如下:
GDN中的所有集群都不允許設置自動啟停。
數據庫引擎版本滿足以下條件時,GDN中的所有集群至少需要有一個RO節點。
MySQL 8.0.1,且內核小版本為8.0.1.1.42以下版本。
MySQL 8.0.2,且內核小版本為8.0.2.2.23以下版本。
與本地資源自動變配(秒級擴核)、通過自動擴容實現彈性擴縮容功能互斥。若在固定規格集群上開啟Serverless功能后,不可再支持開啟這些功能。同理,若在固定規格集群上開啟這些功能后,不可再支持開啟Serverless功能。
更多版本要求和使用限制,請參見開啟固定規格集群的Serverless功能。
費用說明
Serverless集群
費用包括計算節點費用、存儲空間費用、備份存儲空間(僅超出免費額度時收費)費用和SQL洞察(可選)費用。具體請參見Serverless費用說明。
固定規格集群的Serverless功能
費用包含固定規格集群的費用和Serverless的費用兩部分。固定規格集群的費用請參見計費項概覽,Serverless的費用請參見Serverless費用說明。
視頻介紹
免費體驗
阿里云提供了數據庫解決方案功能體驗館。您無需購買任何資源,即可在線測評PolarDB Serverless的動態彈性效果。
您可前往PolarDB MySQL Serverless彈性&價格力觀測進行體驗,詳情請參見免費體驗PolarDB MySQL Serverless極致彈性。