Cassandra 中的复合列值



我们可以在Cassandra列族的每一列中都有一个复合值吗?

user-id   column1-name
123      (Column1-Value  Column1-SchemaName  Column1-LastModifiedDate)

userId 是这里的行键。其他列也是如此。

每个列值将始终包含以下三件事-

ByteType for Column-Value
UTF8Type for Column-SchemaName
DateType for LastModifiedDate

如果是,谁能帮我设计色谱柱系列?我将使用 Astyanax 客户端插入到上面的列系列中。

有两种方法可以:

  1. 对列使用复合类型。在这种情况下,将有 4 个组件的复合列名称和空列值。
  2. 使用阿斯蒂亚纳克斯自定义序列化程序。在这种情况下,列名将保持不变。自定义序列化程序将从字节缓冲区转换为自定义对象,然后再转换回来。
我不

认为,这在卡桑德拉是可能的。要么你必须去规范化你的列系列,要么照顾卡桑德拉收藏支持。如果您可以将架构名称上次修改日期的数据模型数据类型限制为单一类型,那么 Map 可能对您的情况有所帮助。

您似乎正在尝试创建一个所谓的"超级列",最近在 Cassandra 中一直非常"不推荐"(为什么 Cassandra 中的超级列不再受到青睐?所以,我想说你应该尝试重新考虑你的设计,如果你真的需要在一列中拥有所有这些值,你可以从应用程序中进行封送/取消封送,或者你也可以考虑使用"组合键",如果这对你有帮助的话。

相关内容

  • 没有找到相关文章

最新更新