The Amazon web services team just launched Amazon S3, "a simple web services interface that can be used to store and retrieve any amount of data, at any time, from anywhere on the web."
Michael Arrington at TechCrunch gushes about the new service, saying, "S3 changes the game entirely," and, "Entire classes of companies can be built on S3 that would not have been possible before."
Similarly, Mike at TechDirt says, "It's like Amazon just provided much of the database and middleware someone might need to develop a web-based app."
But, there's two obvious problems with building anything on top of S3: latency and reliability.
On latency, despite Amazon's marketing goo, any time you go across the internet to a remote machine to get data, you're looking at 100ms+ of latency. Compare that to a 1-3ms for local disk and effectively 0ms for local memory (or memory of local machines on a LAN) and you see the problem. There's no way you can make more than a couple data requests to S3 in the 0.5 - 1 seconds you have to serve your web page in real-time.
Reliability is the second problem. Amazon says the system is reliable -- "99.99% availability ... All failures must be tolerated ... without any downtime" -- but you can see if they're willing to stand behind that by looking at the legal guarantees on uptime. There are none. The licensing agreement says the service is provided "as is" and "as available".
I don't think it would be wise to use this for a serious, real-time system. As others have pointed out (in the comments to the TechCrunch post), it might be able to be used for an asynchronous product like online backups.
Even for online backups, there are problems. You must be willing to tolerate the lack of a guarantee of being able to recover your data once stored. And, with Amazon's fee of $15/month for storing 100G, it would be hard to add a surcharge to support your little online backup startup on top of Amazon's fees and still have a price point on your service that is attractive to customers.
Amazon S3 is an interesting idea. I think we will see some cool things implemented on top of S3, smaller projects by hobbyists, I'd think. But this is not a game changer for startups.
Update: While I do see a little support ( ) for being skeptical about Amazon S3, it is clear that I am swimming against the tide (        ) on this one. Definitely worth reading the more optimistic folks and coming to your own conclusion.
Update: About two weeks after launch, Amazon S3 had a seven hour outage. As I said, the two obvious problems with building anything serious on top of web services like S3 are latency and reliability.
Update: Five months later, the CEO of SmugMug raves about S3. Even though they are only using it as backup, it is a great counter-example to the arguments I made above. [via New Media Hack]
Update: Nine months later, Amazon S3 has an extended outage that causes some to question the reliability of the service and the wisdom of using it for real-time applications.
Update: A year later, Don McAskill posts a presentation (PDF) with plenty of great details about SmugMug's experience using Amazon S3. They are mostly positive, though reliability and speed are concerns.