0

我有一个看起来像这样的设置:

user: {
    data : {
        name
        email
    }
    address : {
        city
        state
    }
}

所以数据和地址是用户列族中的超级列......

我真正想要的是列和超级列的混合,例如:

user: {
    name
    email
    address : {
        city
        state
    }

cassandra甚至可以做到这一点吗?

4

1 回答 1

1

首先,您不能在一个 CF 中混合标准柱和超级柱。每个 CF 都必须指定为标准或超级。其次,您应该避免使用超级列,因为它们已被有效弃用。相反,您可以使用标准 CF 实现此特定数据模型,并使用复合列存储地址字段,如下所示:

user: {
    name : "John",
    email : "john@somedomain.com",
    address:city : "Some City",
    address:state : "Some State"
}

这将允许您存储不同的地址方案,但能够将它们作为一组列进行查询。我想这是你的目标。

于 2012-08-22T13:27:36.017 回答