【问题标题】:cassandra supercolumn data from one partition or multiple?来自一个分区或多个分区的 cassandra 超列数据?
【发布时间】:2011-12-02 18:10:15
【问题描述】:

假设我有一个超列族。还假设我有多个分区在不同的机器实例上运行。我的超列族数据如下所示(一行)

RowKey: 4818d991-9df5-4899-aa07-461f4ed19996
=> (super_column=4dddb83e-4096-428d-8d1b-8b0235ae772f,
     (column=1322847333862, value=, timestamp=1322847333863001)
     (column=1322847637237, value=, timestamp=1322847637237000)
     (column=1322847837206, value=, timestamp=1322847837206001)
     (column=1322848197819, value=, timestamp=1322848197819000))

现在我想知道,如果我对超列族进行查询以返回 {row, super_column} 的数据/子列,这些子列的所有值是否会从一台机器或不同机器返回?基本上这是一个问题 - 分区是发生在行级别还是 super_column 级别还是子列级别?而且,即使只是从一台机器返回,每个子列的顺序是否会按原样返回,如上所示?

【问题讨论】:

    标签: cassandra database-partitioning super-columns


    【解决方案1】:

    分区是在行级别完成的,即整行存储在单台机器上(可能与其他机器上的副本一起存储,具体取决于您的复制因子)。

    子列根据列名按排序顺序存储 - 超级列可以在超级列名和子列名上指定一个比较器。见http://www.datastax.com/docs/0.8/ddl/column_family

    【讨论】:

      猜你喜欢
      • 2015-08-19
      • 1970-01-01
      • 1970-01-01
      • 2011-07-29
      • 2020-05-28
      • 2018-05-15
      • 2020-01-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多