Azure Storage is a smart storage service over cloud from Microsoft which is scalable, Highly Available, secure, and durable. Azure Storage is accessible over HTTP/HTTPS and also client libraries for a variety of languages are available.
Types of Azure Storage
- Azure Blobs
- Azure Queues
- Azure Tables
- Azure Files
- Azure Disk
You should have an Azure storage account to use storage service in azure. You can choose from several types of storage accounts based on your requirements.
Blob is mostly used to store large binary objects like images, documents, video/audio files, etc. Objects can be accessed via HTTP/HTTPS URL. The storage client library is available for languages .NET, Java, Node.js, Ruby, Python & PHP
|ASP.NET Core 5 Design Patterns: Thinking code using architectural principles, testing, design patterns, and C|
Azure Queue service is somewhat similar to MSMQ and is used to store and retrieve messages. Queues are used for reliable asynchronous communication.
Queue message size can be up to 64 KB and Queue can contain millions of messages based on the storage capacity available.
Table storage service provides semi-structured NoSQL datastore in the cloud that is used to store data in a key-value format. Table storage is schemaless which makes it easy to adapt your data based on your application requirements.
The number of tables & number of entities within the table depends on the capacity of the storage account.
Azure Files are used to set up network file share that can be accessed by using the Standard Message Block (SMB) protocol. File share can be accessed by multiple applications simultaneously.
Azure Files can be accessed from anywhere using the REST interface or storage client libraries. Access to a private file share is provided by using a SAS token.
Azure managed disk are storage volumes that are managed by Azure and used with Azure virtual machines. Managed disks are like physical disks but virtualized. You just need to provision the disk and azure will handle the rest. The managed disk also provides encryption mechanisms like Storage Service Encryption and Azure Disk Encryption.
There are four types of Managed Disk i.e. Ultra disks, premium solid-state drive (SDD), Standard SSDs & Standard hard disk drives (HDD).
Type of Storage Accounts & Supported Services
|Type of Storage Accounts||Supported Services||Supported Blob Types|
|General-purpose V2||Blob, File, Queue, Table, Disk, and Data Lake Gen2||Block blobs, page
blobs, append blobs
|General-purpose V1||Blob, File, Queue, Table, and Disk||Block blobs, page
blobs, append blobs
|BlockBlobStorage||Blob||Block blobs and append blobs|
|BlobStorage||Blob||Block blobs and append blobs|
Security of Azure Storage
- Storage Account Security – Access keys are used to secure these storage accounts. Only users who has this key can access the data stored in this account. Storage keys can be changed frequently based on the requirements.
- Data Security – At storage account level encryption service is enabled that encrypts data at rest. Standard BitLocker encryption technology is used by Azure Disk to encrypt data and disks. Secure HTTPS protocol is used over public internet to encrypt data in motion. File share also uses SMB 3.0 for encryption.
- Shared Access Signature – If you don’t want to share access keys with user for data access then instead shared access signature can be used control access to data.
Additional Resources: https://docs.microsoft.com/en-us/azure/storage/common/storage-introduction
You can also check my another Article on Microservices Architecture – https://procodeguide.com/programming/microservices-architecture/