我有以下設置:
有CF項目和CF關鍵字。
每個項目都有零個,一個或多個關鍵字,存儲在列中。
每個關鍵字都有一個或多個項目,存儲在列中。
它看起來像這樣:Apache Cassandra綱要設計
items { dl { name => DELL6400, keyword:1 => computer, keyword:2 => DELL, keyword:3 => topseller } hp { name => HP12345, keyword:1 => computer, keyword:2 => HP } no { name => Nokia8210, keyword:1 => phone, keyword:2 => NOKIA } } // here I store keys of the items only, // in reality I have denormalized most of items columns keywords{ computer { webpage => www.domain.com/computer , item:dl => dl , item:hp => hp } DELL { webpage => www.domain.com/dell , item:dl => dl } topseller { webpage => www.domain.com/top , item:dl => dl } HP { webpage => www.domain.com/hp , item:hp => hp } NOKIA { webpage => www.domain.com/nokia , item:no => no } phone { webpage => www.domain.com/phone , item:no => no } }
,當我在關鍵字中添加新項目,我加入了「網頁」一欄,如果neccessary。
當我取出一個項目,我列刪除「項:XX」以及
的問題是如何避免「空」的關鍵字,如果我刪除諾基亞項「不」:
keywords{ ... NOKIA { webpage => www.domain.com/nokia } phone { webpage => www.domain.com/phone } }
我可以計算切片項目:*,但由於最終的一致性,這可能是錯誤的答案。
如果我對每個項目的「網頁」列進行非規範化,那麼xx列呢? – Nick