Cassandra
nodetool repair 是否修復下一個節點?
假設我們有一個帶有以下環的 Cassandra 集群:(
A -> B -> C -> D
沒有虛擬節點),並且我們假設所有數據都儲存在RF=2
. 現在讓我們說它B
死了,給我們留下了下面的環A -> C -> D
。這意味著C
將需要A
’ 的主要範圍D
的副本和 ’ 的主要範圍的副本B
。(B
的主要範圍不需要復製到,C
因為C
已經擁有一個副本)。我的問題如下:
- 如果我
nodetool repair
在它上面執行,C
它將獲得A
的主要範圍的副本,但它會將 的主要範圍的副本流式傳輸B
到D
嗎?- 如果我繼續執行
nodetool repair -pr
,A
它會將其主要範圍傳輸到C
嗎?- 如果我繼續執行
nodetool repair -pr
,C
它將流式傳輸B
的主要範圍D
嗎?
這個問題在 StackOverflow 上被問及回答,關於 nodetool repair -pr 的澄清。
要在這裡回答這個問題,答案是:
- 是的。
- 是的。
- 是的。