Web APIはその名の通り、Web上で提供される。そのため、ネットワークにつながっていない状態では利用することができず、不便な思いをする。常時接続が当たり前になりつつあるが、近所のカフェや移動時間などで開発を行いたいときもあるだろう。

Picture 441.png

サービスを立ち上げたところ

 

また、Amazonが提供する各種Web APIの中には有料で提供されるものもある。この場合は開発中もWeb APIを利用する上で課金されることになってしまう。開発中はバッチやテストなどで利用頻度は激しいだろう。その度に課金されてしまうのではスムーズな開発が行えない。そこで利用するのがこれだ。

今回紹介するオープンソース・ソフトウェアはSimpleDB/dev、Python製のSimpleDBクローンだ。

SimpleDB/devはAmazon Webサービスの一つ、SimpleDBをローカルでも動作させられるものだ。SimpleDBはスキーマ情報を持たないデータベースで、簡単にデータの登録および取得ができる。

Picture 442.png

テストスクリプトを実行したところ。XMLデータが返ってくる

 

SimpleDB/devはデフォルトでポート番号8080で立ち上がる。サービスが立ち上がったら、開発用アドレスとしてlocalhostを設定しておき、開発を行えば良い。SimpleDB/devはSimpleDBの置き換えを目指すものではないので、開発用として考えよう。

仕様としては2007年11月07日版REST APIの機能をサポートしている。アクションは全てをサポートしており、HTTPレスポンスも同じものになるように作られている。なお、逆にない機能としてはSOAP APIへの対応、認証、タイムスタンプ形式のチェック、HTTPSとなっている。

同じような機能を持ったライブラリは他にも存在する。だがAPIとの接続形式は変わらないので実装言語に依らず、自由に選択ができるのが魅力だ。Rubyの開発でも、PHPの開発でもクライアントライブラリさえあれば容易に使えるだろう。SimpleDBを使った開発を行われる方は要チェックだ。

 

simpledb-dev - Google Code

 http://code.google.com/p/simpledb-dev/