【问题标题】:Cassandra super columns mixed?Cassandra 超级列混杂?
【发布时间】:2012-08-21 15:41:51
【问题描述】:

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

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

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

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

user: {
    name
    email
    address : {
        city
        state
    }

cassandra 也能做到这一点吗?

【问题讨论】:

  • 在我回答之前,我应该问一下您希望如何能够查询数据。以这种形式存储数据是没有问题的。

标签: nosql cassandra


【解决方案1】:

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

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

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

【讨论】:

    猜你喜欢
    • 2013-01-24
    • 2012-06-01
    • 2011-06-08
    • 2016-08-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多