在Cassandra/CQL中有没有办法将这两个查询合并为一个查询?(按解决方案分组)
我有一张卡桑德拉的桌子,结构如下:在Cassandra/CQL中有没有办法将这两个查询合并为一个查询?(按解决方案分组),cassandra,cql,Cassandra,Cql,我有一张卡桑德拉的桌子,结构如下: CREATE TABLE test.top5( timestamp timestamp, category text, term text, volume int, PRIMARY KEY(category, volume, term, timestamp) WITH CLUSTERING ORDER BY (volume DESC); 我正试图获得前5名搜索每个类别。volume列最初不需要是composite键的一部分,但在阅读了Cassandra()中
CREATE TABLE test.top5(
timestamp timestamp,
category text,
term text,
volume int,
PRIMARY KEY(category, volume, term, timestamp)
WITH CLUSTERING ORDER BY (volume DESC);
我正试图获得前5名搜索每个类别。volume列最初不需要是composite键的一部分,但在阅读了Cassandra()中关于集群的内容后,我将其添加到composite键中,这样它就可以按卷自动排序
由于Cassandra不支持GROUP BY,因此我目前能够获得每个类别前5名搜索的唯一方法是使用以下内容:
查询1:从test.top5中选择不同类别代码>
然后,对于每个类别:
查询2:从test.top5中选择术语、卷,其中类别=此类别限制5代码>
有没有更好或更有效的方法来做到这一点?我觉得在处理大量数据时,在性能方面会有相当大的开销