It's the earliest of days of smartphone cloud computing. But it 's time has arrived as demonstrated by a group of researcher who have showed how smartphones can be used to create a self-contained cloud computing network.
Using smartphones to create a cloud computing infrastructure is a bit quizzical. Each smart phone has a fraction of the processing power of a remote server. But there are advantages to a mobile device oriented network. Data does not have to travel to remote servers in a data center. Overall, the research demonstrates the advances we should expect as smartphone-based cloud computing networks begin emerging as an alternative to traditional data centers.
MapReduce is the distributed processing technology originally developed by Google. It networks remote servers, usually described as clusters. It's one of the most widely used algorithms in cloud computing.
MapReduce takes large chunks of data, chops it up and sends it out to be processed by all the nodes in the cluster. Logically it goes to reason then that it could be used on smartphones in the same manner as it does in a massive server farm.
The misco site states:
"The misco System consists of a master server and several worker client nodes. The server is in charge or keeping track of the user applications, application data, scheduling and assigning tasks to workers. The clients are responsible for requesting work from the server, retrieving the proper module and data files, performing the data processing and then returning the results to the server."
The technology being implemented is100% in Python. Designed for mobile devices, misco should be able to run on any system which supports Python and its networking libraries.
The researchers include academics and two scientists from Nokia's Research Lab in Palo Alto. Ville Tuulos specializes in cluster computing, scalable systems and various methods for data mining and search. He is the author of a book about mobile python that after reading "you will know how to turn your mobile phone to an artistic tool, web server, or a robot brain!"
The research findings reflect on the current issues with weak networking connections.
With a giant server farm, the data gets passed from the device over wireless networks to the cluster where it gets processed and sent back to the device. Networks can be quite slow, causing latency. With smartphones, the issue can be mitigated.
The researchers wanted to know how MapReduce would work with the data being kept close to the device. In some situations, the researchers did find that the data could be processed faster using the smartphone cluster.
But when a node goes down on such a small network, the quality decrease goes down considerably.
One of the challenges of implementing MapReduce on cell phones is that in a regular server farm, the failure rate is pretty low, and the latency of a signal transmitted between any one server (node) and another is also relatively low. Not so on cell phones. This means that, among other things, as the failure rate of any one "node" in the system increases (i.e., the phone is out of range, out of commission, etc.) the speed of the Misco processing network degrades exponentially.
You can see where this is going. It's plausible that every mobile device could be a node. That would potentially create a super cloud that is run entirely by the mobile devices that we carry around with us all day.
Nokia helped with the research. They have a different perspective than the Web players like Google. It's a long way off before we have mobile-powered cloud infrastructures but the capability is there and it's just time before more applications emerge.