I've been wrestling with data in the cloud for a while. It doesn't help that the definition of cloud is so nebulous.
I'm not an infrastructure guy but I've been told that the realistic limit for data transfer involving the cloud is 300 IOPS. I know of people who have had trouble stress testing apps in the cloud because the cloud vendor identified the heavy load as a denial of service attack.
Being able to store vast amounts of data in the cloud indefinitely and knowing that any piece of that data could be brought back, even with a slight lag, is of huge interest but if the app profile requires massive amounts of data movement then cloud doesn't feel right.
In 2012 I am going to be experimenting with analytics in the cloud where both the data and software reside in someone elses data centre. As data and app reside together then in theory this should work well. If I need more storage I simply pay the vendor and let them worry about floor space, cooling and power supplies. The instant someone wants a bulk download of customers matching a profile defined by the analytics work then this fires up the alarm bells.