質問

両方のプロジェクトを見ていますが、違いがあまりわかりません

カサンドラサイトより:

Cassandra は、拡張性が高く、結果整合性があり、分散型で構造化されたキーと値のストアです。Cassandra は結果整合性を備えています。BigTable と同様に、Cassandra は、一般的なキー/値システムよりも豊富な ColumnFamily ベースのデータ モデルを提供します。

CouchDB サイトより:

Apache CouchDB は、RESTful HTTP/JSON API 経由でアクセスできる、分散型、フォールト トレラント、スキーマフリーのドキュメント指向データベースです。

とはいえ、各プロジェクトの具体的な違いは次のとおりだと思います。アクセス方法、書き言葉など。しかし、例を挙げると、あなたが話すとき、 ソルル または スフィンクス どちらもインデクサーには大きな違いがありますが、最終的にはインデクサーであることがわかります。

ここで、Cassandra と CouchDB は非リレーショナル データベースであり、場合によっては一方が他方を置き換えることができると言えますか?

役に立ちましたか?

解決

CouchDB はドキュメント ストアです。そこにドキュメント (JSON オブジェクト) を配置し、それらに対してビュー (インデックス) を定義します。オブジェクトは、潜在的に深い構造を持つ任意の複雑さにすることができます。さらに、それらは、ある一貫したスキーマに従うことに制約されません。

Cassandra は、不規則なテーブルのキーと値のストアです。行を格納するだけで、各行には値を持つファミリーにグループ化された名前付き列のセットが含まれます。それは BigTable に非常に近いように思えます。BigTable では、(SQL データベースとは異なり) 各行が同じ構造である必要はありません。値には何らかの構造がある可能性がありますが、この種のストアはそれについて何も知りません。値は単なる文字列/バイト シーケンスです。

はい、どちらも非リレーショナル データベースであり、おそらく適用可能性においてかなりの重複がありますが、明らかに異なるデータ編成モデルを持っています。おそらく、それぞれを強制的にエミュレートすることはできますが、各モデルは異なる一連の問題に最もよく対応します。

他のヒント

CouchDB には、ごく少数のオープンソース データベース テクノロジに存在する機能があります。オフラインレプリケーション。CouchDB は、アプリケーションをネットワークのエッジで実行できるように設計されています。これらのアプリケーションは、インターネット接続に障害が発生した場合でも使用できます。

オフライン レプリケーションを利用して大規模なクラスターを構築することもできますが、CouchDB は、単一のサーバー、データセンター、さらにはスマートフォンで実行されているかどうかに関係なく、堅牢かつシンプルになるように設計されています。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top