2

我正在阅读以下教程:

http://www.ebaytechblog.com/2012/07/16/cassandra-data-modeling-best-practices-part-1/#terms

其中一个解释是下图:

在此处输入图像描述

它说行按行键排序,列按列键排序。

这是否意味着列按列值排序而行键按行值排序?例如,如果我的第 1 行的值是 10、2、30、4(所有整数),它会将该键的列排序为 2、4、10、30?

同样对于行,如果我们有 11、22、3、44,它会将行排序为 3、11、22、44?

我只是对按列排序意味着什么感到困惑。

我有兴趣澄清这一点的原因是,如果我可以对我插入的值进行排序,那对我来说将非常方便,因为我不必在列中插入排序列表。

4

2 回答 2

1

我认为行是按行键的值排序的,而列是按键的值排序的,而不是存储的值。也就是说,例如在列的情况下,key1/value5、key2/value3、key3/value1 等等。

于 2014-03-29T00:01:41.647 回答
0

行(物理/内部)通常不按列族中的排序顺序存储。它可以通过使用 OrderedPartitioner 来实现,但不建议将其用于生产。所以,经验法则 - 不要依赖行的顺序

单元格(内部列)以物理行内的排序顺序物理存储。它们按名称排序,而不是值。

或者就 CQL 而言:您不能通过分区键对 CQL 行进行排序,但您可以使用集群列在单个分区中对 CQL 行进行排序

http://cassandra.apache.org/doc/cql3/CQL.html#createTablepartitionClustering

于 2014-03-29T00:02:48.047 回答