分享方式:


適用於 MySQL 的 Azure 資料庫 - 彈性伺服器中的儲存體 IOPS

適用於:適用於 MySQL 的 Azure 資料庫 - 彈性伺服器

儲存體 IOPS (每秒 I/O 作業數) 是指儲存體系統每秒可以執行的讀取和寫入作業數目。 IOPS 值越高表示儲存體效能越好,可讓您的資料庫處理更多同時讀取和寫入作業,進而加快資料擷取速度並提升整體效率。 IOPS 設定的設定值太低時,資料庫伺服器可能會在處理要求時遇到延遲,導致效能變慢且輸送量降低。 另一方面,如果 IOPS 設定的設定值太高,可能會導致不必要的資源配置,且可能會增加成本卻不會大幅提升效能。

適用於 MySQL 的 Azure 資料庫彈性伺服器目前提供兩個用於 IOPS 管理的設定:預先佈建的 IOPS 和自動調整 IOPS。

預先佈建的 IOPS

適用於 MySQL 的 Azure 資料庫彈性伺服器提供預先佈建的 IOPS,讓您可以將特定數目的 IOPS 配置給適用於 MySQL 的 Azure 資料庫彈性伺服器執行個體。 此設定可確保一致且可預測的工作負載效能。 使用預先佈建的 IOPS,您可以為儲存體磁碟區定義特定的 IOPS 限制,確保每秒能夠處理特定數目的要求。 這麼做可以獲得可靠且有保證的效能等級。

此外,預先佈建的額外 IOPS 是指為伺服器相關聯的儲存體磁碟區彈性增加佈建的 IOPS。 您可以選擇新增超出預設佈建層級的額外 IOPS,以便能配合工作負載需求隨時自訂效能。

自動調整 IOPS (Autoscale IOPS)

自動調整 IOPS 可讓您隨需彈性調整 IOPS,而不需要預先佈建每秒的特定 IO 數量。 啟用自動調整 IOPS 後,伺服器就可以根據工作負載需求自動調整 IOPS。 啟用自動調整 IOPS 功能之後,您現在完全不用擔心適用於 MySQL 的 Azure 資料庫彈性伺服器中的 IO 管理,因為伺服器會根據工作負載需求自動相應增加或減少 IOPS。 如需每個服務層級和計算大小之「最大支援 IOPS」的詳細資訊,請參閱服務層級文件。 自動調整 IOPS 會相應增加至這些限制,以將工作負載效能最佳化。

動態調整:根據工作負載的實際需求,自動調整 IOPS 會動態調整資料庫伺服器的 IOPS 限制。 這可確保在不需要手動介入或設定的情況下,獲得最佳效能。

處理工作負載尖峰:自動調整 IOPS 可讓您的資料庫順暢地處理工作負載尖峰或波動,而不會影響應用程式的效能。 此功能可確保即使在尖峰使用期間,仍能保持一致的回應性。

節省成本:不同於預先佈建的 IOPS (其中已指定固定 IOPS 限制和支付費用,不論使用量為何),自動調整 IOPS 都可讓您只支付所取用的 I/O 作業數目。 使用這項功能,您只需要支付伺服器實際使用的 IO 費用,避免不必要的佈建和使用量過低的資源費用。 這可確保節省成本並達到最佳效能,使其成為有效率地管理資料庫工作負載的明智選擇。

監視儲存體效能

使用 [監視] 下方可用的計量,可以輕鬆監視儲存體 IOPS 使用率。

概觀

取得所選時段 IO 使用率的完整檢視。 在 Azure 入口網站中,前往適用於 MySQL 的 Azure 資料庫彈性伺服器,瀏覽至 [概觀] 刀鋒視窗下的 [監視]。

概觀計量的螢幕擷取畫面。

增強型計量活頁簿

  • 在 Azure 入口網站中,瀏覽至 [監視] 區段下的 [活頁簿]。
  • 選取 [增強型計量] 活頁簿。
  • 在活頁簿的 [概觀] 區段下方,檢查 [儲存體 IO 百分比] 計量。

