疑難排解 Azure 備份的檔案和資料夾備份速度緩慢問題

這篇文章提供疑難排解指引,可協助您診斷當您使用 Azure 備份時,檔案與資料夾備份效能緩慢的原因。 當您使用 Azure 備份代理程式來備份檔案時,備份處理程序進行的時間可能比預期的還要久。 此延遲可能是因為下列一或多個原因所造成:

在開始對問題進行疑難排解之前,建議您下載並安裝 最新版的 Azure 備份代理程式。 我們會經常更新備份代理程式,以修正各種問題、新增功能和改善效能。

我們也強烈建議您檢閱 Azure 備份服務常見問題集 ,以確定所遇到的問題並非任何常見的組態問題。

若本文中未提及您的 Azure 問題,請前往 Microsoft Q&A 及 Stack Overflow 上的 Azure 論壇。 您可以在這些論壇中張貼您的問題,或將問題貼到 Twitter 上的 @AzureSupport。 您也可以提交 Azure 支援要求。 若要提交支援要求,請在 Azure 支援頁面上,選取 [取得支援]。

原因:在未最佳化模式下執行備份作業

  • MARS 代理程式可以使用 USN (更新序號) 變更日誌,在最佳化模式下執行備份作業,或藉由掃描整個磁碟區,檢查目錄或檔案中是否有變更,以在未最佳化模式下執行備份作業。

  • 未最佳化模式會變慢,因為代理程式必須掃描磁碟區上的所有檔案,並與中繼資料進行比較,以判斷變更的檔案。

  • 若要確認這一點,請從 MARS 代理程式主控台開啟 [作業詳細資料] 並檢查狀態,以查看是否顯示 [正在傳輸資料 (未最佳化,可能需要更多時間)],如下所示:

    Running in unoptimized mode

  • 下列情況可能會導致備份作業在未最佳化模式下執行:

    • 第一次備份 (也稱為初始複寫) 一律會在未最佳化模式下執行
    • 如果先前的備份作業失敗,則下一個排定的備份工作將會以未最佳化的方式執行。

原因:電腦的效能瓶頸

所備份電腦上的瓶頸可能會造成延遲。 例如,電腦讀取或寫入磁碟的能力,或者透過網路傳送資料的可用頻寬,都可能造成瓶頸。

Windows 提供了稱為 效能監視器 (Perfmon) 的內建工具,以偵測這些瓶頸。

以下是能幫助您診斷最佳化備份瓶頸的一些效能計數器和範圍。

計數器 狀態
邏輯磁碟 (實體磁碟)--% 閒置
  • 100% 閒置至 50% 閒置 = 狀況良好
  • 49% 閒置至 20% 閒置 = 警告或監視
  • 19% 閒置至 0% 閒置 = 重大或超出規範
  • 邏輯磁碟 (實體磁碟)--% 平均磁碟的讀取或寫入秒數
  • 0.001 毫秒到 0.015 毫秒 = 狀況良好
  • 0.015 毫秒到 0.025 毫秒 = 警告或監視
  • 0.026 毫秒或更長 = 嚴重或超出規範
  • 邏輯磁碟 (實體磁碟)--(所有執行個體) 目前的磁碟佇列長度 80 個要求超過 6 分鐘
    記憶體--集區未分頁位元組
  • 耗用不到 60% 集區 = 狀況良好
  • 耗用 61% 到 80% 集區 = 警告或監視
  • 耗用超過 80% 集區 = 重大或超出規範
  • 記憶體--集區分頁位元組
  • 耗用不到 60% 集區 = 狀況良好
  • 耗用 61% 到 80% 集區 = 警告或監視
  • 耗用超過 80% 集區 = 重大或超出規範
  • 記憶體--可用 MB 數
  • 50% 以上的可用記憶體可供使用 = 狀況良好
  • 25% 的可用記憶體可供使用 = 監視
  • 10% 的可用記憶體可供使用 = 警告
  • 不到 100 MB 或 5% 的可用記憶體可供使用 = 重大或超出規範
  • 處理器--% 處理器時間 (所有執行個體)
  • 已消耗低於 60% = 狀況良好
  • 已消耗 61% 到 90% = 監視或警告
  • 已消耗 91% 到 100% = 嚴重
  • 注意

    如果您判斷是基礎結構問題,我們建議您定期執行磁碟重組以提升效能。

    原因:有其他處理程序或防毒軟體在干擾 Azure 備份

    我們曾看過許多例子,Windows 系統中的其他處理程序會對 Azure 備份代理程式處理程序的效能造成不良影響。 例如,如果您同時使用 Azure 備份代理程式和其他程式來備份資料,或是如果防毒軟體正在執行因而鎖定了要備份的檔案,檔案有多個鎖定可能會造成爭用情形。 在此情況下,備份可能會失敗,或作業執行時間可能會比預期的還要久。

    此案例的最佳建議是關閉其他備份程式,以查看 Azure 備份代理程式的備份時間是否有變化。 通常只要確定多個備份作業不會在同一時間執行,就足以防止作業彼此干擾。

    如果您已在伺服器上安裝防毒軟體,請針對下列項目將排除規則新增至防毒掃描:

    • 每個臨時Bin 資料夾位置下的檔案和資料夾 - <InstallPath>\Scratch\*<InstallPath>\Bin\*
    • cbengine.exe

    原因:Azure 虛擬機器上執行的備份代理程式

    如果您在 VM 上執行備份代理程式,其效能會比在實體機器上執行來得慢。 這是預期行為,因為有 IOPS 限制。 不過,您可以藉由將正在備份的資料磁碟機切換到 Azure 進階儲存體來獲得最佳效能。 我們正在努力修正此問題,未來的版本將會有這方面的修正。

    原因:備份大量的 (數百萬計) 檔案

    移動大量資料所花費的時間會比移動較少量資料更久。 在某些情況下,備份時間不僅與資料大小有關,也與檔案或資料夾的數目有關。 尤其是在備份數百萬計的小檔案 (幾位元組到幾千位元組) 時,更是如此。

    發生這個行為的原因是因為當您備份資料並將資料移動至 Azure 的時候,Azure 會同時分類您的檔案。 在某些罕見的案例中,目錄作業花費的時間可能比預期時間更長。

    下列指標可協助您了解瓶頸並據以處理下一個步驟︰

    • UI 正在顯示資料傳輸的進度。 資料仍在傳輸中。 網路頻寬或資料大小可能會造成延遲。
    • UI 未顯示資料傳輸的進度。 請開啟位於 C:\Program Files\Microsoft Azure 復原服務代理程式\Temp 的記錄,然後查看記錄中是否有 FileProvider::EndData 項目。 此項目表示資料傳輸完成,且目錄作業正在進行中。 請勿取消備份工作。 請稍微多等待一些時間讓目錄作業完成。 若問題持續發生,請連絡 Azure 支援

    如果您嘗試備份大型磁碟,建議使用 Azure 資料箱進行第一次備份 (初始複寫)。 如果您無法使用資料箱,則在透過網路進行長時間資料傳輸期間,環境中發生的任何暫時性網路問題都會導致備份失敗。 若要避免這些失敗,您可以將幾個資料夾新增至初始備份,並持續以增量方式新增更多資料夾,直到所有資料夾都成功備份至 Azure 為止。 後續的增量備份將會相對較快。

    後續步驟