When moving applications to cloud systems, the choice between public and private can cause a lot of debate.

Public clouds are cheaper than private ones – duh – but the old adage of "you get what you pay for" still rings true. While some cloud-level data management tools are available, public clouds in general are hostile environments. You have no control about who shares your resources and what risks they bring.

On the other hand, a private cloud is essentially just like your on-premise data center, except you don't need to look at it. Your compute and storage resources are totally dedicated, so you can guarantee they are available – even during peak hours.

Some companies may be best served by a hybrid approach, which supports the shift from one system to a multi-tiered deployment. That can increase availability and help manage demand while maintaining security.

But when you choose a cloud provider, you also need to think about the costs that AREN'T included in the final price tag.

If you choose an over-booked public cloud provider, then you have to expect that at some point, you're going to have a noisy neighbor that's going to slow down your systems. That can show in your customer satisfaction and employee productivity.

It's like buying a used car. Sure, your monthly payment is going to be lower. But you're also probably going to need new brakes and a transmission overhaul in a few thousand miles, so you need to factor in those costs when you make your choice.

With cloud providers, make sure their infrastructure is truly able to support the needs you're looking for it to fulfill. If they've got too many clients and too little compute power, know enough to hang up.