Cassandra / CQL3列系列是否可以具有复合分区键?

时间:2012-12-18 17:23:54

标签: cassandra

CQL 3允许使用如下定义的“复合”主键:

CREATE TABLE timeline (
    user_id varchar,
    tweet_id uuid,
    author varchar,
    body varchar,
    PRIMARY KEY (user_id, tweet_id)
);

使用这样的模式,分区键(存储引擎行键)将包含user_id值,而tweet_id将组合成列名。相反,我正在寻找的是分区键(存储引擎行键)具有类似user_id的复合值:tweet_id。显然我可以在我的应用程序中执行类似key = user_id + ':' + tweet_id的操作,但有没有办法让CQL 3为我做这个?

1 个答案:

答案 0 :(得分:2)

直到1.2出来,答案是否定的。分区键始终是第一个组件。正如您所说,这样做的方法是自己创建复合键。你不应该回避这一点,因为它实际上非常普遍。