Panellists discuss the difficulties in creating and scaling applications
in the cloud at the TechCrunch Cloud Computing Roundtable in March
2009, held in Mountain View, California
Scott Dietzen - Yahoo senior vice president of
Communications Products, believes it is overly optimistic to expect
one can just place legacy applications in the cloud and for them
to work perfectly.
Werner Vogel - Amazon CTO, believes apps immediately
need the same scaling capabilities as the platforms they exist on
Mike Schroepfer - VP of engineering at Facebook,
explains how and why two different functions on Facebook may have
a similar interface to the user but completely different back end
infrastructure.
What is the Reality of Applications Being Transferred to Cloud?
We are possibly being somewhat optimistic as to expecting that you
can just take an application and put it into the cloud, or that
all applications will end up in the cloud. For the vertical applications,
there is a huge amount of work that goes into:
Linear Scalability
Healing nature of when disks and servers fail
Troubleshooting
Continuous change
These are hard issues to resolve.
If you are looking at a start up and looking for a software platform
to run an application, cloud will be huge. There will be no need
to worry about the logic that drives the user experience.
However, it is common for very different changes in application
usage and access patterns that may drive changes in your core architecture.
For instance, according to Mike Schroepfer there is about a billion
status updates on Facebook of a say 200 bytes per update and about
a billion photos uploaded each month. The storage and access patterns
of these are very very different. It would be crazy to put them
on the same back end. Facebook has a completely engineered back
end for each, highly optimized for the nature of the transaction,
the cost and the service performance to the user. These models are
distinctly different and require a different architecture model.
Verner Vogels – Amazon CTO. Applications developed for a
platform each have different scalability needs. If we look at the
Facebook application PlayFish – this Flash based game was
developed specifically for the Facebook platform. Such a popular
game – if you needed to design all the architecture needs
for this game, it would never have been launched. As a business
wanting to minimize risk in building infrastructure, you are better
to go for PaaS otherwise it would never get off the ground.