我目前正在开发一款产品,我必须在Cassandra DB上存储
activities.由于我们的活动来自多租户应用程序环境,因此我们需要以租户意识的方式对数据进行建模.我们可以采取什么样的最佳方法来扩展?
>为每个租户创建密钥空间
>将活动存储在一个具有适当租户意识的二级索引的密钥空间中.
出于发布目的,我们将重新使用现有的WSO2-BAM数据发布者,并且为了检索目的,将使用CQL.
感谢您的想法和以前的经验.
解决方法
我倾向于使用一个键空间和多个列族,主要是因为您存储的活动看起来像一个逻辑数据集.
如果使用多个键空间,则应用程序必须包含一些逻辑以确定要查询的键空间.我认为这种类型的逻辑最好被推入Cassandra(通过租户意识索引).