June 19, 2009 - 2:27pm

We've been using Amazon's SingleDB for a few projects recently.  It is a really neat service, basically a database of sorts hosted by AMZN and with their guarantees of scalability and availability.

Although we've been happy with the service, we found the tools available to be a bit lacking.  There is a Firefox plugin which works ok, but which did not support standard SELECT statements and was cumbersome to use for updates, inserts and deletions.  There are other options as well, both commercial and not, but in the end they tended to have a more intensive user interface than we were looking for.

We finally came across the SimpleDB Query Tool, which we found satisfied a lot of our needs.  It provides a nice interface to query into SDB using the standard SQL select syntax SDB supports natively.  Although this worked well, it only made us realize that what we really wanted was a SQL interface to all the functionality of SDB, from SELECTS, to INSERTS all the way to DELETES, DESCS and DROPs.

So I spent the last day building just that.  It uses the interface of the SimpleDB Query tool as inspiration but rewrites the back end to use the official Amazon SDB libraries.  I hacked away at a SQL parser to give us a reasonably good base for interpreting standard SQL syntax for UPDATES and INSERTS which are not natively supported by SDB.  We just parse them, then translate them to the appropriate SDB actions.

Hopefully some others in the community will find it helpful, here's a quick screenshot:

To use it just download the sdbcli.jar and then run at the command line:

 java -jar sdbcli.jar <amzn key> <amzn secret>

Of course, all usual disclaimers apply, use at your own risk.  This is very much alpha software, we are not responsible if it eats your children and slaughters your kittens.

Comments

your article is very nice

Post new comment

The content of this field is kept private and will not be shown publicly.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <p> <br>

More information about formatting options