存儲I/O性能(Input/Output Performance)是指云盤在處理數據讀寫請求時的速度和效率,它是衡量一個存儲系統響應能力和處理能力的重要指標。ECS的存儲I/O性能是指不同ECS實例規格掛載云盤時可以達到的性能表現,包括IOPS、吞吐量和訪問時延等。本文介紹ECS實例規格與存儲I/O性能的關系。
存儲I/O性能不適用于本地盤。
I/O大小介紹
I/O大小指的是每次讀寫操作的數據量,比如4 KiB。設計應用底層存儲架構或者選擇實例規格時,您需要考慮IOPS(每秒輸入輸出操作次數)、I/O大小、吞吐量(每秒傳輸的數據量)等指標。其中,IOPS * I/O大小 = 吞吐量。有關IOPS和吞吐量的指標說明,請參見塊存儲性能。
根據應用的I/O請求特性,您可以選擇不同的塊存儲和實例規格,從而達到最佳效果:
當應用的I/O較大,例如離線分析、數據倉庫等應用,建議您選擇吞吐量更大的大數據型實例規格族。
當應用的I/O對時延較為敏感、I/O大小相對較小且隨機,例如OLTP事務型數據庫、企業級應用,如SAP等應用,建議您選擇IOPS更高的ESSD云盤、SSD云盤。
實例具備的存儲I/O性能
阿里云的某些新一代企業級實例規格族提供了存儲I/O性能隔離功能,意味著每個實例都能獲得專屬的存儲帶寬,不受其他實例的影響。這樣,在業務高峰期,每個實例也能維持穩定的存儲I/O性能,特別適合那些對存儲性能穩定性要求極高的應用,例如大型數據庫系統(Oracle、MySQL等)和企業級應用(ERP、CRM等)。
ECS實例規格族詳情,請參見實例規格族。
實例規格與存儲I/O性能的關系
云服務器ECS不同實例規格族的存儲I/O性能以及不同實例規格掛載云盤時的性能表現不同。實例維度的存儲I/O性能和實例規格大小相關,同一類型的實例規格等級越高,可獲得的存儲I/O性能(即IOPS和吞吐量)越高。了解實例存儲性能與云盤存儲性能之間的關系后,您可以基于性能數據,從實際業務需求出發,合理選擇實例規格和塊存儲產品,避免不合理配置給應用帶來性能瓶頸。
實例存儲IOPS性能說明
當您創建ECS實例掛載了云盤時,ECS實例最終的存儲I/O性能表現有以下場景:
場景一:如果云盤的性能總和超過了實例規格族所對應的存儲I/O能力,最終存儲I/O性能以該實例規格所對應的存儲I/O能力為準。掛載多個云盤時,云盤會按照爭搶機制系統動態地分配I/O性能。例如:
示例一:張先生選擇了ecs.g7se.xlarge 16 GiB規格實例,該實例規格最大存儲I/O性能為60,000 IOPS。ECS實例僅掛載了1塊2,000 GiB,性能級別為PL2的ESSD云盤,對應單盤IOPS最大為100,000,超過了實例規格族所對應的存儲I/O能力,最終存儲I/O性能以該實例規格對應的存儲I/O能力為準,為60,000,無法達到100,000。
示例二:張先生選擇了ecs.g7se.4xlarge 64 GiB規格實例,該實例規格最大存儲I/O性能為150,000 IOPS。ECS實例掛載了3塊2,000 GiB,性能級別為PL2的ESSD云盤,對應單盤IOPS最大為100,000,總IOPS最大為300,000,超過了實例規格族所對應的存儲I/O能力,最終存儲I/O性能以該實例規格對應的存儲I/O能力為準,為150,000,無法達到300,000。
場景二:如果云盤的性能總和不超過實例規格族所對應的存儲I/O性能,最終存儲I/O性能以云盤性能為準。例如:
張先生選擇了ecs.g7se.4xlarge 64 GiB規格實例,該實例規格最大存儲I/O性能為150,000 IOPS。ECS實例僅掛載了1塊2,000 GiB,性能級別為PL3的ESSD云盤,對應單盤IOPS最大為101,800。則該ECS實例最終I/O性能以云盤性能為準,為101,800。
實例存儲IOPS/帶寬突發性能說明
七代及之后的部分小規格實例存儲IOPS和存儲帶寬具備突發能力,當您創建ECS實例掛載了云盤時,ECS實例的最終IOPS/帶寬突發性能說明如下:
實例存儲IOPS突發性能
指標說明:該指標代表實例規格對云盤存儲I/O性能的限制。
基礎IOPS:每個實例規格可以持續支持的最大云盤IOPS能力,有SLA保證。
突發IOPS:每個實例規格允許更高的IOPS能力,但突發能力有時間限制,同時也要依賴整機的I/O資源,沒有SLA保證。當整機I/O資源充足時,且云盤一直在規格指定的最大值突發指標突發時,不同實例規格默認允許的最大突發時間說明如下。
large:5分鐘
xlarge:10分鐘
2xlarge:20分鐘
3xlarge:30分鐘
4xlarge:40分鐘
計算公式:當實例規格實際IOPS低于基礎IOPS時,就會自動積累積分,有積分可以隨時突發。突發時間是按照積分計算的,當實例規格實際運行達不到最大突發值時,突發時間會更長。當前規格可以突發最大積分值和實際突發時間計算公式如下。
突發最大積分值=(最大突發IOPS-基礎IOPS)*最大突發時間
實際突發時間=突發最大積分值/(當前I/O值-基礎IOPS)
示例說明:以ecs.g7實例規格為例,假設各實例規格掛載一塊云盤最大IOPS能力是5萬的云盤,則該云盤的基礎IOPS能力和性能突發時實際突發時間說明如下表所示。
實例規格
云盤基礎IOPS
云盤最大突發IOPS
云盤最大突發時間(分鐘)
云盤突發最大積分值
云盤實際突發時間(分鐘)
ecs.g7.large
2萬
16萬
5
(16-2)*5=70
70/(5-2)=15
ecs.g7.xlarge
4萬
16萬
10
(16-4)*10=120
120/(5-4)=120
ecs.g7.2xlarge
5萬
16萬
20
(16-5)*20=220
云盤指標等于基礎指標,無需突發
ecs.g7.3xlarge
7萬
16萬
30
(16-7)*30=270
云盤指標低于基礎指標,無需突發
ecs.g7.4xlarge
8萬
16萬
40
(16-8)*40=320
云盤指標低于基礎指標,無需突發
ecs.g7實例規格的更多信息,請參見通用型實例規格族g7。
實例存儲帶寬突發性能
指標說明:該指標代表實例規格對云盤帶寬能力的限制。
基礎帶寬:每個實例規格可以持續支持的最大云盤帶寬能力,有SLA保證。
突發帶寬:每個實例規格允許更高的帶寬能力,但突發能力有時間限制,同時也要依賴整機的帶寬資源,沒有SLA保證。當整機帶寬資源充足時,且云盤一直在規格指定的最大值突發指標突發時,不同實例規格默認允許的最大突發時間說明如下。
large:5分鐘
xlarge:10分鐘
2xlarge:20分鐘
3xlarge:30分鐘
4xlarge:40分鐘
計算公式:突發時間是按照積分計算的,當實例規格實際運行達不到最大突發值時,突發時間會更長。當前規格可以突發最大積分值和實際突發時間計算公式如下。
突發最大積分值=(最大突發帶寬-基礎帶寬)*最大突發時間
實際突發時間=突發最大積分值/(當前帶寬值-基礎帶寬)
示例說明:以ecs.g7實例規格為例,假設各實例規格掛載一塊最大帶寬值是3 Gbit/s的云盤,則該云盤的基礎帶寬能力和性能突發時實際突發時間說明如下表所示。
實例規格
云盤基礎帶寬(Gbit/s)
云盤最大突發帶寬(Gbit/s)
云盤最大突發時間(分鐘)
云盤突發最大積分值
云盤實際突發時間(分鐘)
ecs.g7.large
1.5
6
5
(6-1.5)*5=22.5
22.5/(3-1.5)=15
ecs.g7.xlarge
2
6
10
(6-2)*10=40
40/(3-2)=40
ecs.g7.2xlarge
3
6
20
(6-3)*20=60
云盤指標等于基礎指標,無需突發
ecs.g7.3xlarge
4
6
30
(6-4)*30=60
云盤指標小于基礎指標,無需突發
ecs.g7.4xlarge
5
6
40
(6-5)*40=40
云盤指標小于基礎指標,無需突發
ecs.g7實例規格的更多信息,請參見通用型實例規格族g7。