• Fabian Wetzel
  • 2011-07-14
  • 2 min. read

Ideas about NoSql on Windows Azure: Sql Azure

_This is a direct follow-up to my earlier article _“Ideas about NoSql on Windows Azure: RavenDB”. You should read it first.

While I was considering RavenDB as an actual choice for my project I was stumbling about the bad performance on big (1-5 MB) blobs. Shortly after I learned about attachments in RavenDB which are designed for exactly this case except it is not possible to include them in transactions. This is fine for me anyway.

Sql Azure

The next best choice is Sql Azure. It feels like having a SQL Server in the cloud with all its pros and cons. I have quite good knowledge in designing and using relational databases and especially storing blobs in them. But this is no NoSql at all Winking smile

Some whitepapers suggest to use XML document columns to store schema-less documents inside SQL Azure to simulate a NoSql database. While technically possible I cannot imagine someone really doing this.

Sql Azure is not free as well. You don’t pay for licences but you pay for the size of your database. It costs about 7€ per month and GB. This is too much for me to use it to store my blobs and as of now I have no idea how much metadata I need to store to run my service.

My decision

Sql Azure could fulfil all my needs. I could store the blobs inside Azure Blob Service to reduce the database size and to use the tools in the way they work best. But I will not use Sql Azure. Why? I am quite sure that Sql Azure is much more capable of scaling than my application would need it. It basically comes down to my desire to learn something new and to design the service in the way it fits best into the cloud.