Azure Storage is a managed cloud storage offering from Microsoft. It provides a scalable store for data objects, a cloud-based file system, and even provides a messaging and NoSQL store. As a managed service, maintenance and support is handled by Microsoft Azure, taking the care and feeding aspect of storage support out of the hands of the Azure administrator.
Durable and highly available, Azure Storage offers redundancy to ensure that data is protected during hardware failures. The ability to replicate data across Azure datacenters and even across different Azure regions offers additional protection against catastrophes and natural disasters. Data that is stored and replicated in Azure remains highly available in the event of unexpected outages.
Massively scalable, Azure Storage can meet the most demanding data storage requirements for today’s applications, including use cases such as big data. In addition to offering such scalable storage, the Azure Storage service also provides secure data storage by encrypting all data that is written to the service. By offering fine-grained control over access to the data, Azure Storage also makes it easy to control such access.
Data housed in Azure Storage is essentially accessible from everywhere in the world via HTTP or HTTPS. However, Microsoft also offers several SDKs for Azure Storage, in several languages, including .NET, Java, Node.js, and many others. Microsoft also offers a mature REST API and scripting abilities in Azure PowerShell and in Azure CLI. GUI access is also provided via the Azure portal and by Azure Storage Explorer.
Azure Storage can essentially be broken down into five key data services, including Azure Blobs, Azure Files, Azure Queues, Azure Tables, and Disk Storage. Azure Blobs offers a scalable object store for storing text and binary data, while Azure Files offers managed file shares that can be used for cloud and on-premises deployments. Azure Queues is a messaging store that is used to facilitate reliable messaging among application components. Azure Tables is a NoSQL store used for “schemaless” storage of structured data. Disk Storage offers unmanaged and managed disks that are used by virtual machines.
All storage services can be accessed through an Azure Storage Account.
Microsoft’s Azure Blob storage offering is intended for object storage in the cloud. As such, it is optimized for storage of unstructured data, such as binary data and text.
Blob storage in Azure is a good choice for serving data such as images for a website directly to a browser and for storing files that are accessed in in a distributed fashion. It also works well for video and audio streaming. Other uses for blob storage include backup data storage, disaster recovery, and data archives.
Objects that are stored in blob storage are accessible worldwide via HTTP or HTTPs. Such blobs are accessed by users and client applications via URLs, Azure PowerShell, the Azure CLI, the Azure Storage REST API, or by an Azure Storage client library, which are available for many languages, such as .NET, Java, Node.js, Python, PHP, and Ruby.
The Azure Files service offers the ability to configure cloud-based file shares that are highly-available and can be accessed via the well-known Server Message Block (SMB) protocol. Azure Files provides the ability to allow multiple virtual machines to share the same files, while providing both read and write access to those files. In addition to accessing them via SMB, the files in an Azure file share can also be accessed using the REST interface and storage client libraries.
What makes Azure Files advantageous over a corporate file share is the fact that Azure Files are accessible from anywhere in the world via a URL and a shared access signature (SAS) token. SAS tokens can be generated to allow specific access to files for a specific amount of time, adding a level of control not available with corporate file shares on-premises.
Because many on-prem applications use traditional file shares for storing data, moving such applications to Azure is typically straightforward. Mounting an Azure-based file share using the same drive letter that the on-prem application uses allows the application to continue accessing the required data (now in the cloud) without any major changes.
Another common use case for file shares hosted in Azure Files is the sharing of crash dumps, diagnostic logs, and the like. In such use cases, applications (both on-prem and in the cloud) can be configured to store log files and such in Azure-based file shares and those logs can be viewed and analyzed later.
At the time of this writing, Microsoft is in the process of rolling out support for Azure Active Directory authentication for Azure Files SMB access. Such integration is a feature that’s been requested for quite some time. This new feature allows access to Azure file shares via SMB from machines joined to an Azure AD Domain Services domain. Such access can then be controlled with Azure AD credentials. Additionally, Azure Files now supports NTFS ACLs on files and folders stored in file shares hosted by Azure Files. These new features allow organizations to sync their on-prem AD accounts to Azure AD and then to access shares that have been migrated from on-prem to Azure, using the same credentials that are used on-prem.
Another feature of Azure Storage is the Azure Queue service. This feature of Azure Storage stores and retrieves messages. Queue messages that are stored by the Azure Queue service can be up to 64 KB in size. An Azure Queue, which is typically used to store lists of messages, can contain millions of messages. Messages stored in Azure Queue are then processed asynchronously.
An example use case for Queue Storage would be a website that produces thumbnails for pictures uploaded by users. Instead of making a user wait while thumbnails are created, a queue could be used. Once the initial upload of pictures is complete, a message can be written to the queue and an Azure Function leveraged to retrieve the message and then create the thumbnails. Such a process could then more easily be scaled.
The original Azure Table storage service provides the ability to store structured NoSQL data in Azure in a schemaless fashion. Since it’s schemaless, data in Table Storage is easy to adapt to the needs of your application. Access to Table Storage is generally more cost effective than traditional SQL.
Table Storage offers the ability to store terabytes of structured data and storing datasets not requiring complex joins, stored procedures, and such can be denormalized for fast access. It also provides the ability to quickly query data via a clustered index, accessing such data using the OData protocol and LINQ queries, with WCF Data Service .NET Libraries.
The Table Storage feature can be used to store and query large data sets that consist of structured, non-relational data.
As of this writing, however, Microsoft has begun offering a premium solution for table storage: The Azure Cosmos DB Table API. Key features of this new offering include global distribution, throughput-optimized tables, and automatic secondary indexes. Access to Table storage data is fast and cost-effective for many types of applications and is typically lower in cost than traditional SQL for similar volumes of data.
Microsoft’s Azure Storage offering also features managed and unmanaged disk capabilities that are used by Azure virtual machines. Such capabilities include the Operating System disk, which host the operating system for a virtual machine, the Temporary Disk, which provides short-term storage for apps and processes, and the Data Disk, which is really a VHD that’s attached to a VM and used to store application data and other data that’s needed.
Disk Storage is typically created and managed while managing Azure virtual machines.
Types of Azure Storage Accounts
Within Microsoft’s storage offering are multiple type of storage accounts, each capable of handling different types of objects. These include the General-Purpose Standard account, the General-Purpose Premium account, and Blob Storage (hot and cool access tiers).
General-Purpose Standard Accounts
Standard storage accounts are, by far, the most widely used type of storage account in Azure. A General-Purpose Standard account supports all types of data, including blob, file, queue, and table. It should be noted that standard storage accounts store data on magnetic disk.
General-Purpose Premium Accounts
General-Purpose Premium storage offers high-performance storage for page blobs (typically used for VHD files). While standard accounts use magnetic media for storing data, premium storage accounts use SSD. As such, it’s typically more expensive to host data in a premium account than a standard account. Naturally, Microsoft recommends Premium Storage for all virtual machines hosted in Azure.
Blob Storage Accounts
Blob Storage accounts are a specialized breed. They are used to store block blobs and append blobs. However, blob storage accounts do not allow storage of page blobs. As such, they do not support storage of VHD files. These types of storage accounts provide two different access tiers Hot and Cool. The Hot tier would typically be used to store data that is accessed regularly, while the Cool tier would be used to store less-accessed data (ie. archives). The access tier can be changed at any time.
Storage costs for data in the Hot tier are higher, but access costs are lower. Storage costs for data in the Cool tier are lower, but access costs are higher.
With numerous account types and services, cloud administrators have numerous choices when it comes to their storage needs. In our next blog, we’ll discuss practical use cases for Azure Storage. No matter where you are in your Azure storage journey, our Azure Training Library can help you get started.
How to Become a Microsoft Certified Azure Administrator
Microsoft Azure is one of the hottest cloud services on the planet, and it’s growing at a phenomenal rate. This rapid growth has created a huge demand for people who know how to administer and manage Azure implementations.To make it easier for employers to verify the skills of Azure...
Preparing for the Microsoft AZ-900 Exam
Microsoft has offered Azure certification exams for years, but until recently, they were all meant for technical IT professionals. Now non-technical professionals, such as salespeople and managers, can take the new AZ-900 exam to prove their understanding of Azure fundamentals. People w...
An Overview of Azure Storage (Part 2)
Archive StorageArchive Storage offers the lowest storage costs of all Azure storage. Its retrieval costs, however, are higher when compared to Hot and Cool storage. The archive tier of storage is designed for data that can tolerate several hours of latency when being retrieved. It’s a...
An Overview of Azure Storage (Part 1)
Welcome to part one of our series on Azure Storage. Stay tuned for the second part. An Overview of Azure StorageMicrosoft Azure Storage is a cloud-based storage offering that provides multiple storage solutions for organizations. In addition to a massively scalable object store for ...
NEW: Custom Hands-On Labs for Azure and Google Cloud Platform
Harvard Business Review recently estimated that some 90% of corporate training never gets applied on the job. Given the $200B training industry, that is a staggering amount of waste. One reason for the disconnect? Lack of context.Cloud Academy’s platform was built to make it extraor...
How to Become a Microsoft Certified Azure Solutions Architect
Microsoft Azure is the fastest growing cloud provider. Azure’s revenue grew an incredible 76% in the last quarter of 2018. As more and more businesses move their IT infrastructure to Microsoft’s cloud platform, the demand for Azure professionals keeps rising. Since there are relatively ...
What is Heroku? Getting Started with PaaS Development
So just what is Heroku? It's a service for developers eager to get their applications online without having to worry about infrastructure details.Metered, pay-as-you-go Cloud Computing services come in all kinds of flavors. Infrastructure as a Service (IaaS) offerings like AWS allow e...
Understanding Object Storage and Block Storage Use Cases
Cloud Computing, like any computing, is a combination of CPU, memory, networking, and storage. Infrastructure as a Service (IaaS) platforms allow you to store your data in either Block Storage or Object Storage formats.Understanding the differences between these two formats - and how ...
What are Azure Blueprints?
What are Azure Blueprints?Blueprints, in the traditional sense, are used by architects and engineers to design and build new things. They are used to ensure that the final products are built to specifications and in compliance with certain standards and requirements.Azure Bluepri...
Azure Hybrid Identity Authentication Methods
The move to the cloud is picking up steam. As such, many corporations are beginning to find themselves supporting a mixture of on-prem apps as well as cloud apps. Users are finding that they need access to this mix of applications as well. As one would expect, this can become a challe...
2018 Was a Big Year for Content at Cloud Academy
As Head of Content at Cloud Academy I work closely with our customers and my domain leads to prioritize quarterly content plans that will achieve the best outcomes for our customers.We started 2018 with two content objectives: To show customer teams how to use Cloud Services to solv...
Azure Internet of Things (Azure IoT) – An Introduction
IoT, or the ‘Internet of Things’, is an intriguing and rapidly growing technology that's bringing significant change to important elements of modern life. According to Gartner, IoT security spending alone is set to reach $1.5 billion during 2018.Like many newly minted terms, the def...