Thoughts on Google App Engine
First: Very cool.
Next: I think it’s interesting that Google has basically taken a sniper scope out and aimed it at a specific cloud computing target. App Engine is only for web applications. No batch computing, no cron jobs, no CPU/disk/network access, etc.
I think this is very smart of Google. Rather than attacking Amazon head-on, Google has realized there’s a huge playing field for cloud computing, and are attempting to dominate another portion of it, one where they have a lot of expertise. Very good business move, imho.
Will we use it? I wouldn’t be surprised. I’ve long thought that we’ll continue to mix in web services from a variety of providers, and it looks like App Engine can solve a slice of our datacenter need that other providers don’t yet provide.
I’m more than a little concerned, though, by how much vendor lock-in there is with App Engine. At first glance, it doesn’t look like the apps will be portable at all. If I want to switch providers, or add in other providers so I’m not relying solely on Google, I’m outta luck.
I’m hopeful other languages get supported, too. I think Python is great – don’t get me wrong – but we have a lot more experience with other languages, so there’ll be a learning curve.
Finally, I’m dying to find out what pricing for an application of our scale will look like. I can see some immediate, obvious things I’d like to try to do on App Engine, but the beta limits aren’t gonna cut it for us. :(
Will it replace Amazon? It sure doesn’t look like it from where I sit. In fact, I don’t see this as much of a competitor to Amazon Web Services. There’s some overlap in some small area (hosted web apps on EC2), but I doubt that’s the bulk of Amazon’s business. As I said, we’ll likely end up using both (and other providers as they come along, too).
My favorite bit? In theory, Google has solved the data scaling problem. I don’t mean raw binary (blob) storage, which S3, SmugFS, MogileFS, and plenty of other things have solved, but the “database” scaling problem. Every popular web app runs into this problem, and it’s typically solved with a combination of memcached, federation, and replication. But it’s messy. In theory, Google has automated that piece for us. I can’t wait to play with it and see if that’s true.
I also can’t wait to see who else is going to wade into this fray. Sun? Microsoft? Yahoo? IBM?
Bring it on!