Search Tutorials


AZ-305 - Design a Data Archiving Strategy | JavaInUse

AZ-305 - Design a Data Archiving Strategy

1. Storage Account Access Tiers Overview

Azure Blob Storage provides access tiers that allow you to optimize storage costs based on how frequently data is accessed. Each tier offers a different balance between storage cost and access cost. Choosing the correct tier is essential for a cost-effective archiving strategy.

The Cost Trade-Off

As you move from Hot to Archive, storage costs decrease but access and transaction costs increase. The Hot tier charges the most for storage but the least for access. The Archive tier charges the least for storage but the most for access and requires rehydration before data can be read.

Access Tier Types

Azure Blob Storage supports four access tiers:

  • Hot: Optimized for data that is accessed frequently. Highest storage cost, lowest access cost.
  • Cool: Optimized for data that is accessed infrequently and stored for at least 30 days. Lower storage cost, higher access cost than Hot.
  • Cold: Optimized for data that is rarely accessed and stored for at least 90 days. Lower storage cost than Cool, higher access cost.
  • Archive: Optimized for data that can tolerate several hours of retrieval latency and is stored for at least 180 days. Lowest storage cost, highest access cost, offline storage requiring rehydration.

2. Access Tier Requirements and Use Cases

When to Use Each Tier

Access TierUse CaseMinimum RetentionAccess Pattern
HotActive application data, frequently read/writtenNoneFrequent reads and writes
CoolShort-term backups, disaster recovery data, older content still occasionally accessed30 daysInfrequent access
ColdQuarterly reports, compliance data accessed rarely90 daysRare access
ArchiveLong-term backups, regulatory archives, historical data180 daysNear-zero access

Early Deletion Penalties

If you delete or move a blob from Cool, Cold, or Archive tier before the minimum retention period, you are charged an early deletion fee. For Cool tier, the penalty applies if the blob is deleted within 30 days. For Cold tier, 90 days. For Archive tier, 180 days. Always factor early deletion penalties into your archiving strategy.

Setting Access Tiers

Access tiers can be set at two levels:

  • Account level: The default access tier for the storage account (Hot or Cool only). All blobs inherit this tier unless set individually.
  • Blob level: Individual blobs can be set to Hot, Cool, Cold, or Archive regardless of the account default. This provides fine-grained control.

The Archive tier is only available at the blob level. You cannot set Archive as the default account-level tier.

3. Lifecycle Management Policies

What Are Lifecycle Management Policies?

Lifecycle management policies automate the transition of blobs between access tiers and the deletion of expired blobs. Policies are defined as a set of rules, each containing a filter (which blobs to target) and an action set (what to do with matching blobs).

Lifecycle Policy Actions

Each lifecycle rule can perform one or more of the following actions based on the number of days since the blob was last modified or last accessed:

tierToCool - Move to Cool tier

tierToCold - Move to Cold tier

tierToArchive - Move to Archive tier

delete - Delete the blob

Actions are evaluated once per day by the storage service.

Example Policy Logic

Rule: "archiveOldLogs"
Filter: blobTypes = blockBlob, prefixMatch = "logs/"
Actions:
  - If last modified more than 30 days ago: move to Cool
  - If last modified more than 90 days ago: move to Cold
  - If last modified more than 180 days ago: move to Archive
  - If last modified more than 365 days ago: delete

Last Access Time Tracking

Lifecycle policies can use last access time as a condition if the Last Access Time Tracking feature is enabled on the storage account. This allows policies to tier blobs based on when they were last read rather than when they were last modified. This is useful for workloads where modification date does not accurately reflect usage patterns.

4. Access Tier SLAs

Availability SLAs by Tier

The availability SLA varies by access tier and redundancy type. Hot tier provides the highest read availability, while Archive tier has no availability SLA because data must be rehydrated before access.

Access TierRead Availability (LRS/GRS)Read Availability (RA-GRS/RA-GZRS)
Hot99.9%99.99%
Cool99%99.9%
Cold99%99.9%
ArchiveOffline (no SLA)Offline (no SLA)

SLA Implications

Cool and Cold tiers have lower availability SLAs than Hot tier. If your application requires high read availability, keep actively used data in the Hot tier. The Archive tier is offline: blobs in this tier cannot be read or modified until they are rehydrated to an online tier.

5. Rehydration from Archive Tier

Rehydration Process

Blobs stored in the Archive tier are offline and cannot be read directly. To access archived data, you must rehydrate the blob by changing its tier to Hot, Cool, or Cold. There are two rehydration priorities:

  • Standard priority: Rehydration may take up to 15 hours. This is the default and less expensive option.
  • High priority: Rehydration typically completes in under 1 hour for objects under 10 GB. This costs more but provides faster access. High-priority requests are prioritized over standard requests.

Rehydration Methods

