A vision of Cloud Computing

I have been working and researching about cloud computing since a while, and besides all that we know now about this, it could be interesting to analyze what role it plays in the IT world, specially when this becomes an important part of the infrastructure, and therefore of the IT architecture.

We can find many different definitions about cloud computing, and all of them will be accurate, but the important idea is to understand the main concept behind this technical approach and how we can take advantage of it. This last point is as important as recognizing when we should not use this approach because it might not be a good solution. Said that it has to be clear that a good understanding of cloud computing will lead us to know when it is a suitable solution and when is not, and that is the kind of analysis I would like to make here.

When talking about a cloud computing decision one of the main questions we need to ask about is in which of the three well-known categories our solution will be running: *aaS (PaaS, SaaS, IaaS [01]). If the solution we are thinking for the cloud does not fit in any of this categories, this is a clue that maybe cloud computing is not the best option for our goal. The fact that cloud computing is actually great in many aspects does not mean that is the best options for all cases.

Cloud computing means the abstraction of some computational resources, making them available from everywhere. The main advantage of this is of course, the ubiquity. In addition as an owner for those services, I also have the advantage that I am not responsible for handling those services, for example, if I put my solution on the cloud I am delegating the administration of that infrastructure, so I do not need to have those servers, and manage them, and I have the option for paying only for the service it is used. This delegation of the service, is what impacts the most on the decision of whether to use or not cloud computing because it implies a potential security concern [02].

Another interesting feature of cloud computing is that allow to handle the scalability automatically, that means if my applications requires more resources this is handled automatically, otherwise, without having cloud computing implemented, I have to be responsible for that scalability of my application (with the economical implications that it has), and is important to know that many times, these kind of problems are show-stoppers.

There are many other aspects that a cloud computing implementation manages very well, like availability, performance, reliability, costs, etc. but besides that I think one of the most important aspects of cloud computing is the optimization of the resources that it makes. So I would say that this is a very good option for most of the systems, except when it implies an important security concern (in this case it could be also a suitable solution but it might require a more detailed analysis).

References

  1. [01] – Platform as a Service, Software as a Service, infrastructure as a Service
  2. [02] – Cloud computing security

Leave a comment

Filed under Architecture

Leave a comment