在cassandra中排序交叉节点的行

时间:2018-04-04 15:15:49

标签: cassandra cql

我有一张桌子:

CREATE TABLE sessions (
    session_id timeuuid,
    app_id text,
    PRIMARY KEY (session_id, app_id)
) 

要在节点之间获得良好的数据分布,我需要将分区键设置为session_id(因为我预计会有数百万个此类会话)。

在尝试获取属于特定会话ID数组的会话时,如何才能获得DESC有序行?像这样:

this.cassandraClient
            .query()
            .select("*")
            .from("sessions")
            .where("session_id", "in", instancesIds)

1 个答案:

答案 0 :(得分:1)

你不能直接用Cassandra和这个表设计。 ASC / DESC仅在同一分区内工作,而不在多个分区之间工作。您需要在客户端内执行排序。