增強計量的螢幕擷取畫面。

[監視] 下的計量

  • 在 Azure 入口網站中,瀏覽至 [監視] 區段下的 [計量]。
  • 選取 [新增計量] 選項。
  • 從可用計量的下拉式清單中選擇 [儲存體 IO 百分比]。
  • 從可用計量的下拉式清單中選擇 [儲存體 IO 計數]。

監視計量的螢幕擷取畫面。

選取最佳 IOPS 設定

您已了解如何有效監視 IOPS 使用量,您現在已準備好探索伺服器的最佳設定。 為適用於 MySQL 的 Azure 資料庫彈性伺服器執行個體選擇 IOPS 設定時,應考慮幾個重要因素。 了解這些因素有助於制定明智的決策,以確保工作負載的最佳效能和成本效益。

效能最佳化

使用自動調整 IOPS 時,可以滿足工作負載的一致需求,因為可以預測且不需要面對儲存體節流和手動互動的缺點,就可以新增更多 IOPS。 如果您的工作負載具有一致的輸送量,或需要一致的 IOPS,則預先佈建的 IOPS 可能是較佳方式。 它提供可預測的效能等級,且 IOPS 的固定配置與指定限制中的工作負載相互關聯。 然而在有任何高於一般需求的輸送量需求時,可以使用預先佈建的 IOPS 來分配額外的 IOPS,不過這需要手動互動並了解輸送量增加時間。

節流衝擊

請考慮節流對工作負載造成的影響。 如果節流所導致的潛在效能降低是個問題,則自動調整 IOPS 可以動態處理工作負載尖峰,將節流的風險降到最低,並將效能維持在最佳層級。

最後,自動調整和預先佈建 IOPS 之間的決策,取決於您的特定工作負載需求和效能預期。 分析您的工作負載模式、評估成本影響,並考慮節流的潛在影響,做出符合您優先順序的明智選擇。 藉由考慮資料庫工作負載的特定性質,例如流量波動、查詢模式和效能需求,您可以針對自動調整和預先佈建 IOPS 之間的選擇做出明智的決策。

工作負載考量 預先佈建的 IOPS 自動調整 IOPS
具有一致且可預測 I/O 模式的工作負載 建議使用,因為僅使用佈建的 IOPS 相容,不需要手動佈建 IOPS
具有不同使用模式的工作負載 不建議使用,因為可能無法在高使用量期間提供有效效能。 建議使用,因為它會自動調整以處理不同的工作負載
具有動態成長或不斷變更效能需求的工作負載 不建議使用,因為每當 IOPS 需求變更就必須進行持續調整 建議使用,因為特定輸送量需求不需要額外的設定

成本考量

如果您的變動工作負載無法預測尖峰,則選擇自動調整 IOPS 可能會較符合成本效益。 它可確保您只需支付尖峰期間所使用的較高 IOPS 費用,就能擁有靈活彈性並節省成本。 雖然預先佈建的 IOPS 提供一致且最大的 IOPS,但成本可能會視工作負載而變得比較高。 請考慮伺服器所需的成本和效能之間的取捨。

測試和評估

如果不確定最佳 IOPS 設定,請考慮使用自動調整 IOPS 和預先佈建的 IOPS 來執行效能測試。 評估結果,並判斷哪個設定符合您的工作負載需求和效能預期。

範例工作負載:電子商務網站

如果您擁有一個電子商務網站,就可以體會到一整年中的流量波動。 平常的工作負載是中等的,但在節慶購物季或特殊促銷活動期間,流量就會呈幾何級數地激增。

自動調整 IOPS:使用自動調整 IOPS,資料庫可以動態調整其 IOPS,以處理尖峰期間增加的工作負載。 當流量暴增時,例如在黑色星期五促銷活動期間,自動調整功能可讓資料庫順暢地相應增加 IOPS 以符合需求。 這可確保效能保持順暢且不中斷,防止速度變慢或服務中斷。 在尖峰期間之後,當流量消退時,IOPS 會相應減少,讓您可以節省成本,因為您只需支付在流量激增期間使用的資源費用。

