Is it as simple as transmitting electrical energy?
Dec 19, 2010
While it seems so, in reality there are subtle differences. In any piped utility network (e.g., electricity, water or gas), the produce comes to your home and gets consumed. Can it work the same way in cloud computing? Think about it and you will realize that the stuff is not so simple as it seems.
When you need light, you just flick a switch and consume. When you want to cook, you turn a valve, light the stove, and consume. However when you want some computation done, you just do not flick a switch, settle down in a couch and start petting your dog. Just like in the cooking example, consumption here needs you to spend some effort aligned with that consumption. Even with a hand held calculator, computation is a two way interactive process. You type in your data, the calculator (computer) computes as directed and displays the result back to you. The important difference between using a light and using a computer is the interactive process. Interaction requires data flow in either direction.
In existing utility networks, the network is one way. The direction of flow of produce is always towards your premises. If computing has to be fed through a cable, the network has to be bidirectional. Data has to flow from you (from your premises) to the computer in the cloud. For a game, you input your name, challenge level you require and some other settings like sound levels, etc., The results will have to flow back to you. A game displays the game progress as an animated screen to you. This represents the data sent to you. You are also required to interact with a game using keystrokes, or a joystick or gamepad. More data flowing from you to the computer. This birectional process and resulting data flow in both directions is an important difference.
I want to highlight another important difference here. Many a time, when we do some computation, we want to store the results for future reference. If it is a game, we want to store the game state at the point of suspension so that we can resume from that point. It will be very boring to restart a game from ground up each time. We want to store our scores which are records of accomplishment.
In summary, we have noticed a couple of big differences:
- A bidirectional process required for consumption
- There is a need for storing the results of computation almost all the times
What challenge do these differences pose to the architects of cloud computing?
Interestingly, it sounds like we still need a keyboard, a display device and some kind of storage device to consume cloud computing. It seems like 60% of a personal computer is still required. We seem to need a network connection also. What is the big deal from cloud computing?