What is Azure Storage?
Azure Storage is a cloud storage service provided by Microsoft Azure that allows you to store different types of data securely in the cloud.
Instead of storing files, images, videos, databases, or application data on your local server, you store them in Microsoft's Azure data centers and access them through APIs.
Azure Storage is:
- Highly available
- Scalable (can store GB to PB of data)
- Secure
- Cost-effective
- Accessible from anywhere
Types of Azure Storage
1. Azure Blob Storage (Most Used)
Blob = Binary Large Object
Used for storing unstructured data:
Examples:
- Images
- Videos
- PDF files
- Documents
- Backups
- Logs
- Website files
Real-time example:
A job portal like TechNokri:
User uploads Resume.pdf
|
↓
ASP.NET Core API
|
↓
Azure Blob Storage
|
↓
Resume stored in Cloud
Your database stores only:
UserId | Name | ResumeURL
--------------------------------
1 | Rahul | https://storage.azure.com/resume.pdf
2. Azure File Storage
Works like a normal Windows folder shared over the network.
Example:
Company has:
\\companyserver\documents
Replace it with:
Azure File Share
Multiple users can access files.
Use cases:
- Shared folders
- Migration of old applications
- Team documents
3. Azure Queue Storage
Used for communication between applications.
Example:
Online shopping:
Customer places order
|
↓
Order API
|
↓
Azure Queue
|
↓
Email Service sends mail
Queue message:
{
OrderId:101,
Email:"abc@gmail.com",
Amount:5000
}
4. Azure Table Storage
NoSQL key-value storage.
Example:
Student data:
PartitionKey | RowKey | Name | Course
---------------------------------------
Student 101 Rahul .NET
Student 102 Amit Azure
Used for:
- Simple data
- Large scale NoSQL storage
Example: Upload Image Using Azure Blob Storage (.NET)
Scenario
User uploads profile photo.
Flow:
Angular/React
|
|
ASP.NET Core API
|
|
Azure Blob Storage
|
|
image.jpg
Step 1: Create Storage Account
Azure Portal:
Create Resource
|
Storage Account
|
Create
After creation:
You get:
Connection String
Example:
DefaultEndpointsProtocol=https;
AccountName=mystorage;
AccountKey=xxxx;
EndpointSuffix=core.windows.net
Step 2: Install NuGet Package
ASP.NET Core:
Microsoft.Azure.Storage.Blob
or latest:
Azure.Storage.Blobs
Step 3: appsettings.json
{
"AzureStorage": {
"ConnectionString":
"your_connection_string",
"ContainerName":
"images"
}
}
Step 4: Create Blob Service
using Azure.Storage.Blobs;
public class BlobService
{
private readonly BlobContainerClient _container;
public BlobService(IConfiguration config)
{
var connection =
config["AzureStorage:ConnectionString"];
var container =
config["AzureStorage:ContainerName"];
_container =
new BlobContainerClient(
connection,
container);
_container.CreateIfNotExists();
}
public async Task<string> Upload(
IFormFile file)
{
var blob =
_container.GetBlobClient(file.FileName);
await blob.UploadAsync(
file.OpenReadStream(),
true);
return blob.Uri.ToString();
}
}
Step 5: Controller
[HttpPost("upload")]
public async Task<IActionResult> Upload(
IFormFile file)
{
var url =
await _blobService.Upload(file);
return Ok(new
{
ImageURL=url
});
}
Response
{
"imageURL":
"https://mystorage.blob.core.windows.net/images/photo.jpg"
}
Real Company Usage Examples
| Application | Azure Storage Usage |
|---|---|
| Netflix | Video storage |
| E-commerce | Product images |
| Banking | Document storage |
| Hospital | Patient reports |
| Job Portal | Resume storage |
| YouTube-like app | Video files |
Azure Storage vs Database
| Database | Azure Storage |
|---|---|
| Stores structured data | Stores files/objects |
| Tables | Containers |
| Rows/columns | Files/blobs |
| SQL queries | URL/API access |
Example:
SQL Server:
Employee
---------
Id
Name
Salary
Azure Blob:
employee_resume.pdf
profile.jpg
offer_letter.pdf
0 Comments
POST Answer of Questions and ASK to Doubt