Amazon DynamoDB – Is scalability the key to life?

So I am reading the big announcement about Amazon’s DynamoDB and I literally find myself getting excited…seriously!!! When I hear things like, “tables can also grow without limits as their users store increasing amounts of data” and “DynamoDB automatically spreads the data and traffic for a table over a sufficient number of servers to meet the request capacity specified by the customer,” my geek-heart begins to sing! Come on people…isn’t scalability the key to life!

According to Amazon, DynamoDB “provides fast and predictable performance with seamless scalability!”  Fast and scalable…these are usually the first two words spoken by any customer building an enterprise software system!  According to Werner Vogels, CTO of Amazon, “You tell the service the number of requests it has to handle per second, and it does the rest automatically. So we spread the data across enough hardware to provide consistent performance, which also protects against downtime. Before DynamoDB, this was something developers actually had to manage themselves.”  He had me at “automatically”…which translated into non-tech speak is “automagically”!

Sounds too good to be true…right?  So of course the question always looming in the room is…how much do I have to PAY to play???  The million dollar answer, according to Amazon is…”request capacity is priced at cost-efficiently hourly rates as low as $.01 per hour for 10 units of Write Capacity or 50 strongly consistent units of Read Capacity (if you use eventually consistent reads you can get twice the throughput at the same cost, or the same read throughput at half the cost) Also, replicated solid state disk (SSD) storage is $1 per GB per month. Our low request pricing is designed to meet the needs of typical database workloads that perform large numbers of reads and writes against every GB of data stored.”   In non-tech language, according to SimpleRNA it’s about $15/month for a “small” app (10 units of Write, 50 units of Read, and 1 GB of Indexed data).  Basically, “you only pay for  the database capacity provisioned (number of reads and writes per second, size of items) and the usage.”  Bottom line..the more you read and write, the more you pay!  Didn’t our parents say that the more we read and write the more WE get paid?  I guess this does not apply to technology!

I am still thrilled to the see what the Amazon DynamoDB service has to offer up to the world of software development.  Although still in beta it has addressed the core problems of database management, performance, scalability, and reliability and I am sure many a software developer is thrilled by the potential of NoSQL product! So the question is…who wants to go first?