我们可以在不使用分页状态的情况下在Cassandra中使用分页吗?我的意思是,如果我们想要在第一页之后随机访问(跳入)到第3页,我们该怎么办?
答案 0 :(得分:4)
有一招。
想象一下你有一张桌子
CREATE TABLE (
partition uuid,
clustering uuid,
column1 text,
...
columnN text,
PRIMARY KEY((partition), clustering)
)
对于包含10行的第一页:
SELECT * FROM table LIMIT 10;
在客户端,保存最后行的分区值,例如第10行行。对于第二页(第11至第20行):
SELECT * FROM table WHERE token(partition) > token('value_of_10th_partition') LIMIT 10;
第三页(第21至第30行):
SELECT * FROM table WHERE token(partition) > token('value_of_20th_partition') LIMIT 10;
这意味着