You dont have javascript enabled! Please enable it!

What is Azure Blob Storage? A Definitive Guide

6 Min. Read

Blob storage, a feature of Microsoft Azure, allows users to store large amounts of unstructured data that doesn’t adhere to any specific data model or definition.

In this article, we explain all there is to know about Azure blob storage.

What is Azure Blob Storage?

It is a storage service for storing Binary Large Objects (BLOB), including images and multimedia files. Personal users can store images, videos, and documents, while at an organizational level, it can be used to store backups and log files.

Blob storage can be used to:

  • Stream audio and video.
  • Store files for distributed access.
  • Write to log files.
  • Directly serve images or documents to a browser.
  • Store data for analysis by an Azure-hosted or on-premises service.
  • Store data as archives or for backup/restore and disaster recovery.

Blob Storage Structure

A blob storage service has the following components:

Storage Accounts

Creating a storage account provides a unique namespace for storing your data in Azure. The three different types of Blob storage accounts are:

  • General-purpose v2 is the standard storage for file shares, blobs, tables, and queues.
  • Block blob is the premium type for block and appends blobs.
  • Page blob is a premium account type only for page blobs.

Containers

After creating a storage account, a blob container is created inside the account. This container organizes sets of blobs and is similar to a logical directory structure that manages and maintains all of its stored blob objects.

Blob Storage | Containers
[ Source Photo Pixabay ]
The name of the container must always be in lowercase.

We can define and assign security policies to containers that will apply to all the blobs within the respective containers. There can be unlimited containers for a storage account, with each container containing unlimited blobs up to the account’s size limit (up to 500 TB).

Blobs

Files of any size and type are referred to as blobs. Accessing a container’s blob objects requires a unique endpoint address, including the storage account’s name.

Access Tiers

To optimize costs on blobs that aren’t frequently accessed, Azure provides different access tiers.

Hot Tier

The hot tier is the right choice for frequent data accesses (read, write) with low latency. This is commonly used for the optimal performance of transactional workload. It has a higher storage cost and the lowest access cost.

Cool Tier

For infrequent data access, the cool tier is better suited, with a lower storage cost and higher access cost. The minimum retention for data storage in the cool tier is 30 days.

It provides good performance and durability and is ideal for short-term backup data and other data that isn’t needed frequently yet must be accessible easily.

Archive Tier

This access tier can be set only at the blob or object level. It has the lowest storage cost and highest access cost. The data on this tier is offline and can’t be accessed immediately; it could take several hours of retrieval latency.

It is ideal for storing long-term backups and data that must be preserved but not used for long (for example, CCTV footage). The minimum duration of storage is 180 days, and reading data in the archive tier requires it to be changed to cool or hot.

Azure Blob Types

Blob storage in Azure has 3 different formats:

Block Blobs

Text, binary data, and documents are stored as blocks of data in block blobs. The earlier storage capacity of a single block blob was 4.75 TB, but these days, up to 190.7 TiB data can be stored.

Each block has a unique block ID. This blob type is suitable for large amounts of frequently accessed data that need optimal performance (audio or video streaming websites).

Append Blobs

It’s an optimized form of block blobs, the append blobs add any new data blocks at the end of existing data blobs. Each block’s ID isn’t exposed in append blobs.

With each block limited to a 4 MB capacity, the total storage capacity of append blocks is just over 195 GB.

It is an ideal storage type for logging data from VMs.

Page Blobs

This store’s random access files as 512-byte pages. It stores virtual hard drive (VHD) files that back VMs. It is also suitable for the creation of disk subsystems for Azure VMs.

The storage capacity of page blobs is 8 TB. Among the different access tiers, it supports only the hot tier.

Steps to Create a Blob Storage

Here are the high-level steps for an Azure blob storage creation from the Azure portal:

1) Log in to the Azure portal.

2) If you don’t have a storage account, create one. Identity the storage account within which you’d like to create blob storage.

3) Create a container: Under the data storage option on the left-side pane, click on Containers; the right-side pane gives the Containers view.

4) Click on the + Container option to create a container and store blobs.

Create a container
Create a container

5) A New Container window appears where you’ll need to enter the container’s name and choose the access level. By default, the public access level is set to Private (no anonymous access).

6) Click on Create to have your Azure blob container created. Clicking on the 3 dots on the right-side of a container gives multiple options for modification of its property, generating SAS, access level, and policy.

7) Select the container to upload the blob data. Next, click on the Upload button and browse the location where data has been stored.

Upload blob
Upload blob

8) Along with choosing the object to upload, you can view its access tier and blob type, which can be modified. The default access tier is set to Hot.

To create Azure blob storage using PowerShell, you can run the following set of commands:

> You need to have the Az PowerShell module installed on your machine or you can jump to shell.azure.com

# Connect to your Azure subscription
 Connect-AzAccount

# Create variables
$containerName  = "individual-container"
$storageAccountName = "azstorageeusacc01"
$resourcegroup = "arg-eus-storage"
$location = "eastus"

# If you don't have a storage account, create one
New-AzStorageAccount -ResourceGroupName $resourceGroup `
  -Name  $storageAccountName`
  -Location $location `
  -SkuName Standard_RAGRS `
  -Kind StorageV2

# Create a context object using Azure AD credentials
 $Context = New-AzStorageContext -StorageAccountName $storageAccountName -UseConnectedAccount

# Create a container
New-AzStorageContainer -Name $containerName -Context $Context

# upload a file to the default account (inferred) access tier
$Blob1HT = @{
  File             = 'D:\Images\Image001.jpg'
  Container        = $ContainerName
  Blob             = "Image001.jpg"
  Context          = $Context
  StandardBlobTier = 'Hot'
}
Set-AzStorageBlobContent @Blob1HT
  
 # upload another file to the Cool access tier
 $Blob2HT = @{
  File             = 'D:\Images\Image002.jpg'
  Container        = $ContainerName
  Blob             = 'Image002.png'
  Context          = $Context
  StandardBlobTier = 'Cool'
 }
 Set-AzStorageBlobContent @Blob2HT
  
# upload a file to a folder to the Archive access tier
$Blob3HT = @{
  File             = 'D:\Images\FolderName\Image003.jpg'
  Container        = $ContainerName
  Blob             = 'FolderName/Image003.jpg'
  Context          = $Context
  StandardBlobTier = 'Archive'
}
Set-AzStorageBlobContent @Blob3HT

# List the blobs in a container
Get-AzStorageBlob -Container $ContainerName -Context $Context | Select-Object -Property Name

Moving Data to Blob Storage

For migrating any existing data to Azure blob storage, the following options can be used:

Azure Import/Export service: Using hard drives, large amounts of data can be imported to or exported from your storage account.

Azure Data Box: Transferring on-premises data for large datasets or with network constraints can be done with the data box. A request can be made for Azure Data Box Heavy, Azure Data Box, or Azure Data Box Disk for copying data. The device is then shipped back to Microsoft for blob storage uploading.

Blobfuse: This virtual file system driver can be used for accessing existing block blob data in your storage account through the Linux file system.

Azure Data Factory: Using an account key, a service principal, a shared access signature, or managed identities for Azure resources, data can be copied to and from blob storage.

Azure Data Movement Library: It is a .NET library that moves data between Azure storage services.

AzCopy: This easy-to-use command line tool of Windows and Linux is used to copy data to and from blob storage, across storage accounts, or across containers.

Azure Blob Storage: Benefits

Blob storage can be used in several ways to store and retrieve a large number of files. Here are the benefits of Azure blob storage:

Multiple Blob Types: There is more flexibility of choice between block blobs, append blobs, and page blobs, to suit specific requirements.

Good Consistency: Any changes made to an object are instantly updated. This ensures the latest version is available for data access, thus providing superior data integrity.

Worldwide Access: Since blob storage uses Representational State Transfer (ReST) based object storage, the stored data can be accessed with Azure’s regional data centers from anywhere in the world.

Object Mutability: The editing ability of a specific data object reduces bandwidth consumption and improves overall performance.

Geo-Redundancy: The geo-replication feature enhances local and global access, leading to maximum business continuity.

Security: A key model helps authenticate a user with Azure Active Directory, making it difficult for intruders to access information. The use of Shared Access Signature (SAS) restricts data access and the integration with Microsoft Defender for storage, making it secure.

Check the Microsoft Azure Blob storage documentation for additional tutorials, samples, and concepts.

Summary

In this article, we explained what is Azure Blob Storage, discussed each characteristic, and showed you how to create a container and upload a blob.

Azure Storage is evolving, and new features are being added constantly. No matter what solution you are building for the cloud, you will find a compelling use for Azure Storage.

Read the article Move Files Between Azure File Share Tiers to know how to automatically move data between the different share tiers.

To know how to automate and copy your data from Azure blob to Azure file share, read Copy From Azure Blob Storage to Azure File Share.

To learn more about Azure Storage including Azure Blobs and Azure File Shares, check my recently published online course: Azure Storage Essential Training.

__
Thank you for reading my blog.

If you have any questions or feedback, please leave a comment.

-Charbel Nemnom-

Photo of author
Author
Charbel Nemnom
Charbel Nemnom is a Senior Cloud Architect, Swiss Certified ICT Security Expert, Certified Cloud Security Professional (CCSP), Certified Information Security Manager (CISM), Microsoft Most Valuable Professional (MVP), and Microsoft Certified Trainer (MCT). He has over 20 years of broad IT experience serving on and guiding technical teams to optimize the performance of mission-critical enterprise systems with extensive practical knowledge of complex systems build, network design, business continuity, and cloud security.

Related Posts

Previous

Why Business Continuity Planning is Important and Effective?

What Can My Employer See On Microsoft Teams? Know It All

Next

Let me know what you think, or ask a question...

error: Alert: The content of this website is copyrighted from being plagiarized! You can copy from the 'Code Blocks' in 'Black' by selecting the Code. Thank You!