Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Azure File Service vs Blob Storage - performance-wise

I'm moving a cloud application to Azure cloud and need to decide which storage type to use. The stored files will mostly be images and occasionally a .pdf file. The only operations to be done, are basically putting and getting files, and sometimes also retrieving the metadata. By that profile, it seems that the Blob storage is more suitable for my needs.

However, I'm not sure, if using Azure File Service would give me the edge performance-wise. The throughput is supposed to be the same for both storage types.

So, I was wondering, if mounting the File Service and directly storing the files would be faster than using REST calls to communicate with a blob. And if it was, how big of a difference would that be?

I tried to look for the answer to that in this thread: Azure Blob Storage vs. File Service but it seems that the subject of performance has been omitted there.

like image 200
Slowacki Avatar asked May 26 '16 16:05

Slowacki


People also ask

What is the difference between Azure blob and Azure file storage?

In summary, the difference between the two storage services is that Azure Blob Storage is a store for objects capable of storing large amounts of unstructured data. On the other hand, Azure File Storage is a distributed, cloud-based file system.

How fast is Azure file storage?

Performance Azure Files offers limited throughput of 60MB/s, and various other performance-related limitations.

What type of storage offers the lowest latency in Azure?

Azure Storage offers two different performance options for block blobs: premium and standard. Premium block blobs offer significantly lower and more consistent latency than standard block blobs via high-performance SSD disks.

How many performance tiers are offered by Azure file storage?

The limits for standard file shares apply to all three of the tiers available for standard file shares: transaction optimized, hot, and cool.


1 Answers

Which you choose is likely going to be a combination of performance and app architecture, since some legacy apps must rely on file I/O.

From a purely performance-related perspective:

  • Each blob is capable of throughput up to 60MB/sec
  • Each file share is capable of throughput up to 60MB/sec

So from a throughput perspective, File shares are going to be limited compared with an entire Storage Account, since file share throughput is 60MB/sec regardless of the number of files in the share.

From a capacity perspective:

  • A Storage Account provides up to 500TB
  • A File share provides up to 5TB

You should look at Azure Storage scalability and performance targets here for more specifics, but TL;DR working with blobs directly will provide much greater bandwidth.

like image 121
David Makogon Avatar answered Nov 16 '22 01:11

David Makogon