預先佈建的 IOPS:如果您選擇使用預先佈建的 IOPS,則必須估計工作負載容量上限,並據以配置固定數目的 IOPS。 不過,在尖峰期間,工作負載可能會超過預先決定的 IOPS 限制。 因此,儲存體 I/O 可能會節流,因而影響效能且可能導致使用者延遲或逾時。

範例工作負載:報告/資料分析平台

假設您使用適用於 MySQL 的 Azure 資料庫彈性伺服器進行資料分析,其中使用者提交了複雜的查詢和大規模的資料處理工作。 這個工作負載模式相當一致,一整天的查詢流程穩定。

預先佈建的 IOPS:使用預先佈建的 IOPS,您可以根據預期的工作負載選取適當的 IOPS 數目。 只要選擇的 IOPS 能適當地處理每日查詢量,就不會有節流或效能降低的風險。 此方法提供成本可預測性,並可讓您可以有效率地最佳化資源,而不需要動態調整。

自動調整 IOPS:在此案例中,自動調整功能可能無法提供顯著優勢。 由於工作負載一致,因此可以使用固定數目的 IOPS 佈建資料庫,就能輕鬆滿足需求。 因為沒有突然爆增的活動需要額外的 IOPS,所以可能不需要用到自動調整。 藉由使用預先佈建的 IOPS,您就可以取得可預測的效能而不需要調整,而且成本高低直接視配置的儲存體而定。

常見問題集

如何從預先佈建的 IOPS 移至自動調整 IOPS?

  • 存取您的 Azure 入口網站,然後找到相關的適用於 MySQL 的 Azure 資料庫彈性伺服器。
  • 前往 [設定] 刀鋒視窗,然後選擇 [計算 + 儲存體] 區段。
  • 在 [IOPS] 區段中,選擇 [自動調整 IOPS],並儲存設定以套用修改。

自動調整 IOPS 在進行變更後多久才會生效?

在適用於 MySQL 的 Azure 資料庫彈性伺服器中啟用自動調整 IOPS 並儲存設定之後,變更會在順利完成資源的部署後立即生效。 這表示自動調整 IOPS 功能將會套用至您的資料庫,不會有任何延遲。

時間點還原 (PITR) 作業會如何影響 IOPS 使用量?

在「適用於 MySQL 的 Azure 資料庫 - 彈性伺服器」進行 PITR 作業期間,系統會建立新的伺服器,並將資料從來源伺服器的儲存體複製到新伺服器的儲存體。 此程序會導致來源伺服器上的 IOPS 使用量增加。 IOPS 使用量增加是正常發生的情形,不代表來源伺服器或 PITR 作業發生任何問題。 一旦 PITR 作業完成,來源伺服器上的 IOPS 使用量就會回到其平常水準。 如需 PITR 的詳細資訊,請參閱適用於 MySQL 的 Azure 資料庫 - 彈性伺服器文件中的備份與還原一節

如何知道當伺服器使用自動調整 IOPS 功能時,IOPS 何時擴大和縮減? 或者我可以監視伺服器的 IOPS 使用量嗎?

請參閱監視儲存體效能一節,其中的內容可協助您識別伺服器是否在特定時間範圍內擴大和縮減。

我可以稍後在自動調整 IOPS 與預先佈建的 IOPS 之間切換嗎?

是,您可以在 [設定] 刀鋒視窗下的 [計算 + 儲存體] 區段下方,選擇預先佈建的 IOPS,就可以回到預先佈建的 IOPS。

如何知道適用於 MySQL 的 Azure 資料庫彈性伺服器已使用多少 IOPS?

瀏覽至 [概觀] 區段下的 [監視],或瀏覽至 [監視] 刀鋒視窗下的 [IO 計數計量]。 IO 計數計量會提供伺服器在所選時間範圍內使用的 IOPS 總和。

下一步