Skip to content

Commit e14fe42

Browse files
authored
Merge pull request #190080 from tamram/tamram22-0228
blob archive & rehydration - incorporate final feedback
2 parents da312f9 + 6b7a546 commit e14fe42

8 files changed

+117
-21
lines changed

articles/storage/blobs/access-tiers-overview.md

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -37,11 +37,13 @@ Usage scenarios for the Cool access tier include:
3737
- Older data sets that are not used frequently, but are expected to be available for immediate access.
3838
- Large data sets that need to be stored in a cost-effective way while additional data is being gathered for processing.
3939

40+
To learn how to move a blob to the Hot or Cool tier, see [Set a blob's access tier](access-tiers-online-manage.md).
41+
4042
Data in the Cool tier has slightly lower availability, but offers the same high durability, retrieval latency, and throughput characteristics as the Hot tier. For data in the Cool tier, slightly lower availability and higher access costs may be acceptable trade-offs for lower overall storage costs, as compared to the Hot tier. For more information, see [SLA for storage](https://azure.microsoft.com/support/legal/sla/storage/v1_5/).
4143

4244
A blob in the Cool tier in a general-purpose v2 accounts is subject to an early deletion penalty if it is deleted or moved to a different tier before 30 days has elapsed. This charge is prorated. For example, if a blob is moved to the Cool tier and then deleted after 21 days, you'll be charged an early deletion fee equivalent to 9 (30 minus 21) days of storing that blob in the Cool tier.
4345

44-
The Hot and Cool tiers support all redundancy configurations. For more information about data redundancy options in Azure Storage, see [Azure Storage redundancy](../common/storage-redundancy.md).
46+
The Hot and Cool tiers support all redundancy configurations. For more information about data redundancy options in Azure Storage, see [Azure Storage redundancy](../common/storage-redundancy.md).
4547

4648
## Archive access tier
4749

@@ -51,6 +53,8 @@ The Archive tier is an offline tier for storing data that is rarely accessed. Th
5153
- Original (raw) data that must be preserved, even after it has been processed into final usable form
5254
- Compliance and archival data that needs to be stored for a long time and is hardly ever accessed
5355

56+
To learn how to move a blob to the Archive tier, see [Archive a blob](archive-blob.md).
57+
5458
Data must remain in the Archive tier for at least 180 days or be subject to an early deletion charge. For example, if a blob is moved to the Archive tier and then deleted or moved to the Hot tier after 45 days, you'll be charged an early deletion fee equivalent to 135 (180 minus 45) days of storing that blob in the Archive tier.
5559

5660
While a blob is in the Archive tier, it can't be read or modified. To read or download a blob in the Archive tier, you must first rehydrate it to an online tier, either Hot or Cool. Data in the Archive tier can take up to 15 hours to rehydrate, depending on the priority you specify for the rehydration operation. For more information about blob rehydration, see [Overview of blob rehydration from the Archive tier](archive-rehydrate-overview.md).
@@ -202,6 +206,6 @@ For information about feature support by region, see [Azure products available b
202206

203207
## Next steps
204208

205-
- [How to manage the tier of a blob in an Azure Storage account](manage-access-tier.md)
206-
- [How to manage the default account access tier of an Azure Storage account](../common/manage-account-default-access-tier.md)
207-
- [Optimize costs by automating Azure Blob Storage access tiers](./lifecycle-management-overview.md)
209+
- [Set a blob's access tier](access-tiers-online-manage.md)
210+
- [Archive a blob](archive-blob.md)
211+
- [Optimize costs by automatically managing the data lifecycle](lifecycle-management-overview.md)

articles/storage/blobs/archive-blob.md

Lines changed: 97 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ author: tamram
77

88
ms.service: storage
99
ms.topic: how-to
10-
ms.date: 10/25/2021
10+
ms.date: 03/01/2022
1111
ms.author: tamram
1212
ms.reviewer: fryu
1313
ms.subservice: blobs
@@ -94,6 +94,16 @@ az storage blob upload-batch \
9494
--auth-mode login
9595
```
9696

97+
### [AzCopy](#tab/azcopy)
98+
99+
To archive a single blob on upload with AzCopy, call the [azcopy copy](../common/storage-ref-azcopy-copy.md) command. Provide a local file as the source and the target blob URI as the destination, and specify the Archive tier as the target tier, as shown in the following example. Remember to replace the placeholder values in brackets with your own values:
100+
101+
```azcopy
102+
azcopy copy "C:\temp\myTextFile.txt" "https://<storage-account>.blob.core.windows.net/<container>/myTextFile-archived.txt" --blob-type BlockBlob --block-blob-tier Archive
103+
```
104+
105+
For additional examples, see [Upload files to Azure Blob storage by using AzCopy](../common/storage-use-azcopy-blobs-upload.md).
106+
97107
---
98108

99109
## Archive an existing blob
@@ -158,6 +168,10 @@ az storage blob set-tier \
158168
--auth-mode login
159169
```
160170

171+
### [AzCopy](#tab/azcopy)
172+
173+
N/A
174+
161175
---
162176

163177
### Archive an existing blob with a copy operation
@@ -172,7 +186,7 @@ N/A
172186

173187
#### [PowerShell](#tab/azure-powershell)
174188

175-
To copy an blob from an online tier to the Archive tier with PowerShell, call the [Start-AzStorageBlobCopy](/powershell/module/az.storage/start-azstorageblobcopy) command and specify the Archive tier. Remember to replace placeholders in angle brackets with your own values:
189+
To copy a blob from an online tier to the Archive tier with PowerShell, call the [Start-AzStorageBlobCopy](/powershell/module/az.storage/start-azstorageblobcopy) command and specify the Archive tier. Remember to replace placeholders in angle brackets with your own values:
176190

177191
```azurepowershell
178192
# Initialize these variables with your values.
@@ -188,7 +202,7 @@ $ctx = (Get-AzStorageAccount `
188202
-ResourceGroupName $rgName `
189203
-Name $accountName).Context
190204
191-
# Copy the source blob to a new destination blob in Hot tier with Standard priority.
205+
# Copy the source blob to a new destination blob in Archive tier.
192206
Start-AzStorageBlobCopy -SrcContainer $srcContainerName `
193207
-SrcBlob $srcBlobName `
194208
-DestContainer $destContainerName `
@@ -199,7 +213,7 @@ Start-AzStorageBlobCopy -SrcContainer $srcContainerName `
199213

200214
#### [Azure CLI](#tab/azure-cli)
201215

202-
To copy an blob from an online tier to the Archive tier with Azure CLI, call the [az storage blob copy start](/cli/azure/storage/blob/copy#az_storage_blob_copy_start) command and specify the Archive tier. Remember to replace placeholders in angle brackets with your own values:
216+
To copy a blob from an online tier to the Archive tier with Azure CLI, call the [az storage blob copy start](/cli/azure/storage/blob/copy#az_storage_blob_copy_start) command and specify the Archive tier. Remember to replace placeholders in angle brackets with your own values:
203217

204218
```azurecli
205219
az storage blob copy start \
@@ -212,6 +226,18 @@ az storage blob copy start \
212226
--auth-mode login
213227
```
214228

229+
#### [AzCopy](#tab/azcopy)
230+
231+
To copy a blob from an online tier to the Archive tier with AzCopy, specify the URI for the source blob and the URI for the destination blob. The destination blob should have a different name from the source blob, and should not already exist.
232+
233+
When the copy source is a blob, you must provide an account SAS token on the source blob. If you are using Azure Active Directory (Azure AD) to authorize the copy operation, then the SAS is required only on the source blob, as shown in the following example. If you are using the account access key to authorize the copy operation, then you must provide a SAS token on both the source and destination blobs. For more information, see [Copy blobs between Azure storage accounts by using AzCopy](../common/storage-use-azcopy-blobs-copy.md).
234+
235+
Remember to replace placeholders in angle brackets with your own values:
236+
237+
```azcopy
238+
azcopy copy "https://<source-account>.blob.core.windows.net/sample-container/blob1.txt?sv=2020-08-04&ss=b&srt=sco&sp=r&se=2022-03-02T05:21:32Z&st=2022-03-01T21:21:32Z&spr=https&sig=<signature>" "https://<dest-account>.blob.core.windows.net/sample-container/blob1-archived.txt" --blob-type BlockBlob --block-blob-tier Archive
239+
```
240+
215241
---
216242

217243
## Bulk archive
@@ -224,6 +250,73 @@ To archive blobs with a batch operation, use one of the Azure Storage client lib
224250

225251
For an in-depth sample application that shows how to change tiers with a batch operation, see [AzBulkSetBlobTier](/samples/azure/azbulksetblobtier/azbulksetblobtier/).
226252

253+
## Use lifecycle management policies to archive blobs
254+
255+
You can optimize costs for blob data that is rarely accessed by creating lifecycle management policies that automatically move blobs to the Archive tier when they have not been accessed or modified for a specified period of time. After you configure a lifecycle management policy, Azure Storage runs it once per day. For more information about lifecycle management policies, see [Optimize costs by automatically managing the data lifecycle](lifecycle-management-overview.md).
256+
257+
You can use the Azure portal, PowerShell, Azure CLI, or an Azure Resource Manager template to create a lifecycle management policy. For simplicity, this section shows how to create a lifecycle management policy in the Azure portal only. For additional examples showing how to create lifecycle management policies, see [Configure a lifecycle management policy](lifecycle-management-policy-configure.md).
258+
259+
> [!CAUTION]
260+
> Before you use a lifecycle management policy to move data to the Archive tier, verify that that data does not need to be deleted or moved to another tier for at least 180 days. Data that is deleted or moved to a different tier before the 180 day period has elapsed is subject to an early deletion fee.
261+
>
262+
> Also keep in mind that data in the Archive tier must be rehydrated before it can be read or modified. Rehydrating a blob from the Archive tier can take several hours and has associated costs.
263+
264+
To create a lifecycle management policy to archive blobs in the Azure portal, follow these steps:
265+
266+
1. Navigate to your storage account in the portal.
267+
1. Under **Data management**, locate the **Lifecycle management** settings.
268+
1. Select the **Add a rule** button.
269+
1. On the **Details** tab, specify a name for your rule.
270+
1. Specify the rule scope: either **Apply rule to all blobs in your storage account**, or **Limit blobs with filters**.
271+
1. Select the types of blobs for which the rule is to be applied, and specify whether to include blob snapshots or versions.
272+
273+
:::image type="content" source="media/archive-blob/lifecycle-policy-details-tab-portal.png" alt-text="Screenshot showing how to configure a lifecycle management policy - Details tab.":::
274+
275+
1. Depending on your selections, you can configure rules for base blobs (current versions), previous versions, or blob snapshots. Specify one of two conditions to check for:
276+
277+
- Objects were last modified some number of days ago.
278+
- Objects were last accessed some number of days ago.
279+
280+
Only one of these conditions can be applied to move a particular type of object to the Archive tier per rule. For example, if you define an action that archives base blobs if they have not been modified for 90 days, then you cannot also define an action that archives base blobs if they have not been accessed for 90 days. Similarly, you can define one action per rule with either of these conditions to archive previous versions, and one to archive snapshots.
281+
282+
1. Next, specify the number of days to elapse after the object is modified or accessed.
283+
1. Specify that the object is to be moved to the Archive tier after the interval has elapsed.
284+
285+
:::image type="content" source="media/archive-blob/lifecycle-policy-base-blobs-tab-portal.png" alt-text="Screenshot showing how to configure a lifecycle management policy - Base blob tab.":::
286+
287+
1. If you chose to limit the blobs affected by the rule with filters, you can specify a filter, either with a blob prefix or blob index match.
288+
1. Select the **Add** button to add the rule to the policy.
289+
290+
After you create the lifecycle management policy, you can view the JSON for the policy on the **Lifecycle management** page by switching from **List view** to **Code view**.
291+
292+
Here's the JSON for the simple lifecycle management policy created in the images shown above:
293+
294+
```json
295+
{
296+
"rules": [
297+
{
298+
"enabled": true,
299+
"name": "sample-archive-rule",
300+
"type": "Lifecycle",
301+
"definition": {
302+
"actions": {
303+
"baseBlob": {
304+
"tierToArchive": {
305+
"daysAfterLastAccessTimeGreaterThan": 90
306+
}
307+
}
308+
},
309+
"filters": {
310+
"blobTypes": [
311+
"blockBlob"
312+
]
313+
}
314+
}
315+
}
316+
]
317+
}
318+
```
319+
227320
## See also
228321

229322
- [Hot, Cool, and Archive access tiers for blob data](access-tiers-overview.md)

articles/storage/blobs/archive-rehydrate-handle-event.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ author: tamram
77

88
ms.service: storage
99
ms.topic: how-to
10-
ms.date: 10/25/2021
10+
ms.date: 02/28/2022
1111
ms.author: tamram
1212
ms.reviewer: fryu
1313
ms.subservice: blobs
@@ -26,7 +26,7 @@ For more information about rehydrating blobs from the Archive tier, see [Overvie
2626

2727
## Prerequisites
2828

29-
This article shows you how to use [Visual Studio 2019](https://visualstudio.microsoft.com/vs/) to develop an Azure Function with .NET. You can install Visual Studio Community for free. Make sure that you [configure Visual Studio for Azure Development with .NET](/dotnet/azure/configure-visual-studio).
29+
This article shows you how to use [Visual Studio 2019](https://visualstudio.microsoft.com/vs/) or later to develop an Azure Function with .NET. You can install Visual Studio Community for free. Make sure that you [configure Visual Studio for Azure Development with .NET](/dotnet/azure/configure-visual-studio).
3030

3131
To debug the Azure Function locally, you will need to use a tool that can send an HTTP request, such as Postman.
3232

articles/storage/blobs/archive-rehydrate-overview.md

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ services: storage
55
author: tamram
66

77
ms.author: tamram
8-
ms.date: 10/25/2021
8+
ms.date: 03/01/2022
99
ms.service: storage
1010
ms.subservice: blobs
1111
ms.topic: conceptual
@@ -18,13 +18,11 @@ While a blob is in the Archive access tier, it's considered to be offline and ca
1818

1919
- [Copy an archived blob to an online tier](#copy-an-archived-blob-to-an-online-tier): You can rehydrate an archived blob by copying it to a new blob in the Hot or Cool tier with the [Copy Blob](/rest/api/storageservices/copy-blob) operation. Microsoft recommends this option for most scenarios.
2020

21-
- [Change a blob's access tier to an online tier](#change-a-blobs-access-tier-to-an-online-tier): You can rehydrate an archived blob to the Hot or Cool tier by changing its tier using the [Set Blob Tier](/rest/api/storageservices/set-blob-tier) operation.
21+
- [Change an archived blob's access tier to an online tier](#change-a-blobs-access-tier-to-an-online-tier): You can rehydrate an archived blob to the Hot or Cool tier by changing its tier using the [Set Blob Tier](/rest/api/storageservices/set-blob-tier) operation.
2222

23-
Rehydrating a blob from the Archive tier can take several hours to complete. Microsoft recommends rehydrating larger blobs for optimal performance. Rehydrating several small blobs concurrently may require additional time. A maximum of 10 GiB per storage account may be rehydrated per hour.
23+
Rehydrating a blob from the Archive tier can take several hours to complete. Microsoft recommends archiving larger blobs for optimal performance when rehydrating. Rehydrating a large number of small blobs may require additional time due to the processing overhead on each blob. A maximum of 10 GiB per storage account may be rehydrated per hour with priority retrieval.
2424

25-
You can configure [Azure Event Grid](../../event-grid/overview.md) to raise an event when you rehydrate a blob from the Archive tier to an online tier and to send the event to an event handler. For more information, see [Handle an event on blob rehydration](#handle-an-event-on-blob-rehydration).
26-
27-
For more information about access tiers in Azure Storage, see [Hot, Cool, and Archive access tiers for blob data](access-tiers-overview.md).
25+
To learn how rehydrate an archived blob to an online tier, see [Rehydrate an archived blob to an online tier](archive-rehydrate-to-online-tier.md).
2826

2927
## Rehydration priority
3028

@@ -92,7 +90,7 @@ During the blob rehydration operation, you can call the [Get Blob Properties](/r
9290

9391
## Handle an event on blob rehydration
9492

95-
Rehydration of an archived blob may take up to 15 hours, and repeatedly polling **Get Blob Properties** to determine whether rehydration is complete is inefficient. Using [Azure Event Grid](../../event-grid/overview.md) to capture the event that fires when rehydration is complete offers better performance and cost optimization.
93+
Rehydration of an archived blob may take up to 15 hours, and repeatedly polling **Get Blob Properties** to determine whether rehydration is complete is inefficient. Microsoft recommends that you use [Azure Event Grid](../../event-grid/overview.md) to capture the event that fires when rehydration is complete for better performance and cost optimization.
9694

9795
Azure Event Grid raises one of the following two events on blob rehydration, depending on which operation was used to rehydrate the blob:
9896

@@ -115,7 +113,8 @@ For more information about pricing for block blobs and data rehydration, see [Az
115113

116114
## See also
117115

118-
- [Hot, Cool, and Archive access tiers for blob data](access-tiers-overview.md).
116+
- [Hot, Cool, and Archive access tiers for blob data](access-tiers-overview.md)
117+
- [Archive a blob](archive-blob.md)
119118
- [Rehydrate an archived blob to an online tier](archive-rehydrate-to-online-tier.md)
120119
- [Run an Azure Function in response to a blob rehydration event](archive-rehydrate-handle-event.md)
121120
- [Reacting to Blob storage events](storage-blob-event-overview.md)

articles/storage/blobs/archive-rehydrate-to-online-tier.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ author: tamram
77

88
ms.service: storage
99
ms.topic: how-to
10-
ms.date: 11/01/2021
10+
ms.date: 03/01/2022
1111
ms.author: tamram
1212
ms.reviewer: fryu
1313
ms.custom: devx-track-azurepowershell
36.1 KB
Loading
32.3 KB
Loading

articles/storage/common/storage-disaster-recovery-guidance.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ author: tamram
77

88
ms.service: storage
99
ms.topic: conceptual
10-
ms.date: 12/30/2021
10+
ms.date: 03/01/2022
1111
ms.author: tamram
1212
ms.subservice: common
1313
---
@@ -130,7 +130,7 @@ Storage accounts containing archived blobs support account failover. After failo
130130

131131
### Storage resource provider
132132

133-
Microsoft provides two REST APIs for working with Azure Storage resources. These APIs form the basis of all actions you can perform against Azure Storage. The Azure Storage REST API enables you to work with data in your storage account, including blob, queue, file, and table data. The Azure Storage resource provider REST API enables you to work with the storage account and related resources. Management operations pertain to operations that will try and talk to the Azure Storage Resource Provider.
133+
Microsoft provides two REST APIs for working with Azure Storage resources. These APIs form the basis of all actions you can perform against Azure Storage. The Azure Storage REST API enables you to work with data in your storage account, including blob, queue, file, and table data. The Azure Storage resource provider REST API enables you to manage the storage account and related resources.
134134

135135
After a failover is complete, clients can again read and write Azure Storage data in the new primary region. However, the Azure Storage resource provider does not fail over, so resource management operations must still take place in the primary region. If the primary region is unavailable, you will not be able to perform management operations on the storage account.
136136

0 commit comments

Comments
 (0)