2

如果我希望在 Cassandra 中有一个可比较的 128 位整数等效作为行键,那么处理这个最有效的数据类型是什么?ASCII 使用完整的 8 位范围?

我需要能够选择行切片和范围。

4

3 回答 3

2

如果您使用 Random Partitioner(确定键如何在集群中分布的部分),则不会比较行键。如果您想比较行键,请使用 Order Preserving 分区器……但这肯定会导致集群不平衡和崩溃。

但是,列名会与同一行内的其他列名进行比较。

所以我的建议是将你的列存储到数字间隔中,并用 LongType 列名插入你的列。

于 2012-08-31T16:49:23.983 回答
1

可能只使用 int 的原始 byte[] 表示并避免任何转换;以上来自 le douard 的评论。

于 2012-09-04T06:22:47.010 回答
1

原始字节 [] 比较不会按数字顺序对列进行排序。如果这就是你想要的,你应该使用 varint (CQL) / IntegerType (Thrift)

于 2012-09-04T17:32:41.767 回答