14

私は、データ サイズと SQL クエリが重くなるアプリケーションに取り組んでいます。Cassandra と Amazon SimpleDB の間で考えています。この種のシナリオでどちらがより適しているか教えてください。

Cassandra データのインデックス作成は Amazon simpleDB より優れているように見えますが、Amazon SimpleDB に比べてクエリのオプションが少なくなっています。Amazon SimpleDB の I/O レートが高いようです。

複雑なユース ケースのほとんどは、ユーザーがいくつかの興味深いアクティビティに絞り込むことができるさまざまなフィルターを使用したユーザー アクティビティです。

これら 2 つ以外に、よりクリーンで優れた解決策があると思われる場合は、提案してください。

4

2 に答える 2

9

SimpleDB はシャーディングによってのみスケーリングでき、テーブルごとに 10 GB のデータ サイズ制限があり、クエリのパフォーマンスはレコード数と同等です (例: 100 万のレコードがある場合は劣ります)。また、Google のデータストアは simpledb よりも低速です。Cassandra ははるかにスケーラブルで、トラフィックの多いサイトで使用され始めました。大量のデータで高い書き込み速度が必要な場合、無料でこれ以上のものはありません。カサンドラ調査

読み取り/書き込み比率が読み取りで %90、書き込みで %10 のような場合、テラコッタまたは infinispan と postgres がより適しています。postgresql には無料のクラスタリング オプションがいくつかありますが、成熟したものはありません (ほとんどがプロトタイプです)。

別のオプションはシャーディングです。Hiberntae と NHibernate はシャーディングをサポートしています。それらをpostgresまたはmysqlで使用できますが、結合が失われます。

よろしく

于 2009-12-10T06:53:02.203 に答える
4

カスタム nosql セットアップ (Cassandra、mongodb、redis など) は、単純な db よりも少量で非常に高速ですが、すべてのサーバー管理構成、災害復旧、バックアップなどの負担がかかります。

その後、アプリの規模が拡大するにつれて、ますます複雑化するデータ レイヤーを管理し、バックアップと安全性を確保するために、ますます多くの時間を費やすことになります。

単純なデータベース (および同等のデータ ストア) を使用すると、スケーリングに伴うその懸念が解消されます。

そのため、Clopud ストレージを検討したり、独自のセットアップを展開したりする場合は、災害が発生したときに、特にすべてを回復するために何をしているのか正確にわからない場合は、このことを覚えておいてください。

于 2011-05-06T17:37:44.253 に答える