Sebastian Piotrowski, high-performance computing lead for the R&D group at Johnson & Johnson Pharmaceuticals, says that where his group chooses to run workloads depends on the use cases -- or descriptions of how end users will use a given application -- and how often big demands occur on compute and storage resources.
"Applications that reach peak loads periodically and then retract are good candidates for clouds since clouds offer a good choice at a lower cost than having to buy more hardware that sits idle until one of these bursty periods comes along," he explains. "If you already have a good percentage of your workloads virtualized, then they are good candidates for clouds."
Some users begin by running a few non-mission-critical applications on public clouds to assess cost savings, benefits and risks associated with clouds. If they are satisfied, then they may move more applications to clouds.
"Our group is using the Amazon public cloud for testing and development, and then we will go into the Amazon private cloud for production," says Piotrowski.
"From a computing perspective, the choice of clouds depends on a number of factors, most of which are associated with the assumed risks of using clouds, such as transfer speed over the Internet, network latency and security," he adds.
Public clouds might make sense if, for example, the company is looking for the cheapest place to do simulations on new pharmaceuticals. This is a situation where heavy number-crunching is involved only sporadically and you may not need to worry about the security of data very much. But if you have production data such as back-office ERP, then you would not want to use the same cloud that you chose for pharmaceutical testing -- for security reasons -- and instead may want to use a private cloud in your own data center.
"You need to create a process for determining where applications should be run," says Chris Swan, chief technology officer of consultancy Capital SCF.
Politics enter the fray
Infrastructure groups and application developer groups can sometimes be at odds over where to run an application, and for good reason, says Capital SCF's Swan. An infrastructure group is trying to reduce the cost of running applications by using the least expensive venue, usually via new technology such as server virtualization or clouds. This group also considers which applications are the easiest to migrate to lower-cost platforms.