On the panel were Kevin Gibbs (Tech Lead & Mgr Google App Engine, Google App Engine), Yousef Khalidi (Distinguished Engineer, Microsoft), Werner Vogels (CTO, Amazon.com).
Intro
Werner Vogels opened, covering EC2 and Cloud Computing. He mentioned article “Amazon’s Risky Bet” and now a few years later, EC2 is a huge business with many new businesses and startups running on the platform.
Kevin Gibbs opened with information on Google App Engine; he said it’s different in that it focuses entirely on web applications. App Engine scales transparently as the application grows. He said it is perfectly horizontally scalable, so there’s no worry about running into a wall. The big difference with the App Engine is that you get a local set of development tools, which give you an exact representation of what you would get online. Pushing your changes is as easy as hitting ‘publish.’
Yousef told us Windows Azure is an operating system in the cloud. At the bottom level you have support services and storage, and above that you have the programming environment. This supports writing all sorts of applications in the cloud. The idea is to leverage the investment in the cloud. Announced last October, it is currently free, but they will have an SLA soon. Planned expansion commercially and more offerings in terms of new programming languages and more versatility in working with the stack and other components is coming.
EC2 has a US and European segment currently; no new information about other regions. Google App Engine uses Python currently, but they will announce a new language soon.
Werner said Amazon Web Services was initially designed and built for internal projects and was later opened up for other people to use. Werner said that Amazon still uses AWS for its primary services.
Scalability
Google had similar services internally, but built the App Engine to coalesce all of the Google cloud offerings in one package that is easy to use. App Engine uses BigTable and most of the other Google resources that are available. Mentioned: Jaiku was recently ported to App Engine.
It used to be, you had to build to handle spikes like being “Digged” but now, planning for scalability is different. Now you may have huge, sustained traffic at any time. App Engine does not support ‘joins’ with this in mind — the platform is optimized to facilitate scalability.
Windows Azure was to handle the long tail of projects built on Windows technologies, without all the infrastructure costs of adding and managing servers and other hardware as they grow.
Security
Werner does not have any announcements regarding this, but he did mention that it is important. On the level of Amazon services being provided, they consider it important that the right tools are offered to help customers manage security. They also offer a vertical space in the cloud for secure data such as HIPAA compliant medical data, etc.
Kevin with Google recognizes that security is also important. He said Google does conform to various security certifications. However, he wanted to touch on how Google approaches data security in the cloud. They take security very seriously.
Yousef said that security questions are asked very frequently by enterprise customers. He said there is an idea of ‘public lots’ versus ‘private lots’ in the cloud to meet security considerations. He couldn’t go into more detail but was willing to talk offline on it.
Future Challenges
Werner said future challenges included increased use of automation, such as automated management of applications, and also taking a closer look at how the apps scale, and only paying for the resources that their apps need to scale.
Kevin said it is an interesting challenge to think about moving to the cloud. He said as a programmer, there are a lot of new concepts to know about, like latency and consistency that will have to be thought about as they apply to cloud apps. He is hopeful that, as more knowledge about these challenges is revealed, we’ll have more of a consensus about those challenges and how to overcome them.
Azure invested in automation. You get an API and SDK, but automation is also built-in. In a way, they are between EC2 and App Engine at the moment.
Vendor Lock-In
Werner doesn’t have anything proprietary; they constructed their services to be tools instead of a framework to minimize having to write proprietary code that only runs on one cloud service. He is always asking customers what exactly they want in terms of standardization, but a lot of that is, admittedly, in the future.
App Engine is very concerned about lock-in. They think that as Google cloud apps succeed, it’s better for Google and better for the world. He said they want to be as portable as possible and adopt standards as much as possible. However, he gave the example that if you are not using SQL for a database, you move into an area that may not have any ‘standards.’
Portability
Yousef said the question has many layers. Azure wants to run any stack that can be run anywhere else. Currently, .net is supported, but they definitely want to support LAMP and other ‘legacy’ stacks for easy portability from other cloud services. He also mentioned that support for secure cloud data is important. Finally, he says that data portability (import/export) is very important and something they support. He said though, that developers have to have an eye toward writing ‘portable code’ to facilitate moving to another service if necessary.
Green Computing
Werner said that efficiency and green computing go hand in hand. Since they are priced very competitively, they are very focused on efficiency. This also helps their offerings be as green as can be. There are seven metrics for efficiency that cloud providers should share to allow customers to make the right choice.
Google is built around using the absolute minimal resources it needs.. apps do not use resources if there aren’t any requests for the application.
Azure said they are actively looking at revamping the way their servers in the cloud are utilized to improve efficiency, but they don’t have any official announcements at the current time.
Hybrid Platforms
Werner said it’s still early to determine the roadmap here; there’s potential for a lot of combinations of different hosting options leveraging the cloud, but they can’t really say what will be directly supported in the future.
Yousef spoke in a general way about how enterprise customers move from their traditional models to the cloud, and he says that it is going to be a space to watch in the next year. He said for these customers, ease of migration to the cloud is going to be of primary importance.
Wrap-Up
Is cloud computing focused on high-performance computing?
Werner: Many big customers are also HPC customers. He said the cloud is good for that.
Kevin: Actively looking in to it, but app engine isn’t for HPC.