Cloud computing and multi-tenancy
Cloud computing is breaking through to the general public. Unfortunately, it’s only the most watered down version that the public is hearing about.
Last week I listened to a program on NPR that briefly discussed the cloud and some ‘expert’ who worked for a general circulation magazine was happily telling the interviewer that cloud computing was all about servers in the sky. That’s it, just servers in the sky. It’s as if the only important idea of cloud computing is the obvious commoditization that comes from renting a bit of processing power. The reporter was even able to muster the names Amazon and Microsoft to define the market. But if cloud computing is just servers in the sky, then how is it different from servers down the hall?
Unfortunately, these cloud advocates have settled for the low hanging fruit, the cloud computing that says if you host an application in the cloud you won’t incur the overhead of ownership. Fair enough. But if that’s all you’re doing, you are leaving money on the table.
This definition of cloud computing amounts to running a conventional application in the cloud which is not much different from running it down the hall. Especially in those cases where a company insists on having its own segregated disks and CPU, there is no difference save how you pay for what you use. Has everyone forgotten about what has driven us to this point? The bad old days of client server applications that cost outrageous sums because armies of consultants had to cobble them together?
Back then we talked about the simplicity that comes from multi-tenancy and the ability to deliver something to the end user that simply works. Today’s definition of cloud computing takes a couple of giant steps backwards to focus on infrastructure with the assumption that a server is a server and one application running in a browser is the same as another.
But of course, that’s just not so. How the application gets to the browser matters, how and where the data is stored matters and how the application is built matters. The evolving definition of cloud computing as simply a delivery device for conventional applications doesn’t work and I think it will slow down the movement to ubiquitous connectivity and lower cost computing.
As luck would have it, I spent a very enjoyable hour on the phone with Mark Jensen last week too. Jensen is Managing Partner for Deloitte’s U.S. Venture Capital Services Group and U.S. Audit & Enterprise Risk Services (AERS) Technology Industry Sector Leader. We discussed a number of things including the future of computing (think about security), venture capital markets (sharply reduced exit activity is depressing capital formation) and cloud computing (the key is multi-tenancy).
It was nice to hear Jensen’s perspective on the cloud because I’ve been at it so long that a fresh perspective is most welcome. But instead of a fresh set of ideas, Jensen simply reinforced my thinking about multi-tenancy. After ten years of deployments, success and rapid growth, cloud computing still has to earn its stripes and convince people that multi-tenancy is safe. Companies still demand separate storage architectures for the information they store and use in the cloud.
This doesn’t surprise me so much as it disappoints. There is no doubt in my mind that cloud computing, and before it SaaS, is part of a long term computing trend and that the current effort to define cloud computing is a retrograde movement that will result in preserving the status quo even while adopting some of the more obvious parts of cloud computing, like the name.
Multi-tenancy is at the heart of all this. Multi-tenancy gives every user a unique part of the architecture to work in and store information. But no matter how many years of success we have the skeptics remain who simply don’t trust the systems in place to keep everyone’s data separate. Imagine if we still applied this attitude to banking, we’d be a nation of people with tin cans buried in the back yard and metal detectors would be banned. But I digress.
Multi-tenancy isn’t a fad, it is the reason to do cloud computing. Multi-tenancy raises a simple application from a one-off island of technology to a standards based business tool capable of being deployed, accessed and maintained almost anywhere. What you give up, if you want to call it that, with multi-tenancy is both the low level responsibility for ensuring the system remains up, and the unnecessary overhead that goes with it.
All this notwithstanding, there are still customers out there who will insist on clouds that can do this but not that. And unfortunately, when they discover, several years from now, that their systems have all of the problems that their current legacy systems have, they’ll blame the technology.