2015-09-08 32 views
1

可以組織數據中心之間的單向複製(DC)。 比方說,我們有兩個區議會:A和B. 我想在特區的寫入節點的所有數據被複制到DC B,但沒有寫在DC乙方應去A. 的數據是否有可能與卡桑德拉?Cassandra源代碼 - >接收器複製

回答

0

你可以通過使用兩個密鑰空間來接近它。在Cassandra中,密鑰空間控制着每個數據中心中每個分區的複製數量。

因此,對於數據,你寫一個你想B中複製的,你會在定義在這樣兩個數據中心複製一個密鑰空間創建表:

CREATE KEYSPACE both WITH replication = { 
    'class': 'NetworkTopologyStrategy', 'A': '1', 'B': '1'}; 

但是,如果你寫這個密鑰空間中DC B,它也將複製寫入到A.

然後,對於要寫入DC B的數據,如果沒有將其複製到A,您可以在僅保留B中的副本的密鑰空間中創建表,如下所示:

CREATE KEYSPACE bonly WITH replication = { 
    'class': 'NetworkTopologyStrategy', 'B': '1'}; 

使用第二個密鑰空間,實際上可以向DC A中的節點發出寫入,並且數據將被路由到B並且只存儲在那裏。