cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Apache Wiki <wikidi...@apache.org>
Subject [Cassandra Wiki] Update of "AntiEntropy_JP" by Shinya Kawanaka
Date Wed, 09 Jun 2010 04:53:31 GMT
Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Cassandra Wiki" for change notification.

The "AntiEntropy_JP" page has been changed by Shinya Kawanaka.
http://wiki.apache.org/cassandra/AntiEntropy_JP

--------------------------------------------------

New page:
!AntiEntropy とは、存在する(ことになっている)データのレプリカを全て比較し、全てのレプリカを最新のバージョンに置き換えることを言います。

Cassandra の実装は [[ArchitectureAntiEntropy|よりリッチなデータモデルをサポートする変更(ができること)]]
を持った Dynamo に基づいています。
[[http://www.allthingsdistributed.com/2007/10/amazons_dynamo.html|Amazon's Dynamo]] の 4.7
節から引用します。

  . To detect the inconsistencies between replicas faster and to minimize the amount of transferred
data, Dynamo uses Merkle trees. A Merkle tree is a hash tree where leaves are hashes of the
values of  individual keys. Parent nodes higher in the tree are hashes of their respective
 children. The principal advantage of Merkle tree is that each branch of the tree  can be
checked independently without requiring nodes to download the entire [...] data set.
  . (レプリカ間の不整合をより早く検知しデータ転送量を最小化するために、Dynamo
は Merkle 木を使っています。Merkel 木とは、ハッシュ木であって、葉が各キーの値のハッシュ値になっているもののことです。より上位の親ノードは、その子供のそれぞれのハッシュ値になっています。Merkle
木の原理的なメリットは、枝が全てのデータセットをダウンロードせずに独立してチェック出来ることです。)

Cassandra の anti-entropy の実装の重要な差異は、Merkle 木が column family ごとに作成され、それらは近隣のノードに
(Merkle 木を?) 送るのにかかる時間以上にはメンテナンスされないことです。代わりに、木はメジャーコンパクションの間のデータセットのスナップショットになっていることが保証されます。すなわち、超過データはネットワークを経由して送られるかも知れませんが、これは
local disk の IO をセーブします。これは非常に大きなデータセットについては好ましいことです。

Mime
View raw message