Home  >  

What SimpleDB Could Do For Your RIA

Author photo
| | Comments (2)
AddThis Social Bookmark Button
airLogo-Shadow.jpg

Amazon's latest release in its arsenal of web services is SimpleDB (still in private beta). This was an obvious advance for Amazon who already has a powerhouse group of web services including Elastic Computer Cloud (EC2), Simple Storage Service (S3), and the Simple Queue Service (SQS). The previous services allowed a developer to store static assets, deploy virtual servers, and create a line of communications between those servers. However, there was no easy way to replicate dynamic data between the virtual servers. SimpleDB fills this void.

What is SimpleDB

SimpleDB is a database built on Erlang that is accessed via REST and SOAP calls. With it you instantly gain access to a system that is spread across multiple nodes. You also gain a system that is fault tolerant, geographically distributed, and highly available. It is possible to achieve this distributed environment with MySQL or SQL Server, but at a huge cost (both in hardware and personnel to manage the system). In this case, Amazon does all of the management. On your end - it just works.

The Challenges

Does all of this sound too good to be true? You first need to understand that SimpleDB is far from a traditional relational database, so working with SimpleDB requires a different way of thinking. It has a schema-less design, stores all data as strings, and doesn't use SQL. These differences are key. For applications to properly utilize the power of SimpleDB, they should be created from the ground up for it. Retro-fitting an application for SimpleDB could be quite difficult.

SimpleDB employs the concept 'eventual consistence'. Because of the way that data is spread across multiple nodes, not all data is updated simultaneously. If one user was pulling data from one node, and you were to update a piece of data on another node - that change might not be visible to the user immediately. If you have not encountered this concept before, you might want to read Werner Vogel's (CTO of Amazon) article on Eventual Consistence.

Obviously these differences make SimpleDB a prime candidate for some projects and an impossibility for other projects. Amazon already uses SimpleDB for some of its core services, but from what I have heard they also still use more traditional relational databases for other services. Knowing when to use SimpleDB and when not to use it is key.

Fee Structure

As with most of the Amazon web services, the free structure is based on multiple factors. First, you will pay for data transfer (both in and out). Second, Amazon will calculate how much disk space your data takes up and charge you for that space. Finally, you will be charged for the processor time used to complete your requests.

Conclusion

As stated earlier, SimpleDB is still in private beta, so you will have to request an account to be able to access the service. If you get one of the beta accounts, you can take advantage of Amazon's developer center for SimpleDB. Libraries have already been created for Java, C#, VB, PHP, and Perl.

Comments

2 Comments

Hi all
I am in your situation, and I just bought two books : "PPK on javascript" (PPK, quirksmode.org) and "pro javascript techniques" (John Resig, jquery, ...) IMHO they are two really good books to re-learn modern javascript. ankara evden eve nakliyat

Ashley Tate said:

Hi David,

I've just open-sourced a high-level C# for Simple DB named Simple Savant. The project is here: http://www.codeplex.com/SimpleSavant

It addresses some of the limitations of working with SimpleDB vs a relational database. You may want to check it out.

Regards,
Ashley

Leave a comment


Tag Cloud

Question of the Week: Dream App

If you had an unlimited budget and unlimited resources what application would you build and why would you build it?

Answer

Latest Features

Recommended for You

@InsideRIA on Twitter

Archives

  • Or, visit our complete archive.  

About This Site

Welcome to the premiere community site for all things RIA sponsored by O'Reilly Media and Adobe Systems Incorporated.