August 20, 2007
Today GigaOM announced that some Indian company created “Bucket Explorer” - a first File Browser / File Explorer tool written specifically for Amazon S3 service (Amazon’s web storage service).
This is yet another news, showing how popular Amazon Web Services are recently becoming - at least among some companies out there. The fact that AWS is gaining it’s momentum is not a big surprise - the company made a brilliant move when they announced a line of their WebServices scoring a great amount of excitement among some IT professionals with their products like S3 (cheap, redundant online storage) and EC2 (computing grid system on-demand). And it is true - those products are not only very aggressively priced but also offers a great deal when it comes to almost instant scalability for some web businesses. In short, there’s no doubt that AWS are not only brilliant piece of engineering, but also an excellent product with some great potentials to be used by many web companies…
But apart from the technical or usable point of view, one cannot forget the business side of one’s project - and when it comes to business and risk management, things suddenly doesn’t look that good anymore.
Take Amazon S3 (storage) service - it can be used by companies to provide cheap, redundant and fast storage for big files and data sets. One could e.g. have only one web server with main web application (website) and use external storage (Amazon S3) for all the big and chunky files. The Amazon S3 is suppose to be very reliable - scoring at least 99,99% of uptime.
In April 2006, Amazon’s S3 was unavailable for nearly 7h. Same thing happened in January 2007. For anyone using Amazon S3 as business outlet, this was most likely a serious business problem (similar to skype outage which we have seen in a last couple of days). But for those who would try to “get some justice” from Amazon over their system failure, there was a nasty surprise out there - the “Terms and Conditions” (read the fine print!):
“We further reserve the right to discontinue Amazon Web Services, any Services, or any portion or feature thereof for any reason and at any time in our sole discretion. Upon any termination or notice of any discontinuance, you must immediately stop your use of the applicable Service(s), and delete all Amazon Properties in your possession or control (including from your Application and your servers). Sections 3, 5, 8 - 12, any definitions that are necessary to give effect to the foregoing provisions, and any payment obligations will survive any termination of this Agreement and will continue to bind you and us in accordance with their terms.”
Reading such statement must have been kind of a shock for some - but nevertheless, even now there’s a lot of companies out there which will want to use Amazon as their business services provider - the question is, at what price?
I don’t want to say here that AWS is unreliable and you shouldn’t base your service on it. All I want to say is that one needs to think about risks it brings to your business. Can you suffer major several-hour downtime? If not, don’t base your core services on external services like AWS. Avoid putting all eggs into one basket and always push for fully redundant solutions. AWS in itself is not a bad engineering - in fact, its brilliant engineering. But like everything around us - it fails sometimes. Using AWS as ONE of the (many) resources (that you use) is much better way to use it than making it responsible for 100% of your web infrastructure… Are you using S3 as storage solution? Good, but don’t forget to make a second copy of all those files somewhere else as well. Using EC2 as your default scalability solution? Great, but have a “disaster” option (like 2nd, redundant server) somewhere else as well. When things will go nasty, you cannot trust people who say that you.. cannot trust them! (and that’s what they say in T’s and C’s of AWS - at least thats how it sounds for me!).