共用方式為


Blob 快照集

快照集是在某個點時間取得的唯讀 Blob 版本。

注意

Blob 版本設定能提供優異的方式來維護舊版的 Blob。 如需詳細資訊,請參閱 Blob 版本設定

關於 Blob 快照集

重要

在已啟用階層命名空間功能的帳戶中,快照集目前處於預覽狀態。 請參閱 Microsoft Azure 預覽版增補使用規定,以了解適用於 Azure 功能 (搶鮮版 (Beta)、預覽版,或尚未正式發行的版本) 的法律條款。

若要註冊預覽版,請參閱這份表單

Blob 的快照集與其基底 Blob 相同,除了 Blob URI 附加了 [日期時間] 值以表示擷取快照當時的時間。 例如,如果分頁 Blob URI 為 http://storagesample.core.blob.windows.net/mydrives/myvhd,則快照集 URI 類似於 http://storagesample.core.blob.windows.net/mydrives/myvhd?snapshot=2011-03-09T01:42:34.9360000Z

注意

所有快照集會共用基底 blob 的 URI。 基底 blob 與快照集之間的唯一差別在於附加的 DateTime 值。

Blob 可包含任意數目的快照集。 系統會保存快照集,直到您將它們明確刪除為止,這可能是獨立作業,也可能作為基底 Blob 中 Delete Blob 作業的一部分。 您可以列舉與基底 Blob 相關聯的快照集,以追蹤目前的快照集。

當您建立 Blob 的快照集時,Blob 的系統屬性都會使用相同值複製到快照集中。 基底 blob 的中繼資料也會複製到快照集,除非您在建立快照集時為其指定個別的中繼資料。 建立快照集後,您可以讀取、複製或刪除,但無法加以修改。

任何與基底 Blob 相關聯的租用不會影響快照集。 您無法取得快照集上的租用。

您可以在經常性存取層或非經常性存取層中建立 Blob 的快照集。 封存層中的 Blob 快照集不受支援。

VHD 檔案是用來儲存 VM 磁碟目前的資訊和狀態。 您可以從 VM 內卸離磁碟或關閉 VM,然後製作其 VHD 檔案的快照集。 稍後您可以使用快照集檔案來擷取該時間點的 VHD 檔案,並重新建立 VM。

定價和帳務

建立快照集 (即 Blob 的唯讀複本) 可能會為您的帳戶產生額外的資料儲存體費用。 設計您的應用程式時,請務必留意可能產生這些費用的方式,以便將成本降至最低。

Blob 快照集 (例如 Blob 版本) 的計費採用與作用中資料相同的費率。 快照集的計費方式取決於您是否已明確設定基底 Blob 的階層或其任何快照集 (或版本) 的階層。 如需 Blob 階層的詳細資訊,請參閱 Blob 資料的存取層 (部分機器翻譯)。

如果您未變更 Blob 或快照集的階層,則需為整個 Blob 中的唯一資料區塊、其快照集,及其可能具有的任何版本支付費用。 如需詳細資訊,請參閱未明確設定 Blob 階層時的計費方式 (部分機器翻譯)。

如果您已變更 Blob 或快照集的階層,則不論 Blob 和快照集最終是否又會在相同階層中,都會針對整個物件計費。 如需詳細資訊,請參閱已明確設定 Blob 階層時的計費方式

若要進一步了解 Blob 版本的計費詳細資料,請參閱 Blob 版本設定

透過管理快照集將成本降到最低

Microsoft 建議您謹慎管理快照集,以避免產生額外費用。 您可以遵循以下最佳做法,協助您將快照集儲存體產生的成本降到最低︰

  • 每當您更新 Blob 時,請刪除並重新建立與該 Blob 相關聯的快照集,即使您正以相同資料進行更新亦然,除非您的應用程式設計為需要維護快照集。 藉由刪除並重新建立 Blob 的快照集,您可以確保該 Blob 和快照集不會分離。
  • 如果您要維護 Blob 的快照集,請避免在更新 Blob 時呼叫會覆寫整個 Blob 的方法。 而請盡可能更新最少的區塊,以維持低成本。

未明確設定 Blob 階層時的計費方式

如果您未明確設定基底 Blob 的 Blob 階層或其任何快照集,您需為整個 Blob 中的唯一區塊或頁面、其快照集及其可能具有的任何版本支付費用。 在 Blob 和其快照集之間共用的資料只需支付一次費用。 更新 blob 時,基底 Blob 中的資料會從其快照集中儲存的資料分出,而會對唯一的資料會依每個區塊或頁面進行收費。

當您取代區塊 Blob 內的某個區塊時,該區塊稍後會以唯一區塊的形式計費。 即使該區塊的區塊識別碼和資料與其在快照集中擁有的相同,也是如此。 再次認可該區塊之後,它就會與其在該快照集中的對應項目分離,而您將需支付其資料的費用。 這同樣適用分頁 Blob 中以相同資料更新的頁面。

