Azure Blob storage is Microsoft’s object storage solution for the cloud. Let us first understand what a Blob is. The word ‘Blob’ expands to Binary Large OBject. Blob storage is optimized for storing massive amounts of unstructured data, such as text or binary data. Blob storage is ideal for: Serving images or documents directly to a browser.
It is a feature in Microsoft Azure that lets developers store unstructured data in Microsoft’s cloud platform. This data can be accessed from anywhere in the world and can include audio, video and text. Blobs are grouped into “containers” that are tied to user accounts. Blobs can be manipulated with .NET code.
Blob Service Hierarchy
The blob service is composed of the following components:
- Storage Account: This storage account can be either a General Storage account (V1 or V2) or a Blob Storage Account.
- Container: A container contains a group of blobs in which there can exist an unlimited amount of blobs. A mandatory requirement of a container is that its name should always be lowercase.
- Blob: A blob is a file of any size and type.
Blob storage allows Microsoft Azure to store arbitrarily large amounts of unstructured data and serve them to users over HTTP and HTTPS.
Microsoft’s use cases include serving streaming video, files, text and images to remote users. Azure allows users to store blobs in containers. A blob might be dedicated solely to video while another might store image files.
Microsoft defines three types of blobs: block blobs, append blobs and page blobs. Block blobs support up to 50,000 blocks up to 4 megabytes, with up to 195 gigabytes in total. Block blobs are intended for text and other binary files. Append blobs support appending operations and are designed for log files. Page blobs are designed for frequent read/write operations. Blobs are created and accessed with .NET code.
Why Use Azure Blob Storage
- Strong Consistency – Blob storage ensures the user has superior data integrity. The data accessed is always the latest version as it instantly updates changes made to an object.
- Object Mutability – The ability to edit a specific data object will improve overall performance while reducing bandwidth consumption.
- Multiple Blob Types -Having page blobs, block blobs and append blobs gives more flexibility to choose a storage option that suits your specific requirements.
- Geo-Redundancy – Ensures maximum availability by Geo-replication to enhance both local and global access which leads to maximum business continuity. Automatically configure Geo-replication options in a single menu, to easily empower enhanced global and local access and business continuity.
- Worldwide access -With rest-based object storage, the data stored in blob storage can be accessed from anywhere in the world with Azure’s regional data centers. It allows access to the right people at the right time without the need to worry about physical location.
Common uses of Blob storage include:
- Serving images or documents directly to a browser
- Storing files for distributed access
- Streaming video and audio
- Storing data for backup and restore, disaster recovery, and archiving
- Storing data for analysis by an on-premises or Azure-hosted service
The Azure Blob Storage Model: Overview
An Azure Storage Account will consist of one or more Containers, which are created and named by the user to hold Blobs. All blobs must be located in a container. In general (and at the time of this writing), an Azure user can have up to five separate storage accounts.
An individual storage account may contain an unlimited number of containers, and an individual container may hold an unlimited number of blobs. However, the total size of all containers may not exceed 100TB.
Windows Azure defines different types of blob
- Block blobs – Block blobs are for your discrete storage objects like jpg’s, log files, etc. that you’d typically view as a file in your local OS. Regular (non-Premium) storage only.
- Page blobs – Page blobs are for random read/write storage, such as VHD’s (page blobs are what’s used for Azure Virtual Machine disks). Supported by both regular and Premium Storage.
- Append Blobs: Append Blobs are Optimized for append operations. e. g. Logs
Blobs Access Tiers
Blobs also have the so-called access tiers. They may be hot, warm and cold storage types.
- Hot files are the ones, you store in the cloud to access a lot. Expensive to store, but cheap to access.
- Warm files are the ones, you store in the cloud, to access not that frequently. Less expensive to store files then in hot, more expensive to access
- Cold files are the ones, you store in the cloud to access once in months or years. Dirt cheap to store files, the most expensive type to access files
Microsoft has all three access tiers for the Blob Storage – Hot Tier, Cool Tier and Archive.
You cannot change access tier for Page Blobs. Access tier is applicable only for Append Blobs and Block Blobs. The limitation relates to the purpose and architecture of these storage types. You can change access tiers for files, but not disks.
There are tools to analyze blobs in a storage account and recommends potential cost savings when objects are moved between the “Hot”, “Cool” and “Archive” tiers.
This project framework provides the following features:
- Lists blobs in a blob container / all container in a storage account.
- Matches blobs against user-defined criteria for analysis.
- Recommends potential savings in monthly storage costs when objects are moved between the “Hot”, “Cool” and “Archive” tiers.
- Changes access tier of analyzed blobs.
We would discuss about how to upload Azure blob storage in our subsequent blogs.