2011-10-24 27 views
2

以twissandra爲例,當收到新推文時,不僅需要更新推文的列族,還需要其他一些(超)列族需要更新。當然,我們可以按順序執行此操作,接收新的推文,逐一更新每個家庭。但是如果有十幾個列族需要更新呢?這對我來說似乎不是一種有效的方法。還有其他方式,要麼依賴於編程框架(例如Java),要麼依賴於Message Queue等其他「實用工具」,或者更好的編程模型/設計模式來使其更具可擴展性和可維護性?cassandra在更新所有相關(超)列家族中的最佳實踐

回答

2

是的,您可以使用批次突變將一組更新組合在一起。例如,在赫克託,你可以這樣做:

mutator.addInsertion("jsmith", "Standard1", 
    HFactory.createStringColumn("first", "John")) 
    .addInsertion("jsmith", "Standard1", HFactory.createStringColumn("last", "Smith")) 
    .addInsertion("jsmith", "Standard1", HFactory.createStringColumn("middle", "Q")); 
mutator.execute(); 

https://github.com/rantav/hector/wiki/User-Guide「插入多列與賦值函數」下。

+0

多個其他列家族呢? – tom