共用方式為


設定生命週期管理原則

Azure Blob 儲存體生命週期管理提供以規則為基礎的原則,可讓您用來將 Blob 資料轉換到適當的存取層,或在資料生命週期結束時使資料過期。 生命週期原則會在基底 blob 上採取動作,並選擇性地在 blob 的版本或快照集上運作。 如需生命週期管理原則的詳細資訊,請參閱透過自動管理資料生命週期將成本最佳化

生命週期管理原則是由一或多個規則所組成,可根據符合的條件定義一組要採取的動作。 對於基底 Blob,您可以選擇檢查下列其中一個條件:

  • 自 Blob 建立以來的天數。
  • 自上次修改 blob 以來的天數。
  • 自上次存取 blob 以來的天數。 若要在動作中使用此條件,您應該先視需要啟用上次存取時間追蹤

注意

修改 Blob 的任何作業 (包括 Blob 更新的中繼資料或屬性),都會變更 Blob 上次修改的時間。

當選取的條件為 true 時,管理原則會執行指定的動作。 例如,如果您已定義將 Blob 從經常性存取層移至非經常性存取層的動作 (如果 30 天未修改),則生命週期管理原則會在上次寫入該 Blob 的作業後 30 天移動該 Blob。

若是 blob 快照集或版本,所檢查的條件就是建立快照集或版本之後的天數。

注意

生命週期管理原則支援一般用途 v2、高階區塊 Blob 和 Blob 儲存體帳戶中的區塊 Blob 和附加 Blob。

選擇性地啟用存取時間追蹤

設定生命週期管理原則之前,您可以選擇啟用 blob 存取時間追蹤。 啟用存取時間追蹤時,生命週期管理原則可以包含上次以讀取或寫入作業存取 blob 的時間為基礎的動作。 為了將讀取存取延遲的影響降到最低,只有過去 24 小時的第一次讀取會更新前一次的存取時間。 在相同 24 小時期間內的後續讀取,不會更新前一次的存取時間。 如果在讀取之間修改 Blob,則上次存取時間會是兩個值中的較新值。

如果未啟用上次存取時間追蹤 (部分機器翻譯) 功能,daysAfterLastAccessTimeGreaterThan 會使用已啟用生命週期原則的日期,而不是 Blob 的 LastAccessTime 屬性。 當 LastAccessTime 屬性是 Null 值時,也會使用此日期。 如需使用上次存取時間追蹤的詳細資訊,請參閱根據上次存取時間進行資料移動

若要使用 Azure 入口網站啟用上次存取時間追蹤,請遵循下列步驟:

  1. 瀏覽至您的儲存體帳戶。

  2. 在 [資料管理] 區段中,選取 [生命週期管理]

  3. 勾選 [啟用存取追蹤] 核取方塊

    顯示如何在 Azure 入口網站中啟用上次存取追蹤的螢幕擷取畫面。

您可以使用 daysAfterLastAccessTimeGreaterThan 屬性來指定自上次存取起的天數,在此之後應該在 blob 上採取動作。

建立或管理原則

您可以使用 Azure 入口網站、PowerShell、Azure CLI 或 Azure Resource Manager 範本來新增、編輯或移除生命週期管理原則。

有兩種方式可透過 Azure 入口網站新增原則。

清單檢視

  1. 在 Azure 入口網站中,瀏覽至您的儲存體帳戶。

  2. 在 [資料管理] 下,選取 [生命週期管理] 以檢視或變更生命週期管理原則。

  3. 選取 [清單檢視] 索引標籤。

  4. 選取 [新增規則],然後在 [詳細資料] 表單上命名您的規則。 您也可以設定 [規則範圍]、[Blob 類型] 和 [Blob 子類型] 值。 下列範例會將範圍設定為篩選 Blob。 這會導致新增 [篩選設定] 索引標籤。

Azure 入口網站中的生命週期管理 [新增規則詳細資料] 頁面

  1. 選取 [基底 Blob] 以設定您規則的條件。 在下列範例中,如果 Blob 尚未修改 30 天,則會移至非經常性存取儲存體。

Azure 入口網站中的生命週期管理 [基底 Blob] 頁面

只有在您啟用存取時間追蹤,且選取 [區塊 Blob] 作為 Blob 類型時,才能使用 [上次存取時間] 選項。 若要了解如何啟用存取追蹤,請參閱選擇性啟用存取時間追蹤

  1. 如果您在 [詳細資料] 頁面上選取 [使用篩選限制 Blob],請選取 [篩選設定] 以新增選擇性篩選。 下列範例會在名為 sample-container 的容器中,針對名稱開頭為 log 的 Blob 進行篩選。

Azure 入口網站中的生命週期管理 [篩選設定] 頁面

  1. 選取 [新增] 以新增原則。

請注意,在刪除與該 Blob 相關聯的任何舊版本或快照集之前,生命週期管理原則不會刪除 Blob 的目前版本。 如果儲存體帳戶中的 Blob 有舊版本或快照集,則在原則中指定刪除動作時,您應該選取 [Blob 子類型] 區段中的 [基底 Blob]、[快照集] 和 [版本]

程式碼檢視

  1. 在 Azure 入口網站中,瀏覽至您的儲存體帳戶。
  2. 在 [資料管理] 下,選取 [生命週期管理] 以檢視或變更生命週期管理原則。
  3. 選取 [程式碼檢視] 索引標籤。在此索引標籤中,您可以在 JSON 中定義生命週期管理原則。

下列範例 JSON 會定義一個生命週期原則,將名稱開頭為 log 的區塊 blob 移至非經常性存取層 (如果自從修改 blob 以來超過 30 天)。

{
  "rules": [
    {
      "enabled": true,
      "name": "move-to-cool",
      "type": "Lifecycle",
      "definition": {
        "actions": {
          "baseBlob": {
            "tierToCool": {
              "daysAfterModificationGreaterThan": 30
            }
          }
        },
        "filters": {
          "blobTypes": [
            "blockBlob"
          ],
          "prefixMatch": [
            "sample-container/log"
          ]
        }
      }
    }
  ]
}

另請參閱