我想在卡桑德拉以下數據模型進行建模:卡桑德拉數據模型 - 多重複合列
業務 - 主鍵:BusinessId
Has Many Reviews - primary key : ReviewId
- Review 1
- Body
- Rating
- Review 2
- Body
- Rating
and so on
Has an Address
- State
- City
- Zip
Has Business Hours
- Monday Hours
- Tuesday Hours
and so on
Has Offers
- Offer1
- Offer2
and so on
我希望能夠提取使用所有這些信息一個查詢,即我想將其存儲在一個業務行中。我怎樣才能做到這一點?基本上,我有許多子實體,我想與父業務實體一起存儲。根據我對組合鍵的理解,您只能有一個組合鍵(ex)businessId:ReviewId來建模評論),但是如何將所有這些實體存儲在一行中以有效檢索一個查詢中的所有業務詳細信息。
我的第二個問題是關於更新。假設這些實體中只有一個(評論)經常更新。其他實體大多保持靜態。將評論與這個巨大的商業行分開是明智的選擇,還是我可以更新評論而無需在內存中獲取整個商業行?
爲什麼你想要一個單一的查詢? – 2013-02-17 02:28:25
好,儘可能少的查詢。除非必須,否則我不想將數據分散到多個列系列中。我如何在單列系列中建立許多一對多關係? – user1710833 2013-02-18 04:03:46
另外,由於不同列系列中的數據存儲在不同的文件中,因此在任何可能的情況下嘗試從一個列族中檢索數據不是最佳實踐嗎?卡桑德拉如何支持一對多關係。在我的例子中,商業實體具有許多一對多的關係,並且如果將這種關係模型化的唯一方法是將它們放入單獨的列族中,這不符合建模數據的原則以有效回答您的查詢 – user1710833 2013-02-18 04:16:39