RDS提供多種主執行個體規格以滿足不同業務情境下對效能、穩定性及成本的要求,選擇合適的執行個體規格是最佳化資料庫效能和成本的關鍵步驟。本文旨在協助您瞭解RDS主執行個體的規格資訊、各規格的具體配置和核心參數說明。
各引擎主執行個體規格表
您可以通過下表查詢各引擎主執行個體規格及對應的規格類型系列、CPU、記憶體、執行個體規格最大IOPS和最大IO頻寬等參數。
執行個體引擎 | 支援產品類型 | 支援儲存類型 | 主執行個體規格表 |
MySQL | 標準版、倚天版 | 雲端硬碟、高效能本地碟 | |
PostgreSQL | 標準版、倚天版 | 雲端硬碟 | |
SQL Server | 不涉及 | 雲端硬碟 | |
MariaDB | 標準版 | 雲端硬碟 |
核心概念說明
各引擎主執行個體規格表中主要涉及以下三個核心概念:執行個體規格類型系列、IOPS和IO頻寬。
執行個體規格類型系列
執行個體規格類型系列決定了資源的分配方式,會直接影響執行個體效能。
規格類型系列 | 儲存類型 | 獨享/共用資源 | 說明 |
共用型 | 雲端硬碟 |
|
|
通用型 | 雲端硬碟 |
| 當物理機負載過高時,可能存在效能波動。 |
高效能本地碟 |
| ||
獨享型 | 雲端硬碟 | 完全獨享CPU、記憶體、儲存介質以及I/O資源。 | 效能穩定,無資源爭搶。 |
高效能本地碟 |
| ||
獨佔物理機 | 高效能本地碟 | 完全獨享CPU、記憶體、儲存介質以及I/O資源。 | 提供最高的效能穩定性和隔離性。 |
IOPS
IOPS反映了儲存系統處理讀寫請求的能力,是衡量隨機I/O效能的關鍵計量。影響執行個體IOPS的主要因素為:執行個體規格、儲存類型和儲存容量,您可以在各引擎主執行個體規格表中尋找對應執行個體規格的最大IOPS,但執行個體的實際IOPS上限需通過以下內容計算:
高效能本地碟執行個體:實際IOPS上限僅受執行個體規格影響,主執行個體規格表中的最大IOPS即為實際IOPS上限。
雲端硬碟執行個體:實際IOPS上限受執行個體規格、儲存容量和儲存類型三者共同影響,計算公式如下:
儲存類型
實際最大IOPS計算公式(儲存空間單位:GB)
高效能雲端硬碟
開啟IO效能突發
min{執行個體規格最大IOPS,1000000}未開啟IO效能突發
min{執行個體規格最大IOPS, 1800+50*儲存空間, 50000}ESSD雲端硬碟
PL3
min{執行個體規格最大IOPS, 1800+50*儲存空間, 1000000}PL2
min{執行個體規格最大IOPS, 1800+50*儲存空間, 100000}PL1
min{執行個體規格最大IOPS, 1800+50*儲存空間, 50000}SSD雲端硬碟
min{執行個體規格最大IOPS, 1800+30*儲存空間, 25000}
樣本:以ESSD PL1雲端硬碟,執行個體規格mysql.x2.large.2c,儲存空間20 GB為例,計算該執行個體的實際IOPS:
限制因素 | 說明 |
執行個體規格 | 查詢主執行個體規格表, |
儲存空間 | 20 GB儲存空間對應的IOPS上限為 |
儲存類型 | ESSD PL1雲端硬碟對應的IOPS上限為 |
該執行個體實際的IOPS上限取上述三者間最小值:2800(主要受儲存空間限制)。
資料庫實際讀寫次數與磁碟I/O並非等價關係。以MySQL為例,單次MySQL讀寫預設為16KB,而雲端硬碟I/O塊大小為4KB,因此MySQL執行一次讀寫會消耗4次雲端硬碟I/O。
在相同磁碟I/O的情況下,因不同引擎的預設頁(Page)大小不同,會導致資料庫讀實際寫次數不同(即在相同IOPS指標下,不同資料庫的讀寫處理能力不同)。例如:雲端硬碟I/O塊大小為4KB,同樣是1000次磁碟I/O,對應MySQL引擎(預設頁大小為16KB)實際讀寫次數為250次,對應SQL Server引擎(預設頁大小為8KB)實際讀寫次數為500次。
IO頻寬(輸送量)
IO頻寬反映了儲存系統連續讀寫資料的能力,是衡量順序I/O效能的關鍵計量。影響執行個體IO頻寬的主要因素為:執行個體規格、儲存類型和儲存容量,您可以在主執行個體規格表中尋找對應執行個體規格的最大IO頻寬,但執行個體的實際IO頻寬上限需通過以下內容計算:
儲存類型 | 雲端硬碟執行個體實際IO頻寬效能公式(IO頻寬單位:MB/s、儲存空間單位:GB) | |
高效能雲端硬碟 | 開啟IO效能突發 |
|
未開啟IO效能突發 |
| |
ESSD雲端硬碟 | PL3 |
|
PL2 |
| |
PL1 |
| |
SSD雲端硬碟 |
| |
樣本:以ESSD PL3雲端硬碟,執行個體規格mysql.x2.large.2c,儲存空間5000 GB為例,計算該執行個體的實際IO頻寬上限:
限制因素 | 說明 |
執行個體規格 | 查詢主執行個體規格表, |
儲存空間 | 5000 GB儲存空間對應的IO頻寬上限為 |
儲存類型 | ESSD PL3雲端硬碟對應的IO頻寬上限為 |
該執行個體實際的IO頻寬上限取上述三者間最小值:192(主要受執行個體規格限制)。
IOPS與IO頻寬間的制約關係
雲端硬碟IOPS與IO頻寬並非獨立的效能指標,除共同受執行個體規格、儲存類型和儲存空間影響外,兩者之間也會互相制約:
換算公式:
IO頻寬(MB/s) = IOPS × I/O塊大小(KB) / 1024(此處I/O塊大小指磁碟單次I/O操作大小(雲端硬碟預設為為4KB),而非資料庫的頁(Page) 大小。)制約關係:大部分情況下,IOPS和IO頻寬不會同時觸達上限。
當IOPS達到上限時,如果I/O塊較小(如4KB),執行個體IO頻寬可能未達上限,此時IOPS會成為業務效能瓶頸。
當IO頻寬達到上限時,如果I/O塊較大(如256KB),執行個體IOPS可能未達上限,此時IO頻寬會成為業務效能瓶頸。
常見問題
Q1:為什麼入門級規格的效能看起來比企業級規格的效能要好?
A:因為入門級規格一般是共用/通用型規格類型系列,企業級規格一般是獨享型規格類型系列。實際使用中企業級規格由於獨享CPU和記憶體,會更加穩定。詳細區別,請參見執行個體規格類型系列。
Q2:想查詢當前售賣資源怎麼辦?
A:可以在售賣頁查詢或使用DescribeAvailableResource介面查詢。
Q3:為什麼不展示QPS和TPS?
A:QPS和TPS需要RDS上面部署相關對象測試。同一個規格的執行個體在不同業務系統中,根據實現方法不同,QPS和TPS也會有較大的差距。QPS和TPS的測試方法,請參見效能測試指導。
相關內容
RDS還支援通過添加唯讀執行個體(MySQL唯讀執行個體、SQL Server唯讀執行個體、PostgreSQL唯讀執行個體)來擴充讀效能。關於唯讀執行個體規格,請參見唯讀執行個體規格列表。
選定主執行個體規格後您就可以建立並使用執行個體。具體操作,請參見快速建立RDS MySQL執行個體、快速建立RDS SQL Server執行個體、快速建立RDS PostgreSQL執行個體。