Azure Blob Storage vs. File Service

Water Cooler v2 picture Water Cooler v2 · Jul 22, 2014 · Viewed 58.8k times · Source

Please correct my wrongs. From my reading on the topic so far, it appears to me that both, Azure Blob Storage and File Service offer the ability to store file(s) and folder(s) (I understand that blobs can store any binary object, but any serialized binary stream is just a file at the end of the day) in a hierarchical structure that mimics a file system.

Only the API to access them are slightly different in that the File Service allows you to query the source using Win32 File I/O like functions as well in addition to using the REST API.

Why would you choose one over another if you wanted your application to store some files owned by your application's users?

Answer

Simon W picture Simon W · Jul 22, 2014

A few items for your question:

  1. You can't mount Azure Blob Storage as a native share on a virtual machine.
  2. Azure Blob Storage isn't hierarchical beyond containers. You can add files that have / or \ characters in them that are interpreted as folders by many apps that read blob storage.
  3. Azure File Service provides a SMB protocol interface to Azure Blob Storage which solves the problem with (1).

If you are developing a new application then leverage the native Azure API directly into Blob Storage.

If you are porting an existing application that needs to share files then use Azure File Service.

Note that there are a few SMB protocol features that Azure File Service doesn't support.