共用方式為


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

儲存體系統可執行的讀取和寫入作業數目是以每秒輸入/輸出作業 (IOPS) 來測量。 較高的 IOPS 值表示更好的儲存體效能,這可讓您的資料庫處理更多同時的讀取和寫入作業。 結果是更快速地擷取資料並提升整體效率。

如果 IOPS 設定太低,資料庫伺服器可能會在處理要求時遇到延遲,導致效能變慢且輸送量降低。 如果 IOPS 設定太高,可能會導致不必要的資源配置,且可能會增加成本卻不會大幅提升效能。

選擇 IOPS 管理設定

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

預先佈建的 IOPS

您可以使用預先佈建的 IOPS,將特定數目的 IOPS 配置給適用於 MySQL 的 Azure 資料庫 - 彈性伺服器執行個體。 定義儲存體磁碟區的特定 IOPS 限制可確保每秒處理特定數目的要求。 此設定有助於確保工作負載具有一致且可預測的效能。

預先佈建的 IOPS 也為與伺服器相關聯的儲存體磁碟區提供增加佈建 IOPS 的彈性。 您可以隨時新增超過預設佈建層級的額外 IOPS 來自訂效能,以更符合您的工作負載需求。

自動調整 IOPS (Autoscale IOPS)

自動調整 IOPS 可提供彈性來隨選調整 IOPS。 當您啟用自動調整 IOPS 時,您的伺服器會根據工作負載的需求自動調整資料庫伺服器的 IOPS 限制。 這種動態調整可協助將工作負載效能最佳化,而不需要手動介入或設定。 如需每個服務層級和計算大小所支援最大 IOPS 的詳細資訊,請參閱服務層級文件

自動調整 IOPS 的其他優點包括:

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

  • 節省成本:不同於預先佈建的 IOPS (其中已指定固定 IOPS 限制和支付費用,不論使用量為何),自動調整 IOPS 都可讓您只支付所取用的 I/O 作業數目。 您可以避免不必要的佈建和使用量過低的資源費用。 結果是同時達成節省成本與最佳效能,讓自動調整成為有效率地管理資料庫工作負載的明智選擇。

監視儲存體效能

您可以使用適用於 MySQL 的 Azure 資料庫 - 彈性伺服器可用的計量來監視儲存體 IOPS 使用率。

取得所選時段的 I/O 使用率概觀

  1. 在 Azure 入口網站中,前往您的 Azure MySQL 彈性伺服器資料庫。
  2. 在 [概觀] 窗格中,選取 [監視] 索引標籤。
  3. 在 [顯示過去的資料] 區域中,選取時段。

監視伺服器以疑難排解及最佳化工作負載之索引標籤的螢幕擷取畫面。

檢視增強計量的活頁簿

  1. 在 Azure 入口網站中,導航至您的 Azure Database for MySQL 彈性伺服器。
  2. 移至 [監視]>[活頁簿]
  3. 選取 [增強的計量] 活頁簿。
  4. 在活頁簿的 [概觀] 索引標籤上,檢查 [儲存體 IO 百分比] 計量。

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

新增儲存體 I/O 百分比和計數的計量

  1. 在 Azure 入口網站中,移至 [適用於 MySQL 的 Azure 資料庫彈性伺服器]。
  2. 移至 [監視]>[計量]
  3. 選取 [新增計量]
  4. 在可用計量的下拉式清單中,選取 [儲存體 IO 百分比] 和 [儲存體 IO 計數]

已針對儲存體輸入/輸出百分比和計數新增監視計量的螢幕擷取畫面。

選取最佳 IOPS 設定

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

效能最佳化

透過自動調整 IOPS,您可以滿足工作負載的一致性和可預測性需求,而不需要面對儲存體節流和手動互動的缺點,以新增更多 IOPS。

如果您的工作負載具有一致的輸送量,或需要一致的 IOPS,則預先佈建的 IOPS 可能是較佳方式。 它提供可預測的效能等級,且 IOPS 的固定配置與指定限制中的工作負載相互關聯。

如果您需要高於一般需求的輸送量,您可以使用預先佈建的 IOPS 來配置額外的 IOPS。 此選項需要手動互動,並了解輸送量增加時間。

節流衝擊

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

最後,自動調整和預先佈建 IOPS 之間的決策,取決於您的特定工作負載需求和效能預期。 分析您的工作負載模式、評估成本影響,並考慮節流的潛在影響,做出符合您優先順序的選擇。

工作負載考量 預先佈建的 IOPS 自動調整 IOPS (Autoscale IOPS)
具有一致且可預測 I/O 模式的工作負載 建議使用,因為它只使用佈建的 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?

  1. 在 Azure 入口網站中,尋找相關的 Azure MySQL 彈性伺服器資料庫。
  2. 移至 [設定] 窗格,然後選取 [計算 + 儲存體]
  3. 在 [IOPS] 區段中,選取 [自動調整 IOPS],然後儲存設定以套用修改。

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

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

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

在「適用於 MySQL 的 Azure 資料庫 - 彈性伺服器」進行時間點還原 (PITR) 作業期間,系統會建立新的伺服器,並將資料從來源伺服器的儲存體複製到新伺服器的儲存體。 此程序會導致來源伺服器上的 IOPS 使用量增加。

IOPS 使用量增加是正常發生的情形,不代表來源伺服器或 PITR 作業發生任何問題。 在 PITR 作業完成之後,來源伺服器上的 IOPS 使用量就會回到其平常水準。

如需 PITR 的詳細資訊,請參閱適用於 MySQL 的 Azure 資料庫 - 彈性伺服器中的備份與還原

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

請參閱本文稍早的監視儲存體效能一節。 它可協助您識別您的伺服器是否在特定時間範圍內擴大或縮減。

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

是。 您可以在 [設定] 窗格的 [計算 + 儲存體] 區段中選取它 ,以回到預先佈建的 IOPS。

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

移至 [概觀] 區段中的 [監視],或移至 [監視] 窗格上的 [儲存體 IO 計數] 計量。 儲存體 IO 計數計量會提供伺服器在所選時間範圍內所使用的 IOPS 總和。