There are two ways to rehydrate an archived blob:

Change tier directly: Use the Set Blob Tier operation to move the blob from Archive to Hot, Cool, or Cold. The source blob remains in Archive until rehydration completes, at which point it moves to the target tier.

Copy to a new blob: Use the Copy Blob operation to create a copy of the archived blob in an online tier. The source blob remains in Archive and the copy is created in the target tier. This is useful when you want to keep the original in Archive.

Monitoring Rehydration

While rehydration is in progress, the blob tier shows as Archive and the "Archive Status" property shows "rehydrate-pending-to-hot," "rehydrate-pending-to-cool," or "rehydrate-pending-to-cold." You can monitor this property to determine when rehydration is complete. Azure Event Grid can also notify you when rehydration finishes.

Key Terms

TermDefinition
Hot TierAccess tier optimized for frequently accessed data. Highest storage cost, lowest access cost.
Cool TierAccess tier for infrequently accessed data stored for at least 30 days. Lower storage cost than Hot.
Cold TierAccess tier for rarely accessed data stored for at least 90 days. Lower storage cost than Cool.
Archive TierOffline tier for long-term retention (180+ days). Lowest storage cost, requires rehydration for access.
Lifecycle Management PolicyRule-based automation that transitions blobs between tiers and deletes expired blobs based on age or last access time.
RehydrationProcess of moving a blob from Archive tier to an online tier (Hot, Cool, or Cold) so it can be read.
Early Deletion PenaltyFee charged when a blob is moved or deleted before the minimum retention period of its current tier (30/90/180 days).
Last Access Time TrackingStorage account feature that records when each blob was last read, enabling lifecycle policies based on access patterns.

Exam Tips

  • Archive tier is set at the blob level only; it cannot be the default account-level tier. Only Hot and Cool can be set as the default account tier.
  • The minimum retention periods are: Cool = 30 days, Cold = 90 days, Archive = 180 days. Deleting before these thresholds incurs early deletion penalties.
  • Standard rehydration takes up to 15 hours; high-priority rehydration is typically under 1 hour for objects under 10 GB. Know the time difference for exam questions.
  • Lifecycle management policies can use either last modified date or last access time as the condition trigger. Last access time tracking must be explicitly enabled.
  • The Archive tier has no availability SLA because data is stored offline. Always plan for rehydration latency when designing retrieval workflows.
  • The Copy Blob method of rehydration keeps the original blob in Archive while creating a copy in an online tier. The Set Blob Tier method transitions the blob in place.

Practice Questions

Question 1

Your company needs to store compliance audit logs for 7 years. The data is written once and almost never read. Which access tier minimizes cost?

A. Hot

B. Cool

C. Cold

D. Archive

Answer: D

Archive tier provides the lowest storage cost and is ideal for data that is stored for long periods with near-zero access. Since compliance logs are rarely read and stored for 7 years, Archive is the most cost-effective option.

Question 2

You need to automatically move blobs in the "reports/" container to Cool tier after 30 days and delete them after 365 days. What should you configure?

A. Azure Policy with a deny effect

B. Blob lifecycle management policy

C. Azure Automation runbook on a schedule

D. Azure Event Grid trigger

Answer: B

Blob lifecycle management policies automate tier transitions and deletions based on blob age or last access time. They are the built-in, recommended approach for this scenario. Azure Automation could work but adds unnecessary complexity.

Question 3

You have a blob stored in the Archive tier that must be accessed within 1 hour. Which rehydration option should you use?

A. Standard priority rehydration

B. High priority rehydration

C. Set the storage account default tier to Hot

D. Copy the blob to a different storage account

Answer: B

High priority rehydration typically completes in under 1 hour for objects under 10 GB. Standard priority can take up to 15 hours. Setting the account default tier does not rehydrate existing archived blobs.

Question 4

You delete a blob from the Cool tier after 15 days. What happens regarding billing?

A. Normal deletion, no extra charges

B. You are charged an early deletion penalty for the remaining 15 days

C. You are charged the Archive tier rate for the remaining days

D. The blob moves to Archive tier instead of being deleted

Answer: B

Cool tier has a 30-day minimum retention period. Deleting a Cool blob before 30 days incurs an early deletion fee equivalent to the storage charges for the remaining days (30 minus 15 = 15 days).

Question 5

You want lifecycle management policies to transition blobs based on when they were last read rather than when they were last modified. What must you enable first?

A. Blob versioning

B. Soft delete

C. Last access time tracking

D. Change feed

Answer: C

Last access time tracking must be explicitly enabled on the storage account before lifecycle policies can use access time as a condition. Without it, only last modified time is available as a trigger.

AZ-305 Designing Azure Infrastructure Solutions - Table of Contents

Master all exam topics with comprehensive study guides and practice questions.


Popular Posts