Hot Topic: Cloud computing

Published Mar 12, 2010 by Michael Kohl

"Nature is a mutable cloud which is always and never the same." - Ralph Waldo Emerson. Like nature in Emerson's quote, information technology too is an ever-changing topic. To deal with the constant flux of demands and challenges, IT experts over the years came up with various strategies. In the process many holy grails have been found, only to be discarded again shortly thereafter. But no matter how resistant to these fads your company usually is, chances are that cloud computing will be on your agenda in some form in 2010.

What cloud computing is and isn't

Before looking at what cloud computing can do for your company or research facility in the fields of information retrievel and/or scientific computing, let us first make clear what cloud computing is not, namely a panacea to all currently existing computing problems. According to Wikipedia

"Cloud computing is Internet-based computing, whereby shared resources, software and information are used by computers and other devices on-demand, like a traditional utility."

The keywords here are "shared" and "on-demand". If your use case is an isolated application that needs to be permanently available, chances are that the cloud is not what you are looking for. Cloud computing is no magic potion which eliminates complexity and operational costs, it just moves them to another level and transforms them into new engineering and development challenges. This is an often overlooked fact: it's very unlikely that you can just take a current application or business process, move it to "the cloud" and be done with it. It's much more likely that you will have to significantly redesign your project on several levels. Questions you never had to tackle before - how to make your data accessible to an application running on "borrowed" infrastructure for example - suddenly will demand answers.

Why cloud computing?

Given this added complexity, why should you concern yourself with the topic of cloud computing? The answer is rather simple: if you do your homework and manage to identify use cases that would profit from the key advantages of cloud computing (remember: "shared" and "on-demand"), you will be rewarded with a flexible and dynamic environment which can be scaled in a fast, easy and comparatively cheap way. Especially in the fields of information retrieval and scientific computing one can effortlessly identify problems which can profit from what cloud computing has to offer. From generating partial indexes on various nodes and then merging them together at the end, to an on-demand and dynamically scaling cluster for statistical machine translation the opportunities seem endless. What adds to the excitement is the possibility to do all of this right now, with rented infrastructure following a pay-per-use paradigm.

Parting thoughts

At Matrixware we are currently quite excited about what cloud computing has in store for us and are exploring several distinct usage scenarios. What we came to realize in the process though is that "the cloud" - like everything else - is only a tool. Granted, it may be new and shiny, but just because you now have a hammer, all your computing challenges won't suddenly turn into nails. Used with some creativity, good planning and a driving vision behind it though, the cloud might just be that missing piece in your puzzle.

See also the Resource Collection about Cloud computing.