「Cassandra」と「Dynamo」の両方で、マークル ツリー (別名ハッシュ ツリー) がデータ同期に使用されます。
他のハッシュ関数と同様に、異なるデータが同じハッシュ値を持つ可能性があります。
[y!=x] であるが [hash(x) = hash(y)] である x と y が存在する
NOSQL の「ビッグデータ」が大きくなるにつれて、そのようなデータに遭遇する確率は高くなります。
これは、データ セットが大きくなるにつれて、Merkle ツリー内の異なるノードが同じ親ハッシュを生成することはほぼ確実であることを意味します。
このような場合、クラスター内の 2 つの異なるマシンがマークル ツリーをトラバースすると、データが一貫しているという誤検出が発生します。ツリーのその枝にそれ以上データが書き込まれなければ、マシンは永遠に同期されないままになります。
これはどのように処理されますか?