Monday, August 16, 2010

How Cloud Computing is Supposed to Work

You, like many other people in this country, have a computer. It sometimes has problems. Sometimes it crashes or freezes, hardware problems erase your data, and you're afraid of it being stolen. Maybe not even for financial reasons, maybe you'd be lost without some of the data on it, like your tax records. And then your favorite IT geekoid tells you about this new trend called "cloud computing." What is it?
I've spoken a lot about virtualization. That is a trend in which one big powerful computer pretends to be (and shows itself to the world as) very many smaller and weaker computers. The smaller, weaker, pretend computers can be thrown around the bigger powerful ones, thereby obviating the need for downtime. The virtual computer is always available, because at least one host is running it.
Virtualization also means that your computer can also be virtual. Instead of having an expensive computer, you have a super-cheap terminal. Your super-cheap terminal connects to my big expensive mainframe (which I keep in a huge room of many powerful computers and blinkenlights), and one of the small computers that it simulates is yours. I do not see into yours, but I move it around my big computers so that it's always available. Also, when you push the button, it patches the OS and reboots.
Power outages will not kill your computer. Your terminal will lose its connection. When you reconnect, your data is still there and can be saved. My center does not lose power, because it's centralized and has an elaborate backup power supply. You do not lose your data to hardware failure. Any big computer in danger of failure has all the smaller computers moved, and it is shut down for maintenance, which will consist of replacing all failing components. If I move your computer to another of my machines, you will not notice. Your computer will continue on as always, until your tell it to shut down. (Though, that's probably not a good idea, because then when you want to start it up again, you will have to call me and tell me to do so.)
You may still lose data to crashes. I do not see into your computer, and I do not patch the software. You will have to press the "Patch my OS and applications please" button on occasion. I can mirror the patches, so your download will be inconceivably fast. If you keep it patched, you will likely not experience crashes.
You will not experience hardware conflicts, ever. Your computer has no real hardware. Only simulated hardware, which is quite consistent to the underlying OS. Your terminal is hardware, but that doesn't need upgrading very much. Maybe a bigger screen, or a fancier keyboard, or a tablet, or a trackball mouse or something, but those will connect to virtual devices in your OS, which have been written in such a way that they cannot conflict with each other.
Your computer cannot be damaged by things that happen in your home. If someone breaks in and steals everything, you can just get a new terminal. If your terminal is vandalized, your computer is unaffected. New terminal. If your house burns down, your terminal may get destroyed, but your computer is fine. New terminal. If someone steals your terminal, this doesn't necessarily grant them access to your computer. (Presumably you have some form of authentication to prove that it's you at the terminal, and not just anyone who got a hold of it. Someone like your teenaged son, or a thief, or that one snoopy guest at your cocktail party.) If you move, just take the terminal with you, and the computer is waiting on the other side.
Now, on the downside: I will expect a rent for keeping your computer. It will be far less than buying one, but it will go on and on forever, on a monthly, or if preferred, weekly, basis. Part of this rent will pay for me to keep all the hardware working, part will buy new hardware so that everything can keep upgrading, part of it will pay the power bill, and part of it will keep a very powerful internet connection so that you can connect your terminal. More will be charged if you are particularly demanding of resources, like if you store hundreds of movies, or are a gamer and use lots and lots of CPU. Less will be charged if you do only light-duty things like checking email, writing letters, or spreadsheets. Data can only reach your terminal as fast as it can be transmitted, so if you have a slower internet connection, expect everything to move really slowly. Lastly, if I am unscrupulous, it is technically possible for me to break into your computer. This is a violation of my oath as a system administrator, but still technically possible. You will have to trust your datacenter maintainer. If you can't, you need to store your computer in a different datacenter. One you can trust.
I have various tricks that will improve your experience. The hardware can be set up such that data loss is impossible, as it is in at least two places at once. I can almost arbitrarily give you more disk space or memory, though really large loads will requite a fee, as it will mean I will need to buy more physical hardware. (And it'll take longer, as I'll have to physically set that up, and move your computer into it.) I probably have hundreds, or even thousands, of machines running, though you'll never see any but yours.
It might be great. Certainly corporations will like this, as virtual computers and terminals will mean fewer problems for their users, and they'll never know the difference. (Most users assume that the computer is contained in the screen, because that's the "face" they see day in and day out.)

No comments:

Related Posts Plugin for WordPress, Blogger...