私は、Amazon EC2 でホストされるアプリケーションを作成しています。保存されるデータの多くは、よりドキュメント指向です (それらのドキュメントに関連するツイートなどを保存するだけでなく)。
今、私は岐路に立っています... simpleDB を使用するか、couchDB を使用する必要がありますか? どちらを使用する場合の長所/短所は何ですか? 両方とも一ヶ月試してから決めたほうがいいですか?
私は、Amazon EC2 でホストされるアプリケーションを作成しています。保存されるデータの多くは、よりドキュメント指向です (それらのドキュメントに関連するツイートなどを保存するだけでなく)。
今、私は岐路に立っています... simpleDB を使用するか、couchDB を使用する必要がありますか? どちらを使用する場合の長所/短所は何ですか? 両方とも一ヶ月試してから決めたほうがいいですか?
Amazon SimpleDB と CouchDB の比較という記事が役に立つかもしれません。
また、 MongoDBが優れたパフォーマンスを発揮することもわかりました。
コードが EC2 にある場合、SimpleDB はおそらくコードと同じデータ センターでホストされることに注意してください。これにより、SimpleDB は EC2 サーバーからのリクエストに対して CouchDB よりもレイテンシが低くなります。また、Amazon は EC2 と SimpleDB の間の帯域幅コストを請求しません。
これらの理由から、SimpleDB は EC2 で実行されるコードに対して高速かつ安価であると期待しています。
SimpleDB は Amazon によってホストされ、維持されます。CouchDB はすべてあなた次第です。それが大きな違いです。
SimpleDBを使用していくつかのライブソリューションを構築しましたが、特にその前にキャッシュレイヤーがある場合は、非常にうまく機能します(memcached etalを参照)。ただし、最近、新しいプロジェクトの調査を開始し、データを制御できる主な理由からCouchDBに移行することにしました。
SimpleDBへのコミットメントが高まるにつれ、他のものに移行することはますます難しくなり(ベンダーロックインの喜び)、率直に言って、それは私たちのビジネスにとって素晴らしいことではありません。
私はクラウドテクノロジー、特にAmazonの強力なエバンジェリストであり続けていますが、SimpleDBを使用するよりも、EC2でcouchdbを実行する方がはるかに良いと感じています。
ロジャー
可能であれば、つまり、どちらかのデータベースで実行するアプリケーションの合理的なサブセットを構築できる場合 (API がまったく異なるため、これは簡単ではない可能性があります)。 .
.Net 環境で開発する場合、Simple Savantと呼ばれる SimpleDB 用の優れたライブラリがあり、統合が非常に容易になります。