2013-04-08 52 views
1

我想了解以下內容, 假設我們有兩個數據中心DC1和DC2,每個數據中心都有兩個節點。 現在我已經形成了令牌DC1:1 - DC2:1 - DC1:2 - DC2:2的令牌環。 讓我們假設,我沒有配置跨DC的我的副本。 現在我的問題是,如果我將數據寫入DC2中,密鑰是僅映射到DC2中的節點還是映射到令牌環中的任何節點?跨cassandra多個數據中心寫數據

回答

1

如果你的密鑰空間複製選項設置爲

{DC1:2}

(我想這是你的不跨的DC配置副本的意思),那麼數據將只存儲在DC1因爲DC2的複製因子隱含地爲零。您可以將數據寫入任何節點(DC1或DC2)並將其轉發。這是因爲在Cassandra中寫入的目的地不取決於寫入的節點。

但是,如果你使用

{DC1:2,DC2:2}

那麼所有的數據將被寫入到所有節點,再次無論在哪裏寫而成。