15

確かに単一ノード クラスタを実行できますが、ある程度のフォールト トレランスが必要です。

現在、2 台のサーバー (8GB RAM、プライベート VLAN @1GigE) をリースする余裕がありますが、3 台はリースできません。

私の理解では、Cassandra クラスターに必要な最小ノード数は 3 です。これは、2 つのノード間に過半数が存在する可能性はなく、バージョニングの競合を解決するには過半数が必要であるためです。ちょっと待って、「ベクトルクロック」とRiakのことを考えていますか?あっ!Cassandra は競合解決にタイムスタンプを使用します。

2 ノードの場合、推奨される読み取り/書き込み戦略は何ですか? 通常、すべての (両方の) ノードに書き込み、1 つのノード (N=2; W=N/2+1; W=2/2+1=2) から読み取る必要がありますか? Cassandra は 2 つのノードに対しても通常どおり Hinted-Handoff を使用しますよね?

これらの 2 つのサーバーは、同じデータ センター FWIW にあります。

ありがとう!

4

1 に答える 1

24

RF=2、clustersize=2 システムで可用性が必要な場合、ALL を使用できないか、ノードがダウンしたときに書き込みができなくなります。

これが、2 つではなく 3 つのノードを推奨する理由です。これにより、クォーラムの読み取りと書き込みを行うことができ、単一のノードがダウンした場合でも、強力な整合性と可用性の両方を維持できます。

わずか 2 つのノードで、強力な一貫性 (ALL で書き込み) と、単一ノード障害に直面した場合の可用性 (ONE で書き込み) のどちらが必要かを選択できますが、両方を選択することはできません。もちろん、ONE cassandra で記述した場合、結果的に一貫性を持たせるために、必要に応じてヒント付きハンドオフなどを行います。

于 2010-02-25T15:18:19.113 に答える