適用於 MySQL 的 Azure 資料庫 - 彈性伺服器的服務層級
適用於:適用於 MySQL 的 Azure 資料庫 - 彈性伺服器
您可以在下列三個服務層中擇一建立適用於 MySQL 的 Azure 資料庫彈性伺服器執行個體:高載計算層、一般用途計算層和業務關鍵計算層。 基礎 VM SKU 區分使用 B 系列、D 系列和 E 系列的服務層。 選擇的計算層和大小決定伺服器上可用的記憶體和虛擬核心。 所有服務層會使用完全相同的儲存體技術。 所有資源都會佈建在適用於 MySQL 的 Azure 資料庫彈性伺服器執行個體層級。 一個伺服器可以有一個或多個資料庫。
資源/層 | 可高載 | 一般用途 | 業務關鍵 |
---|---|---|---|
VM 系列 | B 系列虛擬機器的大小 | Dadsv5 系列Ddsv4 系列 | Edsv4/Edsv5 系列*/Eadsv5 系列 |
虛擬核心 | 1、2、4、8、12、16、20 | 2、4、8、16、32、48、64 | 2、4、8、16、32、48、64、80、96 |
每個虛擬核心的記憶體 | 變數 | 4 GiB | 8 GiB ** |
儲存體大小 | 20 GiB 至 16 TiB | 20 GiB 至 16 TiB | 20 GiB 至 32 TiB |
資料庫備份的保留期限 | 1 到 35 天 | 1 到 35 天 | 1 到 35 天 |
** 64,80 和 96 個 vCore 除外,其分別具有 504 GiB、504 GiB 和 672 GiB 的記憶體。
* 在其他 VM 系列中,Ev5 計算在 QPS 和延遲方面的執行成效最佳。 如需深入了解 Ev5 計算的效能和區域可用性,請參閱這裡。
彈性伺服器服務層級
若要選擇計算層,請從下表著手。
計算層 | 目標工作負載 |
---|---|
可高載 | 最適合不需要持續使用完整 CPU 的工作負載。 |
一般用途 | 大部分商務工作負載都需要平衡的計算和記憶體,以及可擴充 I/O 輸送量。 範例包括用於裝載 Web 和行動應用程式的伺服器,以及其他企業應用程式。 |
業務關鍵 | 需要記憶體內效能來提供更快速交易處理和更高並行性的高效能資料庫工作負載。 範例包括用於處理即時資料的伺服器,以及高效能交易式或分析應用程式。 |
建立伺服器之後,您可以變更計算層、計算大小和儲存體大小。 計算調整需要重新啟動,且需要 60 到 120 秒的時間,而儲存體調整則不需要。 您也可以向上或向下自主調整備份保留期間。 如需詳細資訊,請參閱調整資源一節。
服務層、大小和伺服器類型
您可以根據計算層和大小來選取計算資源。 這會決定虛擬核心和記憶體大小。 虛擬核心代表基礎硬體的邏輯 CPU。
可高載
高載服務層適用的伺服器類型詳細規格如下。
計算大小 | 虛擬核心 | 實體記憶體大小 (GiB) | 總記憶體大小 (GiB) | 支援的 IOPS 上限 | 連線數目上限 | 暫存儲存體 (SSD) GiB |
---|---|---|---|---|---|---|
Standard_B1ms | 1 | 2 | 2.2 | 640 | 341 | 0 |
Standard_B2s | 2 | 4 | 4.4 | 1280 | 683 | 0 |
Standard_B2ms | 2 | 8 | 8.8 | 1700 | 1365 | 0 |
Standard_B4ms | 4 | 16 | 17.6 | 2400 | 2731 | 0 |
Standard_B8ms | 8 | 32 | 35.2 | 3100 | 5461 | 0 |
Standard_B12ms | 12 | 48 | 52.8 | 3800 | 8193 | 0 |
Standard_B16ms | 16 | 64 | 70.4 | 4300 | 10923 | 0 |
Standard_B20ms | 20 | 80 | 88 | 5000 | 13653 | 0 |
一般用途
一般用途服務層適用的伺服器類型詳細規格如下
計算大小 | 虛擬核心 | 實體記憶體大小 (GiB) | 總記憶體大小 (GiB) | 支援的 IOPS 上限 | 連線數目上限 | 暫存儲存體 (SSD) GiB |
---|---|---|---|---|---|---|
Standard_D2ads_v5 | 2 | 8 | 11 | 3200 | 1365 | 53 |
Standard_D2ds_v4 | 2 | 8 | 11 | 3200 | 1365 | 53 |
Standard_D4ads_v5 | 4 | 16 | 22 | 6400 | 2731 | 107 |
標準 D4ds_v4 | 4 | 16 | 22 | 6400 | 2731 | 107 |
Standard_D8ads_v5 | 8 | 32 | 44 | 12800 | 5461 | 215 |
標準 D8ds_v4 | 8 | 32 | 44 | 12800 | 5461 | 215 |
Standard_D16ads_v5 | 16 | 64 | 88 | 20000 | 10923 | 430 |
Standard_D16ds_v4 | 16 | 64 | 88 | 20000 | 10923 | 430 |
Standard_D32ads_v5 | 32 | 128 | 176 | 20000 | 21845 | 860 |
Standard_D32ds_v4 | 32 | 128 | 176 | 20000 | 21845 | 860 |
Standard_D48ads_v5 | 48 | 192 | 264 | 20000 | 32768 | 1290 |
標準 D48ds_v4 | 48 | 192 | 264 | 20000 | 32768 | 1290 |
Standard_D64ads_v5 | 64 | 256 | 352 | 20000 | 43691 | 1720 |
Standard_D64ds_v4 | 64 | 256 | 352 | 20000 | 43691 | 1720 |
業務關鍵
業務關鍵服務層適用的伺服器類型詳細規格如下。
計算大小 | 虛擬核心 | 實體記憶體大小 (GiB) | 總記憶體大小 (GiB) | 支援的 IOPS 上限 | 連線數目上限 | 暫存儲存體 (SSD) GiB |
---|---|---|---|---|---|---|
標準 E2ds_v4 | 2 | 16 | 22 | 5000 | 2731 | 37 |
Standard_E2ads_v5 | 2 | 16 | 22 | 5000 | 2731 | 37 |
Standard_E4ds_v4 | 4 | 32 | 44 | 10000 | 5461 | 75 |
Standard_E4ads_v5 | 4 | 32 | 44 | 10000 | 5461 | 75 |
Standard_E8ds_v4 | 8 | 64 | 88 | 18000 | 10923 | 151 |
Standard_E8ads_v5 | 8 | 64 | 88 | 18000 | 10923 | 151 |
Standard_E16ds_v4 | 16 | 128 | 176 | 28000 | 21845 | 302 |
Standard_E16ads_v5 | 16 | 128 | 176 | 28000 | 21845 | 302 |
標準 E20ds_v4 | 20 | 160 | 220 | 28000 | 27306 | 377 |
Standard_E20ads_v5 | 20 | 160 | 220 | 28000 | 27306 | 377 |
Standard_E32ds_v4 | 32 | 256 | 352 | 38000 | 43691 | 604 |
Standard_E32ads_v5 | 32 | 256 | 352 | 38000 | 43691 | 604 |
標準 E48ds_v4 | 48 | 384 | 528 | 48000 | 65536 | 906 |
Standard_E48ads_v5 | 48 | 384 | 528 | 48000 | 65536 | 906 |
Standard_E64ds_v4 | 64 | 504 | 693 | 64000 | 86016 | 1224 |
Standard_E64ads_v5 | 64 | 504 | 693 | 64000 | 86016 | 1224 |
Standard_E80ds_v4 | 80 | 504 | 693 | 72000 | 86016 | 1224 |
Standard_E2ds_v5 | 2 | 16 | 22 | 5000 | 2731 | 37 |
Standard_E4ds_v5 | 4 | 32 | 44 | 10000 | 5461 | 75 |
Standard_E8ds_v5 | 8 | 64 | 88 | 18000 | 10923 | 151 |
Standard_E16ds_v5 | 16 | 128 | 176 | 28000 | 21845 | 302 |
Standard_E20ds_v5 | 20 | 160 | 220 | 28000 | 27306 | 377 |
Standard_E32ds_v5 | 32 | 256 | 352 | 38000 | 43691 | 604 |
Standard_E48ds_v5 | 48 | 384 | 528 | 48000 | 65536 | 906 |
Standard_E64ds_v5 | 64 | 512 | 704 | 64000 | 87383 | 1208 |
Standard_E96ds_v5 | 96 | 672 | 924 | 80000 | 100000 | 2004 |
適用於 MySQL 的 Azure 資料庫彈性伺服器中的記憶體管理
在 MySQL 中,記憶體在各種作業中均扮演重要角色,包括查詢處理和快取。 適用於 MySQL 的 Azure 資料庫彈性伺服器會最佳化 MySQL 伺服器程序 (mysqld) 的記憶體配置,確保有足夠的記憶體資源用於有效率的查詢處理、快取、用戶端連線管理和執行緒處理。 深入了解 MySQL 如何使用記憶體。
實體記憶體大小 (GB)
下表中的實體記憶體大小 (GB) 代表適用於 MySQL 的 Azure 資料庫彈性伺服器上可用的隨機存取記憶體 (RAM),以 GB 為單位。
總記憶體大小 (GB)
適用於 MySQL 的 Azure 資料庫彈性伺服器提供總記憶體大小 (GB)。 這代表伺服器可用的記憶體總計,這是實體記憶體和一組暫存記憶體 SSD 元件的組合。 此整合檢視的設計目的是簡化資源管理,讓您只專注於 Azure MySQL 伺服器 (mysqld) 程序可用的總記憶體。 記憶體百分比 (memory_percent) 計量代表 Azure MySQL 伺服器程序 (mysqld) 所佔用的記憶體百分比。 此計量的計算是依據總記憶體大小 (GB)。 例如,當記憶體百分比計量顯示值 60 時,表示您的 Azure MySQL 伺服器程序正在使用適用於 MySQL 的 Azure 資料庫彈性伺服器上可用的總記憶體大小 (GB) 中的 60%。
MySQL 伺服器 (mysqld)
Azure MySQL 伺服器程序 mysqld 是核心資料庫作業引擎。 啟動時,它會根據設定和工作負載需求,初始化 InnoDB 緩衝集區和執行緒快取之類的元件總數。 舉例來說,InnoDB 緩衝集區會快取經常存取的資料和索引,以改善查詢執行速度,而執行緒快取則管理用戶端連線執行緒。 深入了解。
InnoDB 儲存引擎
作為 MySQL 的預設儲存引擎,InnoDB 會使用記憶體來快取經常存取的資料,以及管理內部結構,例如 innodb 緩衝集區和記錄緩衝區。 InnoDB 緩衝集區會資料表資料和索引保存在記憶體中,以便將磁碟 I/O 降到最低,進而提高效能。 InnoDB 緩衝集區大小參數是根據伺服器上可用的實體記憶體大小 (GB) 加以計算。 深入了解適用於 MySQL 的 Azure 資料庫彈性伺服器中可用的 InnoDB 緩衝集區大小。
執行緒
用戶端連線是透過連線管理員所處理的專用執行緒進行管理。 這些執行緒會處理用戶端互動的驗證、查詢執行和結果擷取。 深入了解。
若要取得可用計算系列的詳細資料,請參閱適用於 B 系列高載虛擬機器大小、一般用途性的 Dadsv5 系列Ddsv4 系列,以及業務關鍵性的 Edsv4/Edsv5 系列/Eadsv5 系列的 Azure VM 文件。
高載序列執行個體的效能限制
注意
針對 B 系列高載虛擬機器大小,如果 VM 已啟動/已停止或已重新啟動,點數可能會遺失。 如需詳細資訊,請參閱 B 系列高載虛擬機器大小。
高載計算層的設計目的是為不需要連續完整 CPU 的工作負載持續提供符合成本效益的解決方案。 此層適用於非生產工作負載,例如開發、暫存或測試環境。 高載計算層的獨特功能是能夠「高載」,也就是在工作負載需要時,使用最多 100% 的 vCPU 來利用其基準 CPU 效能。 這可透過 CPU 信用模型來達成,如此可讓 B 系列執行個體在低 CPU 使用量期間累積「CPU 點數」。 然後,可以在高 CPU 使用量期間花費這些點數,讓執行個體高載在其基礎 CPU 效能之上。
不過,請務必注意,一旦高載執行個體耗盡其 CPU 點數後,就會以其基礎 CPU 效能運作。 例如,Standard_B1ms 的基礎 CPU 效能為 20%,也就是 0.2 虛擬核心。 假設高載層伺服器執行的工作負載需要比基本層級更多的 CPU 效能,且已耗盡其 CPU 點數。 在此情況下,伺服器可能會遇到效能限制,最終可能會影響伺服器的各種系統作業,例如停止/啟動/重新啟動。
注意
對於 B 系列高載虛擬機器大小中的伺服器,例如主機記憶體大小相對較小的 Standard_B1s/Standard_B1ms/Standard_B2s,可能會導致伺服器因持續性工作負載而當機 (記憶體不足),即使 memory_percent 計量未達到 100% 也一樣。
由於此節流,伺服器可能會發生連線問題,且系統作業可能會受到影響。 在這種情況下,建議動作是暫停伺服器上的工作負載,以根據 B 系列信貸銀行模型累積點數,或考慮將伺服器調整為較高層級,例如一般用途或業務關鍵層。
因此,雖然高載計算層針對特定類型的工作負載可提供顯著的成本和彈性優勢,但不建議用於需要一致 CPU 效能的生產工作負載。 高載層不支援適用於 MySQL 的 Azure 資料庫彈性伺服器中讀取複本建立功能,以及適用於 MySQL 的 Azure 資料庫彈性伺服器中的高可用性概念。 其他計算層 (例如一般用途或業務關鍵) 更適合這類工作負載和功能。
如需 Azure 的 B 系列 CPU 信用模型的詳細資訊,請參閱 B 系列高載虛擬機器大小和 B 系列 CPU 信用模型。
監視高載層中的 CPU 點數
監視 CPU 點數餘額對於在高載計算層中維持最佳效能而言至關重要。 適用於 MySQL 的 Azure 資料庫彈性伺服器提供兩種關於 CPU 點數的主要計量。 觸發警示的理想閾值取決於您的工作負載和效能需求。
監視適用於 MySQL 的 Azure 資料庫 - 彈性伺服器:此計量表示執行個體所使用的 CPU 點數數目。 監視此計量可協助您了解執行個體的 CPU 使用量模式,並有效地管理其效能。
監視適用於 MySQL 的 Azure 資料庫 - 彈性伺服器:此計量顯示留給執行個體的 CPU 點數數目。 監視此計量,可協助您防止執行個體因其 CPU 點數耗盡而降低效能。 如果 CPU 點數剩餘計量低於特定層級 (例如,可用點數總數的 30% 以下),這表示如果目前的 CPU 負載繼續,執行個體可能會耗盡其 CPU 點數。
如需有關如何設定計量警示的詳細資訊,請參閱本指南。
儲存體
您所佈建的儲存體是可供彈性伺服器使用的儲存體容量。 儲存體會用於資料庫檔案、暫存檔案、交易記錄和 MySQL 伺服器記錄。 對於高載和一般用途服務層級,儲存範圍從至少 20 GiB 到最多 16 TiB。 相反地,若是業務關鍵服務層級,儲存體支援最多可擴充 32 TiB。 在所有服務層級中,儲存體會以 1 GiB 增量來縮放,而且可以在建立伺服器之後擴大。
注意
儲存體只能擴大,而不能縮小。
您可以使用儲存體限制、儲存體百分比和已使用的儲存體計量,在 Azure 入口網站中 (使用 Azure 監視器) 來監視儲存體使用量。 請參閱監視文章以了解計量。
達到儲存體限制
當伺服器上使用的儲存體接近所佈建的限制時,伺服器會進入唯讀模式,以免伺服器遺失寫入。 若伺服器中佈建的儲存體小於或等於 100 GiB,當可用儲存空間小於所佈建儲存體大小的 5% 時,伺服器會標示為唯讀。 若伺服器中佈建的儲存體超過 100 GiB ,則只有在可用儲存空間小於 5 GiB 時,伺服器才會標示為唯讀。
例如,如果您已佈建 110 GiB 的儲存體,並且實際的使用率超過 105 GiB,伺服器會標示為唯讀。 或者,如果您已佈建 5 GiB 的儲存體,則當可用儲存體小於 256 MB 時,伺服器會標示為唯讀。
當服務嘗試讓伺服器變為唯讀時,會封鎖所有新的寫入交易要求,而現有的使用中交易會繼續執行。 當伺服器設為唯讀時,所有後續的寫入作業和交易認可都會失敗,但讀取查詢會繼續不間斷地運作。
若要讓伺服器退出唯讀模式,請增加伺服器上所佈建的儲存體。 這可以使用 Azure 入口網站或 Azure CLI 來進行。 增加後,伺服器即可再次接受寫入交易。
建議您設定警示,讓系統可在伺服器儲存容量接近閾值時發出通知,以避免進入唯讀狀態。 如需詳細資訊,請參閱關於如何設定警示的文件。
儲存體自動成長
儲存體自動成長可防止伺服器用盡儲存體而變成唯獨。 如果啟用儲存體自動成長功能,儲存體會自動成長且不會影響工作負載。 預設會針對所有新建立的伺服器啟用儲存體自動成長功能。 針對所佈建儲存體小於 100 GB 的伺服器,當可用儲存體低於所佈建儲存體的 10% 時,所佈建的儲存體大小會立即增加 5 GB。 針對已佈建儲存體大於 100 GB 的伺服器,當可用儲存體低於 10 GB 時,佈建的儲存體大小會立即增加 5%。 適用上述的儲存體上限。 請重新整理伺服器執行個體,以在 [計算 + 儲存體] 頁面上的 [設定] 底下,查看更新後的已佈建儲存體。
例如,如果您已佈建 1000 GB 的儲存體,並且實際的使用量超過 990 GB,伺服器儲存體大小會增加為 1050 GB。 或者,如果您已佈建 20 GB 的儲存體,則儲存體大小會在少於 2 GB 的可用儲存體時增加為 25 GB。
請記住,儲存體一旦自動擴增便無法縮小。
注意
已設定高可用性伺服器的儲存體自動成長預設為啟用,因此無法停用。
IOPS
適用於 MySQL 的 Azure 資料庫彈性伺服器支援預先佈建的 IOPS 和自動調整 IOPS。 適用於 MySQL 的 Azure 資料庫彈性伺服器中的儲存體 IOPS 所有計算大小的最小 IOPS 是 360,最大 IOPS 則取決於所選取的計算大小。 若要深入了解每一計算大小的最大 IOPS,請參閱資料表。
重要
**所有計算大小的最下 IOPS 是 360
**最大 IOPS 取決於所選取的計算大小。
您可以使用 監視適用於 MySQL 的 Azure 資料庫彈性伺服器計量,在 Azure 入口網站中 (使用 Azure 監視器) 監視 I/O 使用量。 如果您需要的 IOPS 超過根據計算所決定的最大 IOPS,則必須調整伺服器的計算。
預先佈建的 IOPS
適用於 MySQL 的 Azure 資料庫彈性伺服器提供預先佈建的 IOPS,讓您可以將特定數目的 IOPS 配置給適用於 MySQL 的 Azure 資料庫彈性伺服器執行個體。 此設定可確保一致且可預測的工作負載效能。 使用預先佈建的 IOPS,您可以為儲存體磁碟區定義特定的 IOPS 限制,確保每秒能夠處理一些要求。 這麼做可以獲得可靠且有保證的效能等級。 預先佈建的 IOPS 可讓您佈建超過 IOPS 限制的額外 IOPS。 利用這項功能,您也可以根據工作負載需求隨時增加或減少 IOPS 數目。
自動調整 IOPS (Autoscale IOPS)
適用於 MySQL 的 Azure 資料庫彈性伺服器的基石可以達成第 1 層工作負載的最佳效能。 若要改善效能,您可以讓伺服器根據工作負載需求,順暢地自動調整資料庫伺服器的效能 (IO)。 這個可選擇加入的功能,可讓使用者視需要調整 IOPS,而不必預先佈建每秒的特定 IO 量。 啟用 Autoscale IOPS 功能之後,您現在可以在 Azure Database for MySQL - Flexible Server 中享有高枕無憂的 IO 管理,因為伺服器會根據工作負載需求自動相應增加或減少 IOPS。 自動調整 IOPS 會自動擴大至每個服務層級和計算大小的「最大支援 IOPS」,如服務層級文件中所指定。 這可確保最佳效能,而不需要手動縮放工作
透過 Autoscale IOPS,您只需針對伺服器所使用的 IO 付費,而不再需要佈建未充分使用的資源並付費,同時節省時間和金錢。 此外,任務關鍵性第 1 層應用程式可以隨時讓工作負載使用額外的 IO,以達到一致的效能。 自動調整 IOPS 可消除以最低成本為適用於 MySQL 的 Azure 資料庫彈性伺服器客戶提供最佳效能所需的管理。
動態調整:自動調整 IOPS 會根據工作負載的實際需求,動態調整資料庫伺服器的 IOPS 限制。 這可確保在不需要手動介入或設定的情況下,獲得最佳效能。
處理工作負載尖峰:自動調整 IOPS 可讓您的資料庫順暢地處理工作負載尖峰或波動,而不會影響應用程式的效能。 此功能可確保即使在尖峰使用期間,仍能保持一致的回應性。
節省成本:不同於預先佈建的 IOPS (指定固定 IOPS 限制和支付費用,不論使用量為何),自動調整 IOPS 都可讓您只支付所取用的 I/O 作業數目。
Backup
此服務會自動備份您的伺服器。 您可以選取 1 到 35 天的保留期間。 在備份與還原概念一文中深入了解備份。
調整資源
建立伺服器之後,您可以單獨變更計算層、計算大小 (虛擬核心和記憶體)、儲存體數量及備份保留期間。 計算大小可以擴大或減少,且備份保留期可在 1 到 35 天的範圍內相應增加或減少。 儲存體大小只能增加。 您可以透過入口網站或 Azure CLI 來調整資源。
注意
儲存體大小只能增加。 增加之後,您無法回到較小的儲存體大小。
變更計算層或計算大小時,伺服器必須重新啟動,才能讓新的伺服器類型生效。 在系統切換到新伺服器時,您無法建立任何新的連線,且所有未認可的交易皆會復原。 時間長度不一定,但大多數情況下,會介於 60 到 120 秒之間。
縮放儲存體和變更備份保留期間是線上作業,不需要重新啟動伺服器。
價格
如需最新的定價資訊,請參閱服務的定價頁面。 若要查看您所需的設定成本,Azure 入口網站會根據您選取的選項,在 [計算 + 儲存體] 索引標籤中顯示每月成本。 如果您沒有 Azure 訂用帳戶,則可以使用 Azure 定價計算機來取得估計的價格。 在 Azure 定價計算機網站上選取 [新增項目],展開 [資料庫] 類別,然後選擇 [適用於 MySQL 的 Azure 資料庫] 和 [彈性伺服器] 作為部署類型以自訂選項。
如果您想要將伺服器成本最佳化,則可以考慮下列提示:
- 如果計算的使用量過低,請縮小計算層或計算大小 (虛擬核心)。
- 如果您的工作負載不需要持續使用滿載的計算容量,請考慮從一般用途和業務關鍵計算層切換至可高載計算層。
- 將未使用的伺服器停止。
- 如果不需要長時間保留備份,請縮減備份的保留期間。