【发布时间】:2015-10-20 10:11:37
【问题描述】:
我正在尝试在 Cassandra 中建模多对多关系,例如项目-用户关系。用户可以喜欢许多物品,并且许多用户可以购买物品。让我们还假设“喜欢”事件发生的顺序不是问题,并且最常用的查询只是根据项目和用户返回“喜欢”。
有几篇讨论数据建模的帖子 http://www.ebaytechblog.com/2012/07/16/cassandra-data-modeling-best-practices-part-1/
另一种方法是将 ItemID 集合存储在 User 表中,以表示该用户喜欢的项目,并在 CQL3 中的 Items 表中执行类似的操作。
问题
使用该集合是否会影响性能?我认为它们会转化为复合列?那么读取模式、缓存等因素应该差不多吧?
对于编写繁重的应用程序,集合的性能是否会降低?频繁更新集合会降低性能吗?
【问题讨论】:
标签: cassandra data-modeling cql cql3 nosql