Blob 儲存體沒有方法可判斷兩個區塊是否包含相同資料。 已上傳且認可的每個區塊都會被視為唯一,即使它具有相同資料和相同的區塊識別碼也一樣。 由於唯一的區塊會產生費用,請務必記住,更新含有快照集和版本的 Blob 將會產生額外的唯一區塊和額外的費用。

Blob 含有快照集時,請對區塊 Blob 呼叫更新作業,使其盡可能更新較少的區塊。 允許對區塊進行精細控制的寫入作業,是放置區塊放置區塊清單Put Blob 作業則會取代 Blob 的整體內容,因此可能會產生額外的費用。

下列案例示範在未明確設定 Blob 階層時,區塊 Blob 及其快照集如何產生費用。

實例 1

在情節 1 中,基底 Blob 在擷取快照之後尚未更新,因此只會針對唯一區塊 1、2 和 3 產生費用。

圖表 1 顯示基底 Blob 和快照集中唯一區塊的計費。

案例 2

在情節 2 中,基底 Blob 已更新,但快照集並未更新。 區塊 3 已更新,而且即使它包含相同資料及相同的識別碼,它還是與快照集中的區塊 3 不一樣。 因此,此帳戶必須支付四個區塊的費用。

圖表 2 顯示基底 Blob 和快照集中唯一區塊的計費。

案例 3

在情節 3 中,基底 Blob 已更新,但快照集並未更新。 區塊 3 已使用基底 Blob 中的區塊 4 來取代,但快照集仍然反映區塊 3。 因此,此帳戶必須支付四個區塊的費用。

圖表 3 顯示基底 Blob 和快照集中唯一區塊的計費。

案例 4

在案例 4 中,基底 Blob 已完全更新,且未包含它的任何原始區塊。 因此,此帳戶必須支付所有八個唯一區塊的費用。

圖表 4 顯示基底 Blob 和快照集中唯一區塊的計費。

提示

避免呼叫覆寫整個 Blob 的方法,而是改為更新個別的區塊以維持低成本。

明確設定 Blob 階層時的計費方式

如果您已明確設定 Blob 或快照集 (或版本) 的 Blob 階層,則不論它是否與原始階層中的物件共用區塊,您都需為新階層中所含物件的完整內容長度付費。 您也必須為原始階層中最舊版本的完整內容長度付費。 任何其他保留在原始階層中的版本或快照集,會針對其可能共用的獨特區塊進行計費,如未明確設定 Blob 階層時的計費方式所述 (部分機器翻譯)。

將 Blob 移至新的階層

下表說明 Blob 或快照集移至新階層時的計費行為。

當 Blob 階層明確設定於... 您需為下列項目付費...
含有快照集的基底 Blob 新階層中的基底 Blob 和原始層中最舊的快照集,再加上其他快照集中任何唯一區塊。1
含有舊版和快照集的基底 Blob 新階層中的基底 Blob、原始層中最舊的版本,以及原始層中最舊的快照集,再加上其他版本或快照中任何唯一區塊。1
快照集 新階層中的快照集和原始層中最舊的基底 Blob,再加上其他快照集中任何的唯一區塊。1

1如果有尚未從原始階層移動的其他舊版或快照集,這些版本或快照集將會根據其包含的獨特區塊數目進行計費,如未明確設定 Blob 階層時的計費方式所述 (部分機器翻譯)。

下圖說明當含有快照集的 Blob 移至不同的階層時,會如何對物件計費。

此圖顯示當具有快照集的 Blob 明確分層時,如何計費物件。

明確設定 Blob 階層、版本或快照集後,作業無法復原。 如果您將 Blob 移至新階層,然後再將其移回原始階層,則需為物件的完整內容長度付費,即使該物件與原始階層中的其他物件共用區塊亦然。

明確設定 Blob、版本或快照集階層的作業包括:

在虛刪除啟用時刪除 Blob

啟用 Blob 虛刪除後,如果您刪除或覆寫已明確設定階層的基底 Blob,則任何舊版的虛刪除 Blob 或其先前的快照集都會以完整內容長度計費。 如需 Blob 版本設定和虛刪除如何搭配運作的詳細資訊,請參閱 Blob 版本設定和虛刪除

針對已虛刪除的 Blob,下表描述其計費行為,該行為會根據是否已啟用或停用版本設定來進行。 啟用版本設定時,虛刪除 Blob 會建立新的版本。 停用版本設定時,虛刪除 Blob 會建立虛刪除快照集。

當您覆寫基底 Blob,且有明確設定其層級時... 您需為下列項目付費...
如果同時啟用 Blob 虛刪除和版本設定 所有內容長度完整的現有版本 (不論層級為何)。
如果啟用了 Blob 虛刪除卻停用版本設定 所有內容長度完整的現有虛刪除快照集 (不論層級為何)。

功能支援

啟用 Data Lake Storage Gen2、網路檔案系統 (NFS) 3.0 通訊協定,或 SSH 檔案傳輸通訊協定 (SFTP),可能會影響到此功能的支援。 如果您已啟用上述任何功能,請參閱 Azure 儲存體帳戶中的 Blob 儲存體功能支援,以評估此功能的支援。

下一步