nosql – Cassandra CQL3从具有复合主键的表中选择行键

前端之家收集整理的这篇文章主要介绍了nosql – Cassandra CQL3从具有复合主键的表中选择行键前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用Cassandra 1.2.7和使用CQL3的官方 Java驱动程序.

假设由一个表创建

CREATE TABLE foo ( 
    row int,column int,txt text,PRIMARY KEY (row,column)
);

然后我想预先形成SELECT DISTINCT行FROM foo的等价物

至于我的理解,应该可以在Cassandra的数据模型中有效地执行这个查询(给定复合主键的实现方式),因为它只是查询’raw’表.

搜索了CQL文档但我没有找到任何选项来做到这一点.

我的备份计划是创建一个单独的表 – 类似于

CREATE TABLE foo_rows (
    row int,PRIMARY KEY (row)
);

但这需要让两者保持同步的麻烦 – 写入foo_rows用于foo中的任何写入(也是性能损失).

那么有没有办法查询不同的行(分区)键?

解决方法

根据 documentation,从CQL 3.11版开始,cassandra理解DISTINCT修饰符.
所以你现在可以写了

SELECT DISTINCT row FROM foo

猜你在找的NoSQL相关文章