2010-12-22 47 views
4

我想知道如何實現自定義數據複製策略,我可以完全控制每個記錄的複製方式(可以通過覆蓋分區程序和/或ReplicatePlacementStrategy來完成)。cassandra中的自定義數據複製?

我希望只能複製一些精選的記錄,而不用單獨複製剩餘的記錄。 所以,基本上我想說:「通過所有節點複製此記錄」或「通過僅兩個節點複製該記錄」或「根本不復制記錄!」

如果這樣的事情是不可能的,那麼最簡單的事情就是在調用寫入代碼時簡單地使用ONE/ALL/QUORUM/etc一致性級別?

顯然,我是卡桑德拉的新人,並沒有完全包裹着我的頭。任何澄清將是偉大的!

+0

你爲什麼要這樣做?你有幾個特定的​​密鑰,你事先知道將是熱點閱讀,或者是否有其他原因? – yfeldblum 2010-12-22 15:29:21

+1

這就是我想要這樣做的確切原因。我打算跟蹤熱點並相應地進行復制。 – Dennis 2010-12-22 22:08:00

回答

3

NetworkTopologyStrategy允許您在每個按鍵空間的基礎上對其進行控制。如果您確實需要按鍵,則需要在自定義策略中重寫calculateNaturalEndpoints方法。