Azure Blob storage is a massively scalable system for storing images, video, audio and other unstructured digital objects. Stored as blobs and housed in containers in the cloud, these objects are accessible to you anywhere in the world via unique URLs. Blobs come in three types (block, append and page) that speak to different cloud-storage needs and scenarios. Azure Blob storage also offers three storage tiers: hot, cold and archive. The storage tier you choose for your blobs will depend on whether you need instant-access, cost savings, or both. Azure Blob also provides a rich set of options for controlling access to your containers and blobs.
To create an Azure Blob account, you can either take the non-technical route through the Azure portal, or the more direct, developer-route through one of the many supported clients and apps, such as PowerShell. However, before you get started, let’s explore the building blocks of this highly scalable, feature-rich storage system.
What’s a blob?
The technical term BLOB stands for “Binary Large Object.” However, in the context of Azure Blob storage, a blob is simply a digital file with a unique name and URL. Blobs have no intrinsic restrictions on size or file type. Residing in containers in the Azure cloud, blobs are accessible from anywhere on the globe through URLs, REST APIs or Azure SDKs, subject to access controls.
Upon creating a blob you will need to designate the blob type, a permanent classification that cannot be changed later. There are three blob types to choose from: block, append and page. Let’s take a close look at the properties, benefits and limitations of each:
Keeping in mind that a blob is often a very large file, a block blob is divided into relatively small pieces called blocks that help make the blob more manageable. In particular, uploading and downloading blobs becomes far faster, easier and more reliable once they are divided into blocks. For example, you might need to store a single, 10-gigabyte file with five hours of high-resolution video tutorials for your business. Knowing that in its present state the video file would take an extremely long time to upload, download and otherwise manage, you decide to turn it into a block blob on Azure. So you divide the enormous video file into small, manageable blocks. You soon find that these blocks can be quickly uploaded, downloaded and otherwise handled in an extremely efficient, parallel fashion.
Note that the maximum size of a block is 100 MB, and the maximum number of blocks per blob is 50,000. This brings the maximum size of a block blob to roughly 4.75 terabytes (TB).
An append blob, like a block blob, is made up of blocks. However, only append blobs can be modified with the Append Block operation. Any block added to an append blob through this operation will be appended to the end of the blob. Note that append blob’s have a much smaller maximum block size (4 MB) than block blobs, and a much smaller maximum total size (195 GB). Because of their structure, append blobs are ideal for storing data that accumulates in increments, such as logs.
Page blobs are not comprised of blocks, but pages, each of which is precisely 512 bytes. Ideal for files with read/write access, page blobs have a maximum size of 8 TB.
The importance of containers
Every blob must reside in a container. You can have any number of containers per account, and any number of blobs per container. Note that although containers are comparable to digital folders in some respects, containers cannot be nested (i.e. you cannot place containers within containers). Because metadata and access controls address containers rather than blobs, containers play a central role in the Azure Blob storage system, and every account comes with a default root container.
Blob storage tiers: hot, cold and archive
Azure Storage allows you to choose between three storage tiers for your data: hot, cold and archive. Each tier represents a trade-off between accessibility or availability on the one hand, and cost savings on the other.
Hot storage tier
This tier is the best choice for storing blobs that you will access frequently. Optimized for quick access, hot storage comes with the highest availability, but also the highest access costs, of the three tiers.
Cold storage tier
Optimized for infrequently accessed data that is stored for a minimum of one month, the cold storage tier strikes a balance between availability and cost savings. The cold storage tier is considered ideal for short-term backup and disaster-recovery needs.
Archive storage tier
Restricted to the blob level and currently in preview, the archive storage tier applies to rarely accessed data and cannot be applied to entire accounts. Although archive storage is the most cost effective of the three options, blobs in archive storage are not directly accessible. To access your archived blobs, you will need to move them into a hot or cold storage tier. Known as rehydration, this process can take as long as 15 hours for some blobs, depending on their size. Therefore, the archive storage tier is only considered ideal for long-term backups and other rarely accessed datasets.
If you would like to grant anonymous-user, read-only access to particular containers and blobs of yours without sharing your account key, you have a number of options. On the other hand, if you would like to provide more restricted access, you can make use of a broader Azure storage access feature: Shared access signature (SAS). This feature provides you with granular access control that encompasses permissions along with other access conditions, such as the precise time interval over which the SAS will be in effect.
Getting started with Azure Blob
The first step toward leveraging Azure Blob is to create an Azure Storage account. You have the choice of creating a general-purpose Azure Storage account or an Azure Blob-specific account. In either case, you can create your new storage account through the Azure portal or any of the tools and clients listed in Azure’s documentation. If you want to test Azure Blob storage without creating an account, you can use the Azure Storage Emulator. Azure Blob is a highly developer-friendly platform accessible from multiple local clients, as well as PowerShell and other command-line tools.
Leveraging the high scalability of Azure Blob storage
As outlined above, Azure Blob storage represents a massively scalable answer to the problem of high volume storage of unstructured data. Accessible anywhere in the world via unique URLs, blobs come in three types: block, append and page. Block blobs allow for faster and easier uploading, downloading and overall management; append blobs are designed for incrementally accumulating datasets, such as logs; and page blobs are ideally-suited for read/write access. Azure Blob storage also offers three storage tiers: hot, cold and archive. Hot storage offers the highest availability; cold storage offers the best balance between availability and cost savings; and archive storage offers the greatest cost savings. To share your containers and blobs with others, you can opt for Azure Blob’s anonymous-user access options or the broader SAS solution. To get started with Azure Blob, the Azure portal provides an intuitive, non-technical route, but developers may prefer one of the many clients and apps, such as PowerShell, that the platform supports. Either way, you are bound to find that Azure Blob provides a richly featured, highly scalable solution that more than meets the unstructured-storage needs of your business.
Contact us to learn more about Azure Blob storage and other Azure services.