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

mit*_*ndi 11 cassandra

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

CREATE TABLE timeline (
    user_id varchar,
    tweet_id uuid,
    author varchar,
    body varchar,
    PRIMARY KEY (user_id, tweet_id)
);
Run Code Online (Sandbox Code Playgroud)

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

nic*_*ley 15

实际上,是的,你可以.该票证中添加了该功能:

https://issues.apache.org/jira/browse/CASSANDRA-4179

你的格式是:

CREATE TABLE timeline (
    user_id varchar,
    tweet_id uuid,
    author varchar,
    body varchar,
    PRIMARY KEY ((user_id, tweet_id))
);
Run Code Online (Sandbox Code Playgroud)