Last updated: May 2026
Azure Storage Beginner AZ-104 ⏱ 14 min read

Azure Blob Storage

Blob Storage is Azure's object storage service — the most widely used storage type in Azure. "Blob" stands for Binary Large Object. It can store any type of unstructured data: images, videos, PDFs, log files, backups, static websites, machine learning datasets — anything. If you need to store a file in the cloud and access it via URL, Blob Storage is the answer.

What you'll learn What blobs are · The three blob types (block, append, page) · Containers and access levels · Blob URLs and how to access them · Uploading and downloading blobs via CLI · Static website hosting · Soft delete and versioning · Real-world use cases

What is Blob Storage?

Azure Blob Storage is an object storage service — it stores files as objects (blobs) in containers. Unlike a file system (which organises files in folders), Blob Storage is flat — there are no real folders, just containers with blobs inside. You can simulate folder structure using "/" in blob names (e.g., images/2026/photo.jpg), but these are just naming conventions.

ℹ️
Hierarchy Storage Account → Container → Blob
Example: mystorageaccountimageslogo.png
URL: https://mystorageaccount.blob.core.windows.net/images/logo.png

The Three Blob Types

Azure Blob Storage supports three types of blobs — each optimised for different use cases:

Block Blobs

The most common type. Used for storing text and binary data — documents, images, videos, backups. Block blobs are made up of blocks of data that can be managed individually. Maximum size: 190.7 TB.

Append Blobs

Optimised for append operations — adding data to the end of the blob. Perfect for logging, where you continuously write new log entries. You cannot modify existing content — only append. Maximum size: 195 GB.

Page Blobs

Optimised for random read/write operations. Historically used for Azure VM disks (VHD files). Maximum size: 8 TB. For new workloads, use Managed Disks instead of page blobs.

TypeOptimised ForMax SizeUse Case
Block BlobLarge data storage and retrieval190.7 TBFiles, images, videos, backups
Append BlobAppend-only operations195 GBLog files, audit trails
Page BlobRandom read/write8 TBLegacy VM disks (use Managed Disks)

Containers

Blobs are organised into containers — similar to folders or buckets. Every blob must be in a container. A storage account can have unlimited containers.

Azure CLI Create a container
# Create a container
az storage container create \
  --name images \
  --account-name mystorageaccount2026 \
  --auth-mode login

# List containers
az storage container list \
  --account-name mystorageaccount2026 \
  --output table \
  --auth-mode login

Container Naming Rules

  • 3–63 characters
  • Lowercase letters, numbers, and hyphens only
  • Must start with a letter or number
  • Cannot have consecutive hyphens

Container Access Levels

Every container has an access level that controls who can read blobs without authentication:

Access LevelWho Can ReadUse For
Private (default)Only authorised users with credentialsSensitive data, private files
BlobAnyone with the blob URLPublic files — images, documents
ContainerAnyone can list and read all blobsPublic datasets, open repositories
⚠️
Default to Private Always use Private access unless there is a specific reason for public access. Public blob access has been disabled by default on new storage accounts since 2021 — you must explicitly enable it at the account level before setting container access to Blob or Container.

Blob URLs

Every blob has a unique URL. The format is:

Format Blob URL structure
https://[storageaccount].blob.core.windows.net/[container]/[blobname]

# Example:
https://mystorageaccount2026.blob.core.windows.net/images/logo.png
https://mystorageaccount2026.blob.core.windows.net/backups/db-backup-2026-05-07.bak

If the container is public (Blob access level), anyone can access the blob via this URL directly in a browser. If private, you need authentication credentials or a SAS token.

Uploading and Downloading Blobs

Azure CLI Upload and download blobs
# Upload a file
az storage blob upload \
  --account-name mystorageaccount2026 \
  --container-name images \
  --name logo.png \
  --file ./logo.png \
  --auth-mode login

# Upload entire folder
az storage blob upload-batch \
  --account-name mystorageaccount2026 \
  --destination images \
  --source ./my-images/ \
  --auth-mode login

# Download a blob
az storage blob download \
  --account-name mystorageaccount2026 \
  --container-name images \
  --name logo.png \
  --file ./downloaded-logo.png \
  --auth-mode login

# List blobs in a container
az storage blob list \
  --account-name mystorageaccount2026 \
  --container-name images \
  --output table \
  --auth-mode login

# Delete a blob
az storage blob delete \
  --account-name mystorageaccount2026 \
  --container-name images \
  --name logo.png \
  --auth-mode login

Static Website Hosting

Blob Storage can host static websites directly — HTML, CSS, JavaScript, images — with no server required. Perfect for React, Vue, or any static site.

Azure CLI Enable static website hosting
# Enable static website
az storage blob service-properties update \
  --account-name mystorageaccount2026 \
  --static-website \
  --index-document index.html \
  --404-document 404.html \
  --auth-mode login

# Upload your website files
az storage blob upload-batch \
  --account-name mystorageaccount2026 \
  --destination '$web' \
  --source ./dist/ \
  --auth-mode login

Your site is then accessible at: https://[accountname].z13.web.core.windows.net

💡
RedKiteCloud uses this! This very website is hosted using Azure Static Web Apps — which is built on top of Azure Blob Storage for static content. It's one of the most common and cost-effective ways to host a website.

Soft Delete and Versioning

Two features that protect against accidental deletion or modification:

Blob Soft Delete

When enabled, deleted blobs are retained for a configurable retention period (1–365 days) before being permanently removed. You can restore accidentally deleted blobs within this window.

Blob Versioning

Automatically saves previous versions of a blob every time it's modified. You can restore any previous version. Ideal for important documents that are updated frequently.

Real-World Use Cases

Use CaseBlob TypeAccess Level
Website images and assetsBlock BlobBlob (public)
Application log filesAppend BlobPrivate
VM backup filesBlock BlobPrivate
Machine learning training dataBlock BlobPrivate
Static website filesBlock BlobVia $web container
User-uploaded documentsBlock BlobPrivate + SAS tokens
💡
AZ-104 Exam Tip Know the three blob types and their use cases. Know the three container access levels. Know that blob public access must be enabled at the account level before containers can be made public. Know that soft delete provides a recovery window for accidentally deleted blobs.
📝 Practice Questions
Click an option to check your answer. AZ-104 style questions.
Q1. Which blob type is optimised for append-only operations like logging?
A Block Blob
B Append Blob
C Page Blob
D Archive Blob
Q2. What is the default container access level for new containers?
A Private — only authenticated users can access blobs
B Blob — anyone with the URL can read blobs
C Container — anyone can list and read all blobs
D Read-only — anyone can read but not write
Q3. What is the correct URL format to access a blob?
A https://[storageaccount].blob.core.windows.net/[container]/[blobname]
B https://[storageaccount].storage.core.windows.net/[container]/[blobname]
C https://[storageaccount].blob.azure.com/[container]/[blobname]
D https://blob.core.windows.net/[storageaccount]/[container]/[blobname]
Q4. What does enabling Blob Soft Delete protect against?
A Accidental deletion of the entire storage account
B Accidental deletion of individual blobs — allows recovery within the retention period
C Data corruption in blobs
D Accidental deletion of containers
Q5. Which blob type is used for Azure VM disks in legacy configurations?
A Block Blob
B Append Blob
C Page Blob
D Disk Blob
Comments
Disclaimer: RedKite Cloud is an independent educational resource and is not affiliated with, endorsed by, or officially connected to Microsoft Corporation. All product names, logos, and trademarks are property of their respective owners. Content is written independently for educational purposes only.