I was studying SQL Azure parameters some time ago and found out that there are no materials which tell you clearly what it is, what it costs, what are limitations, what developers can and can’t do etc. There are so many marketing materials, business materials and even very technical materials but not simple, single-level big picture stuff (at least for my brain). I found great article by Microsoft Developer Evangelist Michael Jurek but it is unfortunately in my native language so I translated some parts from it.
Let’s start with some business/high-level aspects:
- SQL Azure is cloud version of SQL Server database engine.
- Microsoft has many computers spread over three continents (Europe, Asia, North America). SQL Azure is running on many of them
- As customer, you can create virtual SQL server on these cloud servers. Virtual server consists of databases, user accounts etc. known stuff
- You can create databases on virtual server. You must pay for them on regular basis, appx 10 USD for GB per month
- There are two editions – Web (1 and 5GB sizes) and Business (10,20,30,40 and 50 GB sizes).
- If you need bigger databases you can use sharding.
- You have no control where your databases are physically placed (on which boxes)
- When you’re creating database you chose edition (Web/Business) and maximal size of database (1 or 5 GB for Web and 10 or 20 or 30 or 40 or 50 for Business)
- You pay monthly but only for space which you’ve consumed rounded up to next available size in your edition. Example: You have Web edition with 1GB and consumed 0,2 GB – you pay for 1 GB which is 10 USD/month. Example 2: You have Business edition with 40 GB and consumed only 16 GB – you pay as for 20 GB which is 200 USD.
- “Consumed space” is tables, indexes etc. – everyhing which is stored in .MDF file. Transaction log space is for free.
- There are no fees for HW, CALs, processor licences etc. There is one fee you may pay – for transferred GB’s. It is 0,1 USD/GB for in-traffic and 0,15 USD for out-traffic. However this fee is relevant only if your application layer is out of cloud. If you have your application layer within cloud, there is no external traffic in/out SQL Azure which means no additional fees.
- Microsoft states that for this money you get high availability SQL Server and automatic, seamless fail-over if anything goes wrong
- You are basically focused only to your databases, not to HW, operating system, security updates or anything else
Next time, I will continue with what is permitted and what’s not from administration point of view.