TSQL TuesdaySo here it is, the second Tuesday of the month. This means that it is time for our favorite Tuesday activity – the SQL world-wide blogging party know as T-SQL Tuesday. The brainchild of Adam Machanic, this is an event where for 24 hours, SQL bloggers will blog about a topic selected by an individual.

This month, our party is being hosted by Jorge Segarra (but most commonly known as SQLChicken). The topic that he has selected is the cloud. Specifically:

This month’s topic is all about the cloud. What’s your take on it? Have you used it? If so, let’s hear your experiences. Haven’t used it? Let’s hear why or why not? Do you like/dislike recent changes made to cloud services? It’s clear skies for writing! So let’s hear it folks, where do you stand with the cloud?

There are several places that I see this being useful. For instance, e-commerce sales. I have read articles where Domino’s Pizza uses the cloud to on-demand put more web servers on line to handle anticipated surges (see this link, or this link, or even this link). In my opinion, this is a very smart use of the cloud. Spin up some servers for an event (for instance, Domino’s “Two for Tuesday”sales, and their ramp-up for Super-Bowl Sundays). This allows them to avoid the cost of maintaining a huge amount of infrastructure just to handle their spikes.

However, note that these are putting web servers up – not database servers. Since we are database folks, let’s talk about this for a bit. The concerns that I have with putting my database(s) in the cloud are:

1. Security – exactly who has access to my server? my database? my database files? How can I ensure that security of my system won’t be compromised? How about physical access?

2. Performance – how will my virtual neighbors, with their poorly-performing queries, affect my database? How can I optimize the storage needs for my database with an eye on the performance?

3. Responsibility – if something goes wrong, someone else needs to fix it. How long will it be down? How will I know how long? I will have no insight into what is wrong, why the failure happened, or how to take preventative actions to prevent this again.

4. Safety – if something happens to my database and I need to restore it from the cloud – just how long will that take? Will it meet my RPO / RTO objectives? (There have been stories of companies shutting down because of this.)

So, overall, I’m cautiously optimistic. I see potential, but I also see pitfalls to avoid. Things have improved, but I don’t think that they have improved enough to put my database in the